• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Общие вопросы по Arduino IDE для ESP8266

alexhi

Member
Всем привет. Хочу спросить ещё раз. Может кто в курсе почему в качестве клиента esp так долго отправляет GET запрос? Получается примерно раз в 8 секунд. И как это можно исправить? У всех влюченный светодиод ,который должен просто гореть, постоянно моргает? И моргает так, что иногда на входе релейного модуля пропадает "1" и происходит кратковременное отключение реле.
то иногда на входе релейного модуля пропадает "1" и происходит кратковременное отключение реле

Может он у вас "перезагружается" ,что лог то кажет? На чем пишете?

Я делал GET запрос из проги на pushingbox (отправка себе письма при замыкании GPIO0),так там тоже все неспешно так как после запроса на модуль приходит ответ от сервера .Времена примерно такие же.

 

Victor

Administrator
Команда форума
Очень приятно, что Arduino IDE развивается и коммиты идут почти каждый день, причем много и pull request-тов.
Новых релизов на гитхабе нет с марта месяца, все свежее только на билд-сервере.
Однако, установка свежей версии с AppVeyor стала не совсем тривиальной даже на моей самой обычной Win7 x64.
Я попробовал выборочно несколько билдов из history, включая последний, и все безуспешно.
То каких-то dll в java не хватает, то когда их подсовываешь, вываливается Null Pointer при запуске.
Собирать Arduino IDE из исходников мне стало лениво и я воспользовался новым методом, предложенным Adafruit для ее новой платы HUZZAH
На оригинальную Arduino IDE 1.6.4 накатываются доп. файлы через Boards Manager.
Для удобства, описание этого метода со скриншотом поместил в шапку темы.
 

Telek

New member
Новая загадка. Есть два 3g роутера: один Hame A2(с родной прошивкой), второй китайский мини 3g роутер(перешит на openWRT).
Код esp с некой переодичностью подключается к роутеру и передает данные.
С Hame все отлично, со вторым роутером после каждого подключения утекает 328 байт(практически каждый цикл, за редким исключением).
Причем достаточно просто подключиться к Wifi и отключиться без передачи данных - памяти становится на 328 байт меньше. Уже мозг сломал.
Разобрался. При включенной безопасности WiFi на роутере с openWRT - утекает память при каждом коннекте. С выключенной - не утекает. Странная штука.
 

Victor

Administrator
Команда форума
Обновил инструкцию в шапке.
Кроме установки через Board Manager сборки от Adafruit добавлена аналогичная инструкция от @igrr
На оригинальную Arduino IDE 1.6.4 накатываются файлы самой последней версии с arduino.esp8266.com через Boards Manager.
 

mischaka

New member
У меня наверное глупый вопрос.
Я не знаю как указать номер порта из setup() если я делаю
х=81;
ESP8266WebServer server(х);
в setup() то обект server не виден в void loop()
 

AlexDbx

New member
Вечер добрый.
Такой вопрос: что при ручной установке, что при использовании готового билда 1.6.1 - везде отсутствует esptool в списке программаторов. Как быть?
 

AlexDbx

New member
А какой всё же лучше ставить? Ибо у меня стоит USBasp и как-то не очень грузит..=/
Тем более что эту среду я только поставил из-за ESP, так что помогите пожалуйста по возможности новичку)
 

Victor

Administrator
Команда форума
А какой всё же лучше ставить? Ибо у меня стоит USBasp и как-то не очень грузит..=/
не важно какой вы программатор выберете в этом меню, все равно будет использоваться esptool (в реале там их несколько версий, зависит от платформы)
И что значит "не очень"?
 

AlexDbx

New member
Потому что загрузка сводится к:

espcomm_send_command: receiving 36 bytes of data
warning: espcomm_send_command: wrong direction/command: 0x00 0x08, expected 0x01 0x08
warning: espcomm_sync failed
error: espcomm_open failed

О чём он?=/
 

Victor

Administrator
Команда форума
перед прошивкой ESP8266 из Arduino IDE необходимо переключить GPIO0 на землю и ненадолго замкнуть REST на землю.
Если у вас подключены пины USB-TTL DTR и RTS то это должно происходить автоматически, если нет, то нужно сделать это вручную.
 

AlexDbx

New member
ну вот у меня: ESP-07, USBasp, 115200 бод, 80МГц, 512к,
VCC - VCC (3.3V)
GND - GND
TX - RX
RX - TX
GPIO0 - PullUp DTR
Reset - PullUp RTS
GPIO15 - PullDown
CH_PD - PullUp

бьёт всё ту же ошибку =/
 

AlexDbx

New member
Не, ну имеется в виду что у меня конвертер на FT232, подключение приведённое выше.
Но в списке программаторов в иде - есптулл вообще отсутствует, и галка стоит на юсбасп. вот.
Гугл разноязычный с таким не знаком. Пытался так добавить, пересобрать с нуля, но пока cygwin не осилил.
 

artko

New member
Пущай стоит на USBasp, оно не мешает. Попробуйте вручную перевести модуль в режим программирования и проверить. У меня так заработало.
 

Nikita

New member
Хотел бы добавить информацию по поводу "моргания" выводов на esp8266. Проверил разные варианты, моргание проявляется только тогда, когда активен WiFi, либо как точка доступа, либо, как станция. Если принудительно отключить WiFi, то "моргание" прекращается. Проверял на GPIO2 и GPIO5. Наиболее вероятно, что проблемы в питании esp8266 (под нагрузкой связанной с приемом-передачей WiFi питание просаживается и наблюдаются "моргания" светодиодов, которые у меня сидят на этих выводах). Позже проверю, обновлю информацию.
 

AmatorVic

New member
Хотел бы добавить информацию по поводу "моргания" выводов на esp8266. Проверил разные варианты, моргание проявляется только тогда, когда активен WiFi, либо как точка доступа, либо, как станция. Если принудительно отключить WiFi, то "моргание" прекращается. Проверял на GPIO2 и GPIO5. Наиболее вероятно, что проблемы в питании esp8266 (под нагрузкой связанной с приемом-передачей WiFi питание просаживается и наблюдаются "моргания" светодиодов, которые у меня сидят на этих выводах). Позже проверю, обновлю информацию.
Почему моргают светодиоды - смотрите в скетче где они управляются. т.е где пишете digital.write(....).
Не пишите напрямую в порт GPIO - используйте переменную глобальную для записи состояния выхода и в нее записывайте 0 или 1, а уже далее пишите в порт состояние этой переменной.
Моргание происходит из-за того что при обработке секции с wifi модуль только этим и занят, а не проверяет условие включение выходов, а если у Вас условие на переключение состояние портов зависят от каких-то других условий, то естественно проверка этого не идет и порт меняет состояние.
Где то-так!
 

AltSoftLLC

New member
Кому-Нибудь удалось завести загрузку скетча по маком?
У меня esptool выдает
esptool v0.4.4-5-g744c44d - (c) 2014 Ch. Klippel <ck@atelier-klippel.de>
setting board to ck
setting baudrate from 115200 to 115200
setting port from /dev/tty.usbserial to /dev/cu.usbserial
setting address from 0x00000000 to 0x00000000
espcomm_upload_file
stat /var/folders/4y/m1fs5gps5pj52pzd1dft8c100000gn/T/build1743790168572076861.tmp/DumpInfo.cpp_00000.bin success
opening port /dev/cu.usbserial at 115200
tcgetattr
tcsetattr
serial open
opening bootloader
resetting board
trying to connect
setting character timeout 0
done
setting character timeout 1
done
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_open
Uploading 31840 bytes from /var/folders/4y/m1fs5gps5pj52pzd1dft8c100000gn/T/build1743790168572076861.tmp/DumpInfo.cpp_00000.bin to flash at 0x00000000
erasing flash
size: 007c60 address: 000000
first_sector_index: 0
total_sector_count: 8
head_sector_count: 8
adjusted_sector_count: 4
adjusted_size: 004000
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
setting timeout 10000
setting character timeout 100
done
setting timeout 1
setting character timeout 1
done
error: failed reading byte
warning: espcomm_send_command: can't receive command response header
warning: espcomm_send_command(FLASH_DOWNLOAD_BEGIN) failed
closing boot loader

esptool.py тоже пробовал (брал последний с git)
Он начинает шить и через произвольное количество процентов вываливает
Connecting...
Erasing flash...
Writing at 0x00000c00... (12 %)
Traceback (most recent call last):
File "./esptool.py", line 536, in <module>
esp.flash_block(block, seq)
File "./esptool.py", line 196, in flash_block
raise Exception('Failed to write to target Flash')
Exception: Failed to write to target Flash

Приходиться запускать виндовый прошивальщик через виртуалку. Безумно неудобно :(

От модератора: пожалуйста, прячьте простыни под спойлер!
 
Последнее редактирование модератором:

igrr

Moderator
Команда форума
@AltSoftLLC Я использую esptool на маке.
Какой usb-serial вы используете? Если FTDI, драйверы системные, или с сайта FTDI? У меня, помнится, были проблемы с эппловским драйвером FTDI...
 
Сверху Снизу