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:
3:dc560d3e9070
Update libraries

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Helmut64 0:c43b6919ae15 1 /*
Helmut64 0:c43b6919ae15 2 / _____) _ | |
Helmut64 0:c43b6919ae15 3 ( (____ _____ ____ _| |_ _____ ____| |__
Helmut64 0:c43b6919ae15 4 \____ \| ___ | (_ _) ___ |/ ___) _ \
Helmut64 0:c43b6919ae15 5 _____) ) ____| | | || |_| ____( (___| | | |
Helmut64 0:c43b6919ae15 6 (______/|_____)_|_|_| \__)_____)\____)_| |_|
Helmut64 0:c43b6919ae15 7 ( C )2014 Semtech
Helmut64 0:c43b6919ae15 8
Helmut64 0:c43b6919ae15 9 Description: Contains the callbacks for the IRQs and any application related details
Helmut64 0:c43b6919ae15 10
Helmut64 0:c43b6919ae15 11 License: Revised BSD License, see LICENSE.TXT file include in the project
Helmut64 0:c43b6919ae15 12
Helmut64 0:c43b6919ae15 13 Maintainer: Miguel Luis and Gregory Cristian
Helmut64 0:c43b6919ae15 14 */
Helmut64 0:c43b6919ae15 15
Helmut64 0:c43b6919ae15 16 /*
Helmut64 0:c43b6919ae15 17 * This file contains a copy of the master content sx1276PingPong
Helmut64 0:c43b6919ae15 18 * with adaption for the SX1276Generic environment
Helmut64 0:c43b6919ae15 19 * (c) 2017 Helmut Tschemernjak
Helmut64 0:c43b6919ae15 20 * 30826 Garbsen (Hannover) Germany
Helmut64 0:c43b6919ae15 21 */
Helmut64 0:c43b6919ae15 22
Helmut64 0:c43b6919ae15 23 #ifndef __SX1276PINGPONG_H__
Helmut64 0:c43b6919ae15 24 #define __SX1276PINGPONG_H__
Helmut64 0:c43b6919ae15 25
Helmut64 0:c43b6919ae15 26 #ifdef FEATURE_LORA
Helmut64 0:c43b6919ae15 27 int SX1276PingPong(void);
Helmut64 0:c43b6919ae15 28 #else
Helmut64 0:c43b6919ae15 29 #define SX1276PingPong(x) void()
Helmut64 0:c43b6919ae15 30 #endif
Helmut64 0:c43b6919ae15 31 /*
Helmut64 0:c43b6919ae15 32 * Callback functions prototypes
Helmut64 0:c43b6919ae15 33 */
Helmut64 0:c43b6919ae15 34 /*!
Helmut64 0:c43b6919ae15 35 * @brief Function to be executed on Radio Tx Done event
Helmut64 0:c43b6919ae15 36 */
bcostm 11:9d7409ebfa57 37 void OnTxDone(void *radio, void *userThisPtr, void *userData);
Helmut64 0:c43b6919ae15 38
Helmut64 0:c43b6919ae15 39 /*!
Helmut64 0:c43b6919ae15 40 * @brief Function to be executed on Radio Rx Done event
Helmut64 0:c43b6919ae15 41 */
bcostm 11:9d7409ebfa57 42 void OnRxDone(void *radio, void *userThisPtr, void *userData, uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr );
Helmut64 0:c43b6919ae15 43
Helmut64 0:c43b6919ae15 44 /*!
Helmut64 0:c43b6919ae15 45 * @brief Function executed on Radio Tx Timeout event
Helmut64 0:c43b6919ae15 46 */
bcostm 11:9d7409ebfa57 47 void OnTxTimeout(void *radio, void *userThisPtr, void *userData);
Helmut64 0:c43b6919ae15 48
Helmut64 0:c43b6919ae15 49 /*!
Helmut64 0:c43b6919ae15 50 * @brief Function executed on Radio Rx Timeout event
Helmut64 0:c43b6919ae15 51 */
bcostm 11:9d7409ebfa57 52 void OnRxTimeout(void *radio, void *userThisPtr, void *userData);
Helmut64 0:c43b6919ae15 53
Helmut64 0:c43b6919ae15 54 /*!
Helmut64 0:c43b6919ae15 55 * @brief Function executed on Radio Rx Error event
Helmut64 0:c43b6919ae15 56 */
bcostm 11:9d7409ebfa57 57 void OnRxError(void *radio, void *userThisPtr, void *userData);
Helmut64 0:c43b6919ae15 58
Helmut64 0:c43b6919ae15 59 /*!
Helmut64 0:c43b6919ae15 60 * @brief Function executed on Radio Fhss Change Channel event
Helmut64 0:c43b6919ae15 61 */
bcostm 11:9d7409ebfa57 62 void OnFhssChangeChannel(void *radio, void *userThisPtr, void *userData, uint8_t channelIndex);
Helmut64 0:c43b6919ae15 63
Helmut64 0:c43b6919ae15 64 /*!
Helmut64 0:c43b6919ae15 65 * @brief Function executed on CAD Done event
Helmut64 0:c43b6919ae15 66 */
bcostm 11:9d7409ebfa57 67 void OnCadDone(void *radio, void *userThisPtr, void *userData);
Helmut64 0:c43b6919ae15 68
bcostm 11:9d7409ebfa57 69 #endif // __MAIN_H__