Paho MQTT Client example with W7500

Dependencies:   DHT MQTTforLecture WIZnetInterface mbed-src

Fork of w7500-paho-mqtt by Bohyun Bang

Code

WIZwiki W7500 with paho mqtt client.

Import programw7500-paho-mqtt

Paho MQTT Client example with W7500

You have to change

You have to use your ethernet(network) information.

MQTTEthernet.h

    uint8_t mac_addr[6] = {0x00, 0x08, 0xDC, 0x00, 0x00, 0x00}; // your mac address
    const char * ip_addr = "???.???.???.???"; // your ip
    const char * gw_addr = "???.???.???.???"; // your gateway
    const char * snmask = "???.???.???.???"; // your subnetmask

And you have to use your mqtt broker server information. Broker server ip address and port number listed bleow are available now. But I will close the mqtt broker server on July 15,2015.

main.cpp

    char* hostname = "104.199.146.45";
    int port = 1883;

Platform

WIZwiki W7500 [ https://developer.mbed.org/platforms/WIZwiki-W7500/ ] /media/uploads/bangbh/wizwiki-w7500.jpg

Component

YWRobot Easy module shield [ where to buy ] (This is not mbed component) /media/uploads/bangbh/ywrobot_esay-module-shield-v1.jpg

Test software

PC

MQTT-FX - A JavaFX based MQTT Client [ Home page ] /media/uploads/bangbh/mqtt-fx.png

Mobile(iPhone)

ZMQTT-UTILITY - MQTT Test utility|You can download from App store(iPhone). /media/uploads/bangbh/iphone-zmqtt-utility.png

Revision:
15:d4604c47da41
Parent:
14:2b30a541da82
--- a/main.cpp	Sun Sep 20 06:11:10 2015 +0000
+++ b/main.cpp	Mon Sep 21 23:39:16 2015 +0000
@@ -28,7 +28,6 @@
     AnalogIn ain(A1);
     baud(115200);
     printf("Wait a second...\r\n");
-    char* topic = "hello/wiznet";
     MQTTEthernet ipstack = MQTTEthernet();
     
     MQTT::Client<MQTTEthernet, Countdown> client = MQTT::Client<MQTTEthernet, Countdown>(ipstack);
@@ -40,11 +39,12 @@
     if (rc != 0)
         printf("rc from TCP connect is %d\n", rc);
         
-    printf("Topic: %s\r\n",topic);
+    char MQTTClientID[30];
     
     MQTTPacket_connectData data = MQTTPacket_connectData_initializer;       
     data.MQTTVersion = 3;
-    sprintf(data.clientID.cstring,"WIZwiki-W7500-client-%d",rand()%1000);
+    sprintf(MQTTClientID,"WIZwiki-W7500-client-%d",rand()%1000);
+    data.clientID.cstring = MQTTClientID;
     data.username.cstring = "testuser";
     data.password.cstring = "testpassword";