2016-03-01 4 views
0

Я построил этот проект: http://www.instructables.com/id/Low-cost-WIFI-temperature-data-logger-based-on-ESP/?ALLSTEPS ESP8266 выводит что-то, и я думаю, что все должно быть в порядке. Но на канале Thingspeak нет записей. Я уже дважды проверил ключ API-записи. Вот последовательный вывод:ESP8266 Данные Thingspeak не отображаются

Setting up WIFI... 
> IP unavaiable, Waiting... 
IP unavaiable, Waiting... 
IP unavaiable, Waiting... 
IP unavaiable, Waiting... 
IP unavaiable, Waiting... 
IP unavaiable, Waiting... 
Config done, IP is 192.168.1.9 
Last temp: 216875 
Temp:21.6875.6875 C 

Sending data to thingspeak.com 
Last temp: 216875 
Temp:21.6875.6875 C 

Sending data to thingspeak.com 
Got disconnection... 
Last temp: 216875 
Temp:21.6875.6875 C 

Sending data to thingspeak.com 
Got disconnection... 
Last temp: 216875 
Temp:21.6875.6875 C 

Sending data to thingspeak.com 
Got disconnection... 
Last temp: 216875 
Temp:21.6875.6875 C 

Как я могу решить эту проблему?

+0

Вам нужна дополнительная информация? Если нет, то, пожалуйста, подумайте о принятии ответа, поэтому SO может отметить этот случай как закрытый. –

ответ

1

Это была ошибка в SDK, что код в проекте, на который вы ссылались, когда-либо работал. В pre-1.0 SDK conn:send был синхронным, то есть вы могли называть его последовательно, и он блокируется до тех пор, пока не будет отправлена ​​каждая строка. Espressif позже изменил базовую функцию как асинхронный. Следовательно, код в https://github.com/ok1cdj/ESP8266-LUA/blob/master/Thermometer-DS18B20-Thingspeak/ds1820.lua#L77 терпит неудачу. Дополнительную информацию см. В документации по API net.socket:send().

Однако, поскольку вы уже находитесь в последней версии прошивки (из ветки dev, я полагаю), вы должны в полной мере использовать новый модуль HTTP. http.put() удобнее, чем работать с сырым гнездом.

См. https://mathworks.com/help/thingspeak/update-a-channel.html, как использовать данные для ThingSpeak.

Сторона примечания: Я предлагаю вам также использовать код примера DS18B20 от https://github.com/nodemcu/nodemcu-firmware/tree/dev/lua_modules/ds18b20, предоставленный командой NodeMCU. Этот код, скорее всего, будет синхронизироваться с прошивкой.

Смежные вопросы