Open
Description
I'm using an Arduino nano with an ESP8266 for wifi which I have working for other WiFi projects and I'm trying to subscribe to my mqtt broker on Debian 12 and receive messages.
I never receive anything.
#include <SoftwareSerial.h>
#include <WiFiEsp.h>
#include <MQTT.h> // MQTT by Joel Gaehwiler
// ESP8266 wifi board things.
#define RX 6 // blue
#define TX 7 // black
SoftwareSerial Esp8266(RX, TX);
const char AP[] = "ap";
const char PASS[] = "secret";
WiFiEspClient wifi_client;
// mqtt things.
MQTTClient mqtt_client;
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
Serial.begin(9600);
Esp8266.begin(9600);
WiFi.init(&Esp8266);
// Check for the presence of the shield.
if (WiFi.status() == WL_NO_SHIELD) {
Serial.println("WiFi shield not present");
while (true);
}
mqtt_client.begin("192.168.0.113", wifi_client);
mqtt_client.onMessage(messageReceived);
reconnect();
}
void loop() {
if( !mqtt_client.connected()) { reconnect(); }
mqtt_client.loop();
}
void reconnect() {
while ( WiFi.status() != WL_CONNECTED) {
Serial.print("Attempting to connect to WPA SSID: ");
Serial.println(AP);
WiFi.begin(AP, PASS);
}
Serial.println("WIFI connected.");
while (!mqtt_client.connect("arduino")) {
Serial.print(".");
delay(1000);
}
Serial.println("MQTT connected.");
mqtt_client.subscribe("zigbee2mqtt/Home/BoilerFlow");
}
void messageReceived(String &topic, String &payload) {
Serial.println("mqtt_client.messageReceived: " + topic + " - " + payload);
}
Any ideas?
(PubSubClient
doesn't work either and is dead and ArduinoMqttClient
won't even connect to the broker; this is my third attempt.)
Metadata
Metadata
Assignees
Labels
No labels