A demo application for HXC900 LoRaWAN module using Nucleo-L053R8.

Dependencies:   mbed

Revision:
3:11cdf29c8739
Parent:
2:1ef859bc5cd2
Child:
4:511677d804ac
--- a/main.cpp	Mon Jul 16 16:37:32 2018 +0000
+++ b/main.cpp	Mon Jul 16 19:07:18 2018 +0000
@@ -5,10 +5,6 @@
 /* Private Macros ------------------------------------------------------------*/
 #define SENSORS_MEASURE_CYCLE  (15000U)  // Send packet every 15s
 
-/* Private function declaration ----------------------------------------------*/
-static void SensorMeasureData(uint8_t *buffer, uint8_t *dataSize, uint8_t *ack, uint8_t *port);
-static void LedControl(uint8_t *buffer, uint8_t dataSize, uint8_t ack, uint8_t port);
-
 /* Private variables ---------------------------------------------------------*/
 static sLoraConfig_t LoraConfigParam =
 {
@@ -18,12 +14,12 @@
     .devEui    = "E000000000000003",
     .appEui    = "E000000000000002",
     .appKey    = "E0000000000000000000000000000004"
-//    .class_   = 'C',
-//    .devEui   = "C0A0D00000000000",
-//    .appEui   = "C0A0000000000000",
-//    .appKey   = "C0A0A000000000000000000000000000",
 };
 
+/* Private function declaration ----------------------------------------------*/
+static void SensorMeasureData(uint8_t *buffer, uint8_t *dataSize, uint8_t *ack, uint8_t *port);
+static void LedControl(uint8_t *buffer, uint8_t dataSize, uint8_t ack, uint8_t port);
+
 static sLoraDriverParam_t LoraDriverParam =
 {
     .SensorMeasureTime = SENSORS_MEASURE_CYCLE,
@@ -32,8 +28,8 @@
 };
 
 // Mbed specific declaration
-AnalogIn analog_value(A0);
-DigitalOut myled(LED1);
+AnalogIn temperatureSensor(A0);
+DigitalOut nucleoLED(LED1);
 
 int main()
 {
@@ -59,16 +55,14 @@
 static void SensorMeasureData(uint8_t *buffer, uint8_t *dataSize, uint8_t *ack, uint8_t *port)
 {
     uint8_t size = 0;
-    // Organizing an unconfirmed uplink packet for port 2
-    *ack = UNCONFIRMED;
+    uint16_t temperatureValue = temperatureSensor.read_u16();
 
-    buffer[size++] = 0xFA; // Random data
-    buffer[size++] = 0xCE;
-    buffer[size++] = 0x0F;
-    buffer[size++] = 0xF0;
-    buffer[size++] = 0x00;
+    // Organizing an unconfirmed uplink packet for port 2    
+    buffer[size++] = (temperatureValue >> 8) & 0xFF;
+    buffer[size++] = temperatureValue & 0xFF;
+    
     *dataSize = size;
-
+    *ack = UNCONFIRMED;
     *port = 2;
 }