This is MQTT library for WIZwiki-W7500

Dependencies:   FP MQTTPacket

Dependents:   openHAB_mqtt_W7500 kakaoIoTchatbot

Fork of MQTTforLecture by Bohyun Bang

Committer:
kaizen
Date:
Tue Dec 29 07:34:10 2015 +0000
Revision:
49:28bae99b34f4
Parent:
48:4d790a810311
release mqtt example for openHAB

Who changed what in which revision?

UserRevisionLine numberNew contents of line
icraggs 29:833386b16f3e 1
icraggs 29:833386b16f3e 2 #if !defined(MQTTETHERNET_H)
icraggs 29:833386b16f3e 3 #define MQTTETHERNET_H
icraggs 29:833386b16f3e 4
icraggs 43:21da1f744243 5 #include "MQTTmbed.h"
icraggs 29:833386b16f3e 6 #include "EthernetInterface.h"
icraggs 31:a51dd239b78e 7 #include "MQTTSocket.h"
icraggs 29:833386b16f3e 8
bangbh 45:b7cebc104c6c 9
kaizen 49:28bae99b34f4 10 uint8_t mac_addr[6] = {0x00, 0x08, 0xDC, 0x1E, 0x72, 0x1F}; // your mac address
kaizen 49:28bae99b34f4 11 const char * ip_addr = "192.168.0.200"; // your ip
kaizen 49:28bae99b34f4 12 const char * gw_addr = "192.168.0.1"; // your gateway
kaizen 49:28bae99b34f4 13 const char * snmask = "255.255.255.0"; // your subnetmask
bangbh 45:b7cebc104c6c 14
icraggs 31:a51dd239b78e 15 class MQTTEthernet : public MQTTSocket
icraggs 29:833386b16f3e 16 {
icraggs 29:833386b16f3e 17 public:
icraggs 29:833386b16f3e 18 MQTTEthernet()
icraggs 29:833386b16f3e 19 {
bangbh 45:b7cebc104c6c 20 wait(1);
bangbh 45:b7cebc104c6c 21 this->createSocket();
bangbh 48:4d790a810311 22 //eth.init(mac_addr,ip_addr,snmask,gw_addr); // Do not use DHCP! If you use DHCP use "eth.init(mac_addr);".
bangbh 48:4d790a810311 23 eth.init(mac_addr);
icraggs 29:833386b16f3e 24 eth.connect();
icraggs 29:833386b16f3e 25 }
icraggs 29:833386b16f3e 26
icraggs 41:b7e86fa6dbb8 27 EthernetInterface& getEth()
icraggs 41:b7e86fa6dbb8 28 {
icraggs 41:b7e86fa6dbb8 29 return eth;
icraggs 41:b7e86fa6dbb8 30 }
icraggs 41:b7e86fa6dbb8 31
icraggs 41:b7e86fa6dbb8 32 void reconnect()
icraggs 41:b7e86fa6dbb8 33 {
icraggs 41:b7e86fa6dbb8 34 eth.connect(); // nothing I've tried actually works to reconnect
icraggs 41:b7e86fa6dbb8 35 }
icraggs 41:b7e86fa6dbb8 36
icraggs 29:833386b16f3e 37 private:
icraggs 29:833386b16f3e 38
icraggs 29:833386b16f3e 39 EthernetInterface eth;
icraggs 29:833386b16f3e 40
icraggs 29:833386b16f3e 41 };
icraggs 29:833386b16f3e 42
icraggs 29:833386b16f3e 43
icraggs 29:833386b16f3e 44 #endif