From 05bf2f944e77c58d8bd5229ac80f44218d243bb8 Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Thu, 30 Mar 2017 19:53:10 +0200 Subject: [PATCH] Fix JSON serialization of node-wifi-mqtt: Transmit sensor readings as float values. Thanks, Matthias! --- CHANGES.rst | 1 + node-wifi-mqtt/node-wifi-mqtt.ino | 21 +++++++++++---------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/CHANGES.rst b/CHANGES.rst index e4b94f6..5292396 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -15,6 +15,7 @@ in-progress - Update HX711 library incorporating our fix »Define “yield” as noop for older Arduino Core releases« - Update Arduino-Makefile and makeEspArduino tools - Improve firmwares :ref:`node-wifi-mqtt-homie` and :ref:`node-wifi-mqtt-homie-battery` +- Fix JSON serialization of :ref:`node-wifi-mqtt`: Transmit sensor readings as float values. Thanks, Matthias! 2017-03-17 0.13.0 diff --git a/node-wifi-mqtt/node-wifi-mqtt.ino b/node-wifi-mqtt/node-wifi-mqtt.ino index fefdc9c..440ecb1 100644 --- a/node-wifi-mqtt/node-wifi-mqtt.ino +++ b/node-wifi-mqtt/node-wifi-mqtt.ino @@ -4,9 +4,9 @@ Collect beehive sensor data and transmit via WiFi to a MQTT broker. - Copyright (C) 2014-2017 Clemens Gruber - Copyright (C) 2016-2017 Karsten Harazim - Copyright (C) 2016-2017 Andreas Motl + Copyright (C) 2014-2017 Clemens Gruber + Copyright (C) 2016-2017 Karsten Harazim + Copyright (C) 2016-2017 Andreas Motl Changes @@ -15,6 +15,7 @@ 2016-10-31 Beta release 2017-01-09 Add more sensors 2017-02-01 Serialize sensor readings en bloc using JSON + 2017-03-30 Fix JSON serialization: Transmit sensor readings as float values. Thanks, Matthias! GNU GPL v3 License @@ -351,13 +352,13 @@ void loop() { StaticJsonBuffer<256> jsonBuffer; JsonObject& root = jsonBuffer.createObject(); - root["weight"] = weightChar; - root["broodtemperature"] = temperatureArrayChar[0]; - root["entrytemperature"] = temperatureArrayChar[1]; - root["airtemperature"] = temperatureChar[0]; - root["airhumidity"] = humidityChar[0]; - root["airtemperature_outside"] = temperatureChar[1]; - root["airhumidity_outside"] = humidityChar[1]; + root["weight"] = String(weightChar).toFloat(); + root["broodtemperature"] = String(temperatureArrayChar[0]).toFloat(); + root["entrytemperature"] = String(temperatureArrayChar[1]).toFloat(); + root["airtemperature"] = String(temperatureChar[0]).toFloat(); + root["airhumidity"] = String(humidityChar[0]).toFloat(); + root["airtemperature_outside"] = String(temperatureChar[1]).toFloat(); + root["airhumidity_outside"] = String(humidityChar[1]).toFloat(); // Debugging