Files
sprocket-plugin-mqtt/src/examples/basic/main.cpp
2018-11-15 12:50:59 +01:00

43 lines
950 B
C++

#include "config.h"
#include "WiFiNet.h"
#include "Sprocket.h"
#include "MqttPlugin.h"
WiFiNet *network;
Sprocket *sprocket;
Task publishHeap;
void setup()
{
publishHeap.set(TASK_SECOND * 5, TASK_FOREVER, [](){
sprocket->publish("local/topic", "heap=" + String(ESP.getFreeHeap()));
});
sprocket = new Sprocket(
{STARTUP_DELAY, SERIAL_BAUD_RATE});
sprocket->subscribe("local/topic", [](String msg){
Serial.println("Local: " + msg);
});
sprocket->addTask(publishHeap);
sprocket->addPlugin(
new MqttPlugin({"sprocket", "192.168.1.2", 1883, "wirelos/mqttSprocket-in/", "wirelos/mqttSprocket-out/"}));
network = new WiFiNet(
SPROCKET_MODE,
STATION_SSID,
STATION_PASSWORD,
AP_SSID,
AP_PASSWORD,
HOSTNAME,
CONNECT_TIMEOUT);
network->connect();
sprocket->activate();
}
void loop()
{
sprocket->loop();
yield();
}