This is code is part of a Technion course project in advanced IoT, implementing a device to receive and present sensors data from a Formula racing car built by students at Technion - Israel Institute of Technology.

Dependencies:   mbed Buffer

Fork of DISCO-L072CZ-LRWAN1_LoRa_PingPong by ST

This is code is part of a Technion course project in advanced IoT, implementing a device to receive sensors data from another L072CZ-LRWAN1 installed on a Formula racing car (built by students at Technion - Israel Institute of Technology), and sends it to a GUI presenting the data (GUI project: github.com/ward-mattar/TechnionFormulaGUI).

How to install

  • Create an account on Mbed: https://os.mbed.com/account/signup/
  • Import project into Compiler
  • In the Program Workspace select "Formula_Nucleo_Receiver"
  • Select a Platform like so:
  1. Click button at top-left
  2. Add Board
  3. Search "NUCLEO F103RB" and then "Add to your Mbed Compiler"
  • Finally click "Compile", if the build was successful, the binary would download automatically
  • To install it on device simply plug it in to a PC, open device drive and drag then drop binary file in it
Committer:
bcostm
Date:
Fri Aug 18 07:45:44 2017 +0000
Revision:
11:9d7409ebfa57
Parent:
9:2f9e4be4d046
Update libraries

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Helmut64 0:c43b6919ae15 1 /*
Helmut64 0:c43b6919ae15 2 * Copyright (c) 2017 Helmut Tschemernjak
Helmut64 0:c43b6919ae15 3 * 30826 Garbsen (Hannover) Germany
Helmut64 0:c43b6919ae15 4 * Licensed under the Apache License, Version 2.0);
Helmut64 0:c43b6919ae15 5 */
Helmut64 0:c43b6919ae15 6
Helmut64 0:c43b6919ae15 7
Helmut64 0:c43b6919ae15 8
Helmut64 0:c43b6919ae15 9 #ifdef TARGET_NUCLEO_L476RG
Helmut64 0:c43b6919ae15 10 #define FEATURE_LORA 1
Helmut64 9:2f9e4be4d046 11 #elif TARGET_DISCO_L072CZ_LRWAN1
bcostm 11:9d7409ebfa57 12 #define FEATURE_LORA 1
Helmut64 0:c43b6919ae15 13 #endif
Helmut64 0:c43b6919ae15 14
Helmut64 0:c43b6919ae15 15
Helmut64 0:c43b6919ae15 16
bcostm 11:9d7409ebfa57 17 #if defined(TARGET_DISCO_L072CZ_LRWAN1)
Helmut64 0:c43b6919ae15 18
Helmut64 0:c43b6919ae15 19 #define LORA_SPI_MOSI PA_7
Helmut64 0:c43b6919ae15 20 #define LORA_SPI_MISO PA_6
Helmut64 0:c43b6919ae15 21 #define LORA_SPI_SCLK PB_3
Helmut64 0:c43b6919ae15 22 #define LORA_CS PA_15
Helmut64 0:c43b6919ae15 23 #define LORA_RESET PC_0
Helmut64 0:c43b6919ae15 24 #define LORA_DIO0 PB_4
Helmut64 0:c43b6919ae15 25 #define LORA_DIO1 PB_1
Helmut64 0:c43b6919ae15 26 #define LORA_DIO2 PB_0
bcostm 11:9d7409ebfa57 27 #define LORA_DIO3 PC_13
Helmut64 0:c43b6919ae15 28 #define LORA_DIO4 PA_5
Helmut64 0:c43b6919ae15 29 #define LORA_DIO5 PA_4
Helmut64 0:c43b6919ae15 30 #define LORA_ANT_RX PA_1
Helmut64 0:c43b6919ae15 31 #define LORA_ANT_TX PC_2
Helmut64 0:c43b6919ae15 32 #define LORA_ANT_BOOST PC_1
Helmut64 0:c43b6919ae15 33 #define LORA_TCXO PA_12 // 32 MHz
Helmut64 0:c43b6919ae15 34
Helmut64 0:c43b6919ae15 35
Helmut64 0:c43b6919ae15 36
Helmut64 0:c43b6919ae15 37 #elif defined(TARGET_NUCLEO_L476RG) // using the RFM95 board
Helmut64 0:c43b6919ae15 38
Helmut64 0:c43b6919ae15 39 #define LORA_SPI_MOSI PC_12
Helmut64 0:c43b6919ae15 40 #define LORA_SPI_MISO PC_11
Helmut64 0:c43b6919ae15 41 #define LORA_SPI_SCLK PC_10
Helmut64 0:c43b6919ae15 42 #define LORA_CS PA_0
Helmut64 0:c43b6919ae15 43 #define LORA_RESET PA_1
Helmut64 0:c43b6919ae15 44 #define LORA_DIO0 PD_2 // DIO0=TxDone/RXDone
Helmut64 0:c43b6919ae15 45 #define LORA_DIO1 PB_7 //
Helmut64 0:c43b6919ae15 46 #define LORA_DIO2 PC_14 // DIO2=FhssChangeChannel
Helmut64 0:c43b6919ae15 47 #define LORA_DIO3 PC_15 // DIO3=CADDone
Helmut64 0:c43b6919ae15 48 #define LORA_DIO4 PH_0 // ????
Helmut64 0:c43b6919ae15 49 #define LORA_DIO5 NC // unused?
Helmut64 0:c43b6919ae15 50
bcostm 11:9d7409ebfa57 51 #endif