Как предсказывать поведения wemos d1 mini?
Есть код:
#include <Arduino.h>
#include <mqtt/MQTTService.h>
#include <device/relay/Relay.h>
#define SSID "my ssid"
#define PASSWORD "password"
#define PORT 1883
#define HELLO_TOPIC "/device/new"
#define GOODBYE_TOPIC "/device/died"
const IPAddress brokerIp(192, 168, 68, 156);
MQTTService mqttService(SSID, PASSWORD, brokerIp, PORT);
Relay relay(D1);
void setup() {
Serial.begin(9600);
delay(1000);
relay.setSerialNumber("relay-asf48ds6g5ad");
mqttService.addCallback(strcat("/set/", relay.getSerialNumber()), [](char* payload, unsigned int length){
Serial.println(length);
Serial.println(payload);
});
mqttService.setup(relay.getSerialNumber(),
HELLO_TOPIC, relay.getHelloMessage(),
GOODBYE_TOPIC, relay.getGoodByeMessage());
}
void loop() {
delay(1000);
mqttService.loop();
}
В таком случае подключение работает нормально. Wemos пытается подключится к сети с SSID "my ssid". Но когда я меняю местами строки с определением Relay и MQTTService с такого порядка:
MQTTService mqttService(SSID, PASSWORD, brokerIp, PORT);
Relay relay(D1);
На такой:
Relay relay(D1);
MQTTService mqttService(SSID, PASSWORD, brokerIp, PORT);
То wemos пытается подключится уже к сети с SSID "d".
С чем может быть связана подобная проблема?