add senet packet format
Dependencies: Senet_Packet mDot_X_NUCLEO_IKS01A1 libmDot-dev-mbed5-deprecated
Fork of mDot-IKS01A1 by
Diff: main.cpp
- Revision:
- 12:922bb95e4c2e
- Parent:
- 10:1e3e3ab9c29c
- Child:
- 13:3a0a00664054
--- a/main.cpp Tue Feb 14 20:36:21 2017 +0000 +++ b/main.cpp Fri Apr 07 22:18:38 2017 +0000 @@ -3,6 +3,7 @@ #include "x_nucleo_iks01a1.h" #include "dot_util.h" #include "RadioEvent.h" +#include "senet_packet.h" #include <cmath> // mDot UDK board demo with X-NUCLEO-IKS01A1 sensor card @@ -22,12 +23,12 @@ static bool public_network = true; #elif defined(SENET) // Network Id for Senet public network -static uint8_t network_id[] = {0x00,0x25,0x0C,0x00,0x00,0x01,0x00,0x01}; +static uint8_t network_id[] = { 0x00, 0x25, 0x0C, 0x00, 0x00, 0x01, 0x00, 0x01 }; // Register at or Sign in to http://portal.senetco.com/ and register your NodeId to receive your AppId // {0xD3,0x5A,0x30,0x60,0xA6,0x0D,0x9E,0xEA,0xD9,0xA1,0x19,0x61,0x4F,0x29,0x9E,0x5B} -static uint8_t network_key[] = {0x5F,0x7B,0x08,0x15,0x55,0x69,0x9A,0x2E,0x3C,0x91,0xE3,0xFE,0xF0,0x2A,0x77,0x79}; +static uint8_t network_key[] = { 0xFD, 0x68, 0xE9, 0xB5, 0x7C, 0xCA, 0x5E, 0xD6, 0xAD, 0xF6, 0x23, 0xCB, 0x03, 0x26, 0x68, 0xF4 }; // 1 For Senet, configurable on your Conduit -static uint8_t frequency_sub_band = 1; +static uint8_t frequency_sub_band = 0; // True for Senet, false for your Conduit. static bool public_network = true; #else @@ -135,8 +136,6 @@ while (true) { - std::vector<uint8_t> tx_data; - // join network if not joined if (!dot->getNetworkJoinStatus()) { join_network(); @@ -189,6 +188,7 @@ * Resolution: 0.01 degrees/s signed msb per axis */ + /* //temp floats float value1, value2; @@ -249,8 +249,21 @@ tx_data.push_back(uint8_t(0xFF & (accel_vector[i] >> 8))); tx_data.push_back(uint8_t(0xFF & accel_vector[i])); } + */ + std::vector<uint8_t> tx_data; + uint8_t buffer[64]; + float value; + SensorPacket packet(buffer, sizeof(buffer)); + + // get temperature + temp_sensor1->GetTemperature(&value); + logInfo("temperature: %2.1f C", value); + packet.addSensorValue(0, 2, (int16_t)value); + packet.serialize(); + + tx_data.assign(packet.payload(), packet.payload() + packet.length()); send_data(tx_data); if(deep_sleep){ @@ -262,10 +275,12 @@ // ONLY ONE of the three functions below should be uncommented depending on the desired wakeup method - sleep_wake_rtc_only(deep_sleep); + //sleep_wake_rtc_only(deep_sleep); //sleep_wake_interrupt_only(deep_sleep); //sleep_wake_rtc_or_interrupt(deep_sleep); + wait(5); + } return 0;