I added functionality to get the RSSI, BER, and Cell Neighbor for reporting connection issues to M2X
Dependencies: mbed FXOS8700CQ mbed-rtos WNCInterface M2XStreamClient-JMF jsonlite
Diff: main.cpp
- Revision:
- 5:8099493f2c35
- Parent:
- 4:08979e323c6e
- Child:
- 6:731f412e6571
diff -r 08979e323c6e -r 8099493f2c35 main.cpp --- a/main.cpp Wed Apr 05 04:53:25 2017 +0000 +++ b/main.cpp Wed Apr 05 16:37:18 2017 +0000 @@ -21,6 +21,8 @@ const char *hstreamName = "humidity"; const char *tstreamName = "temp"; +const char *accelstreamNames[] = { "accelX", "accelY", "accelZ" }; + WNCInterface eth; Client client; @@ -35,34 +37,20 @@ K64F_Sensors_t SENSOR_DATA = { - .Temperature = "0", - .Humidity = "0", - .AccelX = "0", - .AccelY = "0", - .AccelZ = "0", - .MagnetometerX = "0", - .MagnetometerY = "0", - .MagnetometerZ = "0", - .AmbientLightVis = "0", - .AmbientLightIr = "0", - .UVindex = "0", - .Proximity = "0", - .Temperature_Si7020 = "0", - .Humidity_Si7020 = "0", - .Virtual_Sensor1 = "0", - .Virtual_Sensor2 = "0", - .Virtual_Sensor3 = "0", - .Virtual_Sensor4 = "0", - .Virtual_Sensor5 = "0", - .Virtual_Sensor6 = "0", - .Virtual_Sensor7 = "0", - .Virtual_Sensor8 = "0", - .GPS_Satellites = "0", - .GPS_Latitude = "0", - .GPS_Longitude = "0", - .GPS_Altitude = "0", - .GPS_Speed = "0", - .GPS_Course = "0" + .Temperature = 0, + .Humidity = 0, + .AccelX = 0, + .AccelY = 0, + .AccelZ = 0, + .MagnetometerX = 0, + .MagnetometerY = 0, + .MagnetometerZ = 0, + .AmbientLightVis = 0, + .AmbientLightIr = 0, + .UVindex = 0, + .Proximity = 0, + .Temperature_Si7020 = 0, + .Humidity_Si7020 = 0, }; //******************************************************************************************************************************************** @@ -189,13 +177,17 @@ read_sensors(); // post the humidity value - pc.printf("Post updateStreamValue (humidity = %f)..." CRLF, SENSOR_DATA.fHumidity); - response = m2xClient.updateStreamValue(deviceId, hstreamName, SENSOR_DATA.fHumidity); + pc.printf("Post updateStreamValue (humidity = %f)..." CRLF, SENSOR_DATA.Humidity); + response = m2xClient.updateStreamValue(deviceId, hstreamName, SENSOR_DATA.Humidity); pc.printf("Post response code: %d" CRLF, response); // post the temp value - pc.printf("Post updateStreamValue (temp = %f)..." CRLF, SENSOR_DATA.fTemperature); - response = m2xClient.updateStreamValue(deviceId, tstreamName, SENSOR_DATA.fTemperature); + pc.printf("Post updateStreamValue (temp = %f)..." CRLF, SENSOR_DATA.Temperature); + response = m2xClient.updateStreamValue(deviceId, tstreamName, SENSOR_DATA.Temperature); + pc.printf("Post response code: %d" CRLF, response); + + pc.printf("Post postDeviceUpdate (accelerometer)..." CRLF, SENSOR_DATA.Temperature); + response = m2xClient.postDeviceUpdate(deviceId, 3, accelstreamNames, (float []){SENSOR_DATA.AccelX, SENSOR_DATA.AccelY, SENSOR_DATA.AccelZ}); pc.printf("Post response code: %d" CRLF, response); timeService.getTimestamp(timestamp, &length);