send temp data to thingsboard through mqtt using lpc1768

Dependencies:   C12832 LM75B MQTT

Revision:
0:df50ec82d746
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Wed Jul 04 07:27:48 2018 +0000
@@ -0,0 +1,85 @@
+#define USE_LCD 0
+
+#if USE_LCD
+#include "C12832.h"
+
+// the actual pins are defined in mbed_app.json and can be overridden per target
+C12832 lcd(LCD_MOSI, LCD_SCK, LCD_MISO, LCD_A0, LCD_NCS);
+
+#define logMessage lcd.cls();lcd.printf
+
+#else
+
+#define logMessage printf
+
+#endif
+
+#define MQTTCLIENT_QOS2 1
+
+#include "easy-connect.h"
+#include "MQTTNetwork.h"
+#include "MQTTmbed.h"
+#include "MQTTClient.h"
+#include "LM75B.h"
+
+LM75B tmp(p28,p27);
+
+
+int arrivedcount = 0;
+
+
+void messageArrived(MQTT::MessageData& md)
+{
+    MQTT::Message &message = md.message;
+    logMessage("Message arrived: qos %d, retained %d, dup %d, packetid %d\r\n", message.qos, message.retained, message.dup, message.id);
+    logMessage("Payload %.*s\r\n", message.payloadlen, (char*)message.payload);
+    ++arrivedcount;
+}
+
+
+int main(int argc, char* argv[])
+{
+    float version = 0.6;
+    char* topic = "v1/devices/me/telemetry";
+
+    logMessage("HelloMQTT: version is %.2f\r\n", version);
+
+    NetworkInterface* network = easy_connect(true);
+    if (!network) {
+        return -1;
+    }
+
+    MQTTNetwork mqttNetwork(network);
+
+    MQTT::Client<MQTTNetwork, Countdown> client(mqttNetwork);
+
+    const char* hostname = "demo.thingsboard.io";
+    int port = 1883;
+    logMessage("Connecting to %s:%d\r\n", hostname, port);
+    int rc = mqttNetwork.connect(hostname, port);
+    if (rc != 0)
+        logMessage("rc from TCP connect is %d\r\n", rc);
+    char assess_token[] = "aq8Xr1qkEzo1ANb4VQHa";
+    MQTTPacket_connectData data = MQTTPacket_connectData_initializer;
+
+    data.username.cstring = assess_token;
+ 
+    if ((rc = client.connect(data)) != 0)
+        logMessage("rc from MQTT connect is %d\r\n", rc);
+
+    if ((rc = client.subscribe(topic, MQTT::QOS0, messageArrived)) != 0)
+        logMessage("rc from MQTT subscribe is %d\r\n", rc);
+
+    MQTT::Message message;
+
+  
+    while(1){
+    char buf[256];    
+    int n = snprintf(buf, sizeof(buf), "{\"temperature\":%f, \"active\": false}", tmp.read());
+    message.payload = reinterpret_cast<void*>(buf);
+    message.payloadlen = n;
+    rc = client.publish(topic, message);
+    wait(5);
+    }
+    
+}