Test MQTT Protocol with a Temperature Sensore
Dependencies: EthernetInterface LM75A MQTT mbed-rtos mbed
Fork of HelloMQTT by
Notebook info: HERE
main.h@20:bec5faa6a303, 2017-01-14 (annotated)
- Committer:
- edodm85
- Date:
- Sat Jan 14 14:12:53 2017 +0000
- Revision:
- 20:bec5faa6a303
Test MQTT protocol with a Temperature Sensore
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
edodm85 | 20:bec5faa6a303 | 1 | #pragma once |
edodm85 | 20:bec5faa6a303 | 2 | #include "mbed.h" |
edodm85 | 20:bec5faa6a303 | 3 | |
edodm85 | 20:bec5faa6a303 | 4 | #define MQTTCLIENT_QOS2 1 |
edodm85 | 20:bec5faa6a303 | 5 | |
edodm85 | 20:bec5faa6a303 | 6 | #include "MQTTEthernet.h" |
edodm85 | 20:bec5faa6a303 | 7 | #include "MQTTClient.h" |
edodm85 | 20:bec5faa6a303 | 8 | #include "LM75A.h" |
edodm85 | 20:bec5faa6a303 | 9 | |
edodm85 | 20:bec5faa6a303 | 10 | |
edodm85 | 20:bec5faa6a303 | 11 | RawSerial pc(USBTX,USBRX); |
edodm85 | 20:bec5faa6a303 | 12 | |
edodm85 | 20:bec5faa6a303 | 13 | DigitalOut led1(LED1); |
edodm85 | 20:bec5faa6a303 | 14 | DigitalOut led2(LED2); |
edodm85 | 20:bec5faa6a303 | 15 | DigitalOut led3(LED3); |
edodm85 | 20:bec5faa6a303 | 16 | DigitalOut led4(LED4); |
edodm85 | 20:bec5faa6a303 | 17 | |
edodm85 | 20:bec5faa6a303 | 18 | // I2C |
edodm85 | 20:bec5faa6a303 | 19 | LM75A TempSensor(p28, p27, 0x90); //SDA, SCL, ADDRESS |
edodm85 | 20:bec5faa6a303 | 20 | |
edodm85 | 20:bec5faa6a303 | 21 | |
edodm85 | 20:bec5faa6a303 | 22 | |
edodm85 | 20:bec5faa6a303 | 23 | MQTT::Message message; |
edodm85 | 20:bec5faa6a303 | 24 | |
edodm85 | 20:bec5faa6a303 | 25 | |
edodm85 | 20:bec5faa6a303 | 26 | bool bNewValue = false; |
edodm85 | 20:bec5faa6a303 | 27 | bool bStart = false; |
edodm85 | 20:bec5faa6a303 | 28 | volatile int i = 0; |
edodm85 | 20:bec5faa6a303 | 29 | int rc; |
edodm85 | 20:bec5faa6a303 | 30 | char bufMQTT[100]; |
edodm85 | 20:bec5faa6a303 | 31 | float fTemperature = 0; |
edodm85 | 20:bec5faa6a303 | 32 | float fTemperatureTemp = 0; |
edodm85 | 20:bec5faa6a303 | 33 | |
edodm85 | 20:bec5faa6a303 | 34 | |
edodm85 | 20:bec5faa6a303 | 35 | // MQTT Data |
edodm85 | 20:bec5faa6a303 | 36 | char* clientID = "mqtt-mbed-test"; |
edodm85 | 20:bec5faa6a303 | 37 | char* hostbroker = "m10.cloudmqtt.com"; |
edodm85 | 20:bec5faa6a303 | 38 | int port = 18305; |
edodm85 | 20:bec5faa6a303 | 39 | char* username = "mbedUser"; |
edodm85 | 20:bec5faa6a303 | 40 | char* password = "test"; |
edodm85 | 20:bec5faa6a303 | 41 | char* topic = "temperature"; |
edodm85 | 20:bec5faa6a303 | 42 | |
edodm85 | 20:bec5faa6a303 | 43 | |
edodm85 | 20:bec5faa6a303 | 44 | //THREAD |
edodm85 | 20:bec5faa6a303 | 45 | void temp_sensor_thread(void const *argument); |
edodm85 | 20:bec5faa6a303 | 46 | osThreadDef(temp_sensor_thread, osPriorityNormal, DEFAULT_STACK_SIZE); |
edodm85 | 20:bec5faa6a303 | 47 | |
edodm85 | 20:bec5faa6a303 | 48 |