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

Для новичков

exclus

New member
А я вот кроме как на LUA вообще ничего не смог написать кроме
AT
OK
))
SDK код для меня вообще тёмный лес, сегодня всю ночь модуль работал на это скрипта не одного пакета от него не потерялось ( был оставлен ping 192.168.1.5 -t на всю ночь)
Правда я приписал ещё команду
realtype = wifi.sleeptype(wifi.NON_ESLEEP)
Что бы модуль не уходил в сон
 

JustACat

Moderator
Команда форума
выделить комментарии другим шрифтом
Ну так оно и должно так быть, зато код читается! А это куда важнее :)
А обратить внимание можно и ниже. Номерами строк, либо, разбив сразу код на блоки.

Вот потому я и написал Victor'у, что очень уж подсветки кода и нумерации строк не хватает! =)
"Насяльника, осень нама пасветки нихватаить!" :)
Хотя бы для LUA, Си/Си++, HTML. Еще можно для Python, JS, CSS, PHP...

А так, exclus, пожалуйста и удачи вам в освоении!

сегодня всю ночь модуль работал
Как показывает практика - несрабатывает обычно как раз тогда, когда совсем не ждешь ;)
Вы-то ждали как раз, потому все и сработало :) Вы не пугайтесь сильно, для домашних поделок это норм.
Лишь бы только ничего супер-важного на это не вешать...
 

Victor

Administrator
Команда форума
Си/Си++ еще можно как-то вызвать
Поддержка большинства языков программирования.
Все, что поддерживается в GeSHi
Код:
int ICACHE_FLASH_ATTR
smart_config_decode(uint8* pOneByte)

smart_recvbuf[pos] = val;
#ifdef PLATFORM_DEBUG
ets_uart_printf("[%02x]=%02x\n",pos,val);
#endif
if( pos > smart_recvbuf_len ){
smart_recvbuf_len = pos;
}
return SMART_CH_LOCKED;
 

exclus

New member
Я правильно понимаю, что в api nodemcu указаны спец команды на языке lua для модуля esp8266, а так поддерживается весь синтаксис lua 5.1.4 ?
 

JustACat

Moderator
Команда форума
exclus, эм, ну у них написано:
Summary
  • Easy to access wireless router
  • Based on Lua 5.1.4 (without debug, os module.)
  • Event-Drive programming preferred.
  • Build-in json, file, timer, pwm, i2c, spi, 1-wire, net, mqtt, coap, gpio, wifi, adc, uart and system api.
  • GPIO pin re-mapped, use the index to access gpio, i2c, pwm.
  • Both Integer(less memory usage) and Float version firmware provided.
А вот как оно на деле - кто его знает :) Но раз пишут, что поддерживают это, значит, наверное, так и есть.
Еще у них написано, что ядро базируется на eLua - там, думаю, тоже можно поискать информацию о том, что поддерживается.
 

AnonymUser

New member
можно как то не выставлять принудительно ip? чтоб какой адрес не ввел - показать суто одну информацию?
 

AnonymUser

New member
AnonymUser, разъясните задачу поподробнее пожалуйста
принудительно выставляем ип точки доступа wifi.ap.setip({ip="1.1.1.1",netmask="255.255.255.0",gateway="1.1.1.1"});
если не поставим то ип будет 192.168.4.1
соотвествеено запросы будут приниматся только на этот ип,а задача стоит чтоб пользователь при подключении к точке какой бы адрес не ввел - получил страницу с ошибкой(не браузера,а кастомную) или перебросить его с введенного адреса на ип прописанный через wifi.ap.setip/стандартный
 

mocart

New member
Прошу не бить, в чем отличие init.lua от main.lua ? и какой из них нужно заливать?
 

Victor

Administrator
Команда форума
здесь всегда дружелюбно к новичкам, которые читают документацию.

Имена файлов произвольные, но если есть init.lua то он запускается автоматом после старта прошивки.
Если вы в нем допустите ошибку, которая приводит к перезагрузке модуля, то получите bootloop - бесконечную перезагрузку модуля и придется прошивать прошивку NodeMCU снова.
Поэтому заливать обычно лучше оба файла (имя второго не важно)
В init.lua задаете только настройки WiFi (ssid и пароль), можете добавить вызов main.lua, но не сразу, а по таймеру, секунд в 5, чтобы успеть прервать выполнение вручную, если получили bootlop. Примеры такие на форуме есть - поищите.
 

nikolz

Well-known member
А я рекомендую не заливать init.lua никогда при отладке программ.
 

nikolz

Well-known member
к стати, Victor, Если главную программу всегда называть main то можно существенно
облегчить жизнь в Esplorer( я так делаю в своем отладчике) сделав кнопку main,
которая запускает на ESP этот файл.
 

Victor

Administrator
Команда форума
сделав кнопку main
у меня там уже проблема со свободным местом для кнопок, да и пользователей пугает большое количество кнопок/настроек.
А запуск любого файла у меня реализован в файловом менеджере - кликаешь по любому lua или lc файлу и он запускается.
 

nikolz

Well-known member
у меня там уже проблема со свободным местом для кнопок, да и пользователей пугает большое количество кнопок/настроек.
А запуск любого файла у меня реализован в файловом менеджере - кликаешь по любому lua или lc файлу и он запускается.
Поэтому сделайте, как у меня(можно даже проще) 3 основных кнопки - main, pro, format. Остальные можно вообще убрать.
 

random1st

New member
Объясните пожалуйста такую вещь. Настройки WiFi после установки командой wifi.sta.config сохраняются где или сбрасываются после рестарта МК?
 
  • Like
Реакции: jmms
Сверху Снизу