starshoy81 писал(а): ↑18.03.2018{, 23:20}
CraCk, а вы переносили подписку на топик в функцию "void mqttConnected" в самом скетче? Что именно вы отправляете в топик, на который подписана ардуина?
starshoy81 писал(а): ↑18.03.2018{, 23:20}
Кстати, посмотрел скетч из вашего проекта - по умолчанию подписка располагается в setup, поэтому у вас и не подписывается на тему без пересброса питания.
Условие выполнял обязательно. Просто посчитал что нет смысла выкладывать редактированный .ino фаил.
starshoy81 писал(а): ↑18.03.2018{, 23:20}
Чтобы посмотреть данные которые гоняются через уарт, надо включить на странице отладки есп вывод в уарт 1, в нём будет видно подписка и публикация.
При рестарте выдает такое ESP. Ардуино не трогал.
1.10:1885 0x3fff5e30 (client=0x3fff5574)
512> MQTT ERROR: Failed to connect
515> initializing user application
519> Waiting for work to do...
522> mode : sta(5c:cf:7f:8e:eb:05) + softAP(5e:cf:7f:8e:eb:05)
528> add if0
529> add if1
531> dhcp server start:(ip:192.168.4.1,mask:255.255.255.0,gw:192.168.4.1)
539> bcn 100
540> f r0, SLIP: start or end len=0 inpkt=0
1844> SLIP: start or end len=48 inpkt=1
1844> cmdParsePacket: cmd=11 argc=5 value=0
1846> cmdExec: Dispatching cmd=MQTT_PUB
1849> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=3, qos=0, retain=0
1856> MQTT: Publish, topic: "rele4_state", length: 18
1861> MQTT: Send type=PUBLISH id=0000 len=18
2661> scandone
2663> state: 0 -> 2 (b0)
2667> state: 2 -> 3 (0)
2671> state: 3 -> 5 (10)
2671> add 0
2671> aid 1
2671> cnt
2682>
2682> connected with Dlink, channel 4
2683> ip:192.168.1.80,mask:255.255.255.0,gw:192.168.1.1
2683> Wifi connected to ssid Dlink, ch 4
2687> Wifi got ip:192.168.1.80,mask:255.255.255.0,gw:192.168.1.1
2693> host_name = esp-link
2695> server_name = _http._tcp.local
2699> MQTT: Connect to 192.168.1.10:1885 0x3fff7440 (client=0x3fff5574)
2717> MQTT: TCP connected to 192.168.1.10:1885
2718> MQTT: Send type=TYPE_CONNECT id=0000 len=22
2726> MQTT: Recv type=CONNACK id=0000 len=4; Pend type=NULL id=00
7960> MQTT: Recv PUBLISH qos=0 system/adapter/javascript/0/memRss13.020/
7967> MQTT: Recv type=PUBLISH id=0000 len=49; Pend type=NULL id=00
7973> MQTT: Recv PUBLISH qos=0 system/adapter/javascript/0/memHeapTotal34.010.
7980> MQTT: Recv type=PUBLISH id=0000 len=48; Pend type=NULL id=00
7986> MQTT: Recv PUBLISH qos=0 system/adapter/javascript/0/memHeapUsed30.530,
7993> MQTT: Recv type=PUBLISH id=0000 len=46; Pend type=NULL id=00
7999> MQTT: Recv PUBLISH qos=0 system/adapter/javascript/0/connectedfalse0(
8006> MQTT: Recv type=PUBLISH id=0000 len=42; Pend type=NULL id=00
8012> MQTT: Recv PUBLISH qos=0 system/adapter/javascript/0/alivefalsealse0(
8074> MQTT: Recv type=PUBLISH id=0000 len=16; Pend type=NULL id=00
8074> MQTT: Recv PUBLISH qos=0 reley4_state0!
8076> MQTT: Recv type=PUBLISH id=0000 len=35; Pend type=NULL id=00
8082> MQTT: Recv PUBLISH qos=0 scene/Рух_кімнатаtrueімнатаtrueystem/adapter/javascript/0/alivefalsedfalse0(
8215> HTTP GET /log/text: 200, 5016ms, h=18136
9842> SLIP: start or end len=0 inpkt=1
9842> SLIP: start or end len=48 inpkt=1
9842> cmdParsePacket: cmd=11 argc=5 value=0
9845> cmdExec: Dispatching cmd=MQTT_PUB
9848> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=3, qos=0, retain=0
9855> MQTT: Publish, topic: "rele4_state", length: 18
9860> MQTT: Send type=PUBLISH id=0000 len=18
12959> HTTP GET /log/text: 200, 18ms, h=18472
13841> SLIP: start or end len=0 inpkt=1
13841> SLIP: start or end len=48 inpkt=1
13841> cmdParsePacket: cmd=11 argc=5 value=0
13843> cmdExec: Dispatching cmd=MQTT_PUB
13847> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=3, qos=0, retain=0
13854> MQTT: Publish, topic: "rele4_state", length: 18
13859> MQTT: Send type=PUBLISH id=0000 len=18
14882> MQTT: Connect to 192.168.1.10:1885 0x3fff73b0 (client=0x3fff5574)
14894> MQTT: TCP connected to 192.168.1.10:1885
14895> MQTT: Send type=TYPE_CONNECT id=0000 len=22
14900> MQTT: Recv type=CONNACK id=0000 len=4; Pend type=NULL id=00
=48 inpkt=1
21838> cmdParsePacket: cmd=11 argc=5 value=0
21841> cmdExec: Dispatching cmd=MQTT_PUB
21844> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=3, qos=0, retain=0
21851> MQTT: Publish, topic: "rele4_state", length: 18
21856> MQTT: Send type=PUBLISH id=0000 len=18
25837> SLIP: start or end len=0 inpkt=1
25838> SLIP: start or end len=48 inpkt=1
25838> cmdParsePacket: cmd=11 argc=5 value=0
25840> cmdExec: Dispatching cmd=MQTT_PUB
25844> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=2, qos=0, retain=0
25851> MQTT: Publish, topic: "rele4_state", length: 17
25856> MQTT: Send type=PUBLISH id=0000 len=17
29836> SLIP: start or end len=0 inpkt=1
29836> SLIP: start or end len=48 inpkt=1
29836> cmdParsePacket: cmd=11 argc=5 value=0
29839> cmdExec: Dispatching cmd=MQTT_PUB
29842> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=3, qos=0, retain=0
29849> MQTT: Publish, topic: "rele4_state", length: 18
29854> MQTT: Send type=PUBLISH id=0000 len=18
30607> Wifi check: mode=STA status=5
33835> SLIP: start or end len=0 inpkt=1
33835> SLIP: start or end len=48 inpkt=1
33835> cmdParsePacket: cmd=11 argc=5 value=0
33837> cmdExec: Dispatching cmd=MQTT_PUB
33841> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=3, qos=0, retain=0
33848> MQTT: Publish, topic: "rele4_state", length: 18
33853> MQTT: Send type=PUBLISH id=0000 len=18
34861> HTTP GET /log/text: 200, 39ms, h=19680
37833> SLIP: start or end len=0 inpkt=1
37833> SLIP: start or end len=48 inpkt=1
37834> cmdParsePacket: cmd=11 argc=5 value=0
37836> cmdExec: Dispatching cmd=MQTT_PUB
37840> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=2, qos=0, retain=0
37846> MQTT: Publish, topic: "rele4_state", length: 17
37851> MQTT: Send type=PUBLISH id=0000 len=17
41501> HTTP GET /log/text: 200, 33ms, h=19680
41833> SLIP: start or end len=0 inpkt=1
41833> SLIP: start or end len=48 inpkt=1
41833> cmdParsePacket: cmd=11 argc=5 value=0
41836> cmdExec: Dispatching cmd=MQTT_PUB
41839> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=1, qos=0, retain=0
41846> MQTT: Publish, topic: "rele4_state", length: 16
41851> MQTT: Send type=PUBLISH id=0000 len=16
45831> SLIP: start or end len=0 inpkt=1
45832> SLIP: start or end len=48 inpkt=1
45832> cmdParsePacket: cmd=11 argc=5 value=0
45834> cmdExec: Dispatching cmd=MQTT_PUB
45838> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=3, qos=0, retain=0
45845> MQTT: Publish, topic: "rele4_state", length: 18
45850> MQTT: Send type=PUBLISH id=0000 len=18
Потрогал ардуино. Сделал ресет кнопкой.
172104> MQTT: MQTTCMD_Publish topic=rele4_state, data_len=3, qos=0, retain=0
172111> MQTT: Publish, topic: "rele4_state", length: 18
172116> MQTT: Send type=PUBLISH id=0000 len=18
172121> SLIP: start or end len=19 inpkt=0
172124> SLIP: start or end len=22 inpkt=1
172127> cmdParsePacket: cmd=12 argc=2 value=0
172131> cmdExec: Dispatching cmd=MQTT_SUB
172135> MQTT: MQTTCMD_Subscribe topic=pin, qos=0
172139> MQTT: Subscribe, topic: "pin"
172148> MQTT: Send type=SUBSCRIBE id=0001 len=10
172154> MQTT: Recv type=PUBLISH id=0000 len=11; Pend type=SUBSCRIBE id=01
172154> MQTT: Recv PUBLISH qos=0 pinnull�
172157> MQTT: Data cb=0x000001ca topic=pinnull� len=4
172162> cmdResponse: cmd=3 val=458 argc=2
172166> MQTT: Recv type=SUBACK id=0001 len=5; Pend type=SUBSCRIBE id=01
starshoy81 писал(а): ↑18.03.2018{, 23:20}
Ардуине после включения питания нужна синхронизация с есп, для этого ардуину надо сбрасывать. Таковы условия работы библиотеки el-client.
Получается если в доме моргнул свет. То я тогда остаюсь без управления. А чтоб восстановить управление еду домой, захожу на 10 датчиков по десяти вебмордам и через них ресетаю десять ардуин? Какой то ужас. Очень странно такие умные люди сделали столько полезных вещей а тут такой просчет с ручным рессетом МК.