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

Возможна ли загрузка по WiFi без интернета?

cofessor

New member
Предыстория вопроса
Вначале была идея. И эта идея была - автоматизация теплицы.
Начал с нуля и 1-е устройство было на модулях Arduino Uno, DS3231 и реле. И увидел я что это плохо, решил перейти на SMD, чипы и программатор. Затратив немало времени, родил и увидел что это намного лучше конструкций на модулях.
Проблема в том, что теплица - сложный объект и растения в ней не растут, а мучаются из-за огромных скачков температуры и влажности. Добиться поддержки оптимальных параметров - задача не из лёгких и требует массы экспериментов на месте, т.е. постоянных перепрошивок. Но как перепрошить устройство, когда оно уже установлено, к нему подключены датчики и ИМ-мы?
И тут услышал я волшебное слово: ESP! WiFi мне в руки, решил я и заказал модули NodeMCU. Попробовал прошивать по воздуху - Arduino OTA и вроде всё пошло, в скетч добавляется всего 3 строчки и прошивка летит через эфир, но...

Тут уже сама проблема
На даче я не живу и интернета там нет, но есть старый ПК. Кажется осталось добавить к нему свисток WiFi и дело в шляпе. Попробовал отключать интернет - прошивка идёт. Однако стоит только перезагрузить ПК, как вся поддержка ESP и других дополнительных платформ слетает, но почему?

Для того чтобы Arduino IDE подключила платформу ESP, в настройки надо вписать ссылку на файлы описания дополнительных плат. При добавлении поддержки платформ, не входящих в ядро, менеджер плат по этой ссылке скачивает и устанавливает указанный пакет. Казалось бы, пакет плат установлен на ПК и интернет больше не нужен. Однако поддержка возвращается только после восстановления интернета и рестарта роутера. Получается, Arduino IDE всё равно в начале работы обращается по ссылке, т.е. без интернета не обойтись?
Более того, все мои платы на чипах AVR тоже не будут прошиваться без интернета даже по шнурку, потому что их поддержка тоже не входит в ядро, т.е., как бы не совсем резидентна?
 

Сергей_Ф

Moderator
Команда форума
@cofessor зачем зимой прошивать esp в теплице без интернета? При чем тут ваш старый ПК и ... Ничего не понял. Не устраивает ОТА, посмотрите web Update. В примерах есть.
 

nikolz

Well-known member
Предыстория вопроса
Вначале была идея. И эта идея была - автоматизация теплицы.
Начал с нуля и 1-е устройство было на модулях Arduino Uno, DS3231 и реле. И увидел я что это плохо, решил перейти на SMD, чипы и программатор. Затратив немало времени, родил и увидел что это намного лучше конструкций на модулях.
Проблема в том, что теплица - сложный объект и растения в ней не растут, а мучаются из-за огромных скачков температуры и влажности. Добиться поддержки оптимальных параметров - задача не из лёгких и требует массы экспериментов на месте, т.е. постоянных перепрошивок. Но как перепрошить устройство, когда оно уже установлено, к нему подключены датчики и ИМ-мы?
И тут услышал я волшебное слово: ESP! WiFi мне в руки, решил я и заказал модули NodeMCU. Попробовал прошивать по воздуху - Arduino OTA и вроде всё пошло, в скетч добавляется всего 3 строчки и прошивка летит через эфир, но...

Тут уже сама проблема
На даче я не живу и интернета там нет, но есть старый ПК. Кажется осталось добавить к нему свисток WiFi и дело в шляпе. Попробовал отключать интернет - прошивка идёт. Однако стоит только перезагрузить ПК, как вся поддержка ESP и других дополнительных платформ слетает, но почему?

Для того чтобы Arduino IDE подключила платформу ESP, в настройки надо вписать ссылку на файлы описания дополнительных плат. При добавлении поддержки платформ, не входящих в ядро, менеджер плат по этой ссылке скачивает и устанавливает указанный пакет. Казалось бы, пакет плат установлен на ПК и интернет больше не нужен. Однако поддержка возвращается только после восстановления интернета и рестарта роутера. Получается, Arduino IDE всё равно в начале работы обращается по ссылке, т.е. без интернета не обойтись?
Более того, все мои платы на чипах AVR тоже не будут прошиваться без интернета даже по шнурку, потому что их поддержка тоже не входит в ядро, т.е., как бы не совсем резидентна?
Если я Вас правильно понял, то Вы пытаетесь заниматься разработкой технологии управления теплицей используя для этого программирование микроконтроллеров.
Но такой способ решения исследовательской задачи очень трудозатратный.
Если сказать проще, то сделайте систему для исследований и отладки технологии.
Когда технологию (алгоритм) управления теплицей создадите, то тогда и запишите программу для управления в ESP.
 

cofessor

New member
@cofessor зачем зимой прошивать esp в теплице без интернета? При чем тут ваш старый ПК и ... Ничего не понял. Не устраивает ОТА, посмотрите web Update. В примерах есть.
Раз есть не нужный ПК, то почему бы не использовать его на даче? Я полагал что смогу прошивать МК по воздуху и без интернета, но после перезагрузки компьютера, когда открываю столбец "Инструменты", вижу что все дополнительные платформы исчезают, поэтому без разницы что запускать - Arduino OTA или Web Update.
Не зимой, но на самом объекте, в интерактивном режиме.
 

cofessor

New member
Но такой способ решения исследовательской задачи очень трудозатратный.
Если сказать проще, то сделайте систему для исследований и отладки технологии.
Когда технологию (алгоритм) управления теплицей создадите, то тогда и запишите программу для управления в ESP.
Наоборот, наименее затратный, потому что не надо каждый раз снимать контроллер чтобы внести изменения в программу. Будь интернет, так можно было бы отлаживать программу вообще находясь дома, в городе: внёс изменения - отслеживаю как повлияло.
На модели отладить не получится - боюсь, придётся долго экспериментировать с разными исполнительными механизмами и режимами работы, прежде чем удастся удерживать в пределах хотя бы температуру, не говоря уже о более сложных зависимостях.
Но это всё объяснение - для чего мне это надо. Ну вот надо и всё тут. В принципе, вопрос не в этом, а в том, как сделать чтобы WiFi работал при отсутствии интернета.
 

CodeNameHawk

Moderator
Команда форума
Попробовал отключать интернет - прошивка идёт. Однако стоит только перезагрузить ПК, как вся поддержка ESP и других дополнительных платформ слетает, но почему?
Отключить интернет вы не можете, максимум вы можете отключиться от интернета.
Как и что вы делаете не ясно.

Никуда не слетает. Поддержка всех установленных платформ остается. Скетчи нормально собираются.
Ясное дело, что прошивать без роутера надо по другому. Вам уже писали
посмотрите web Update
На есп надо поднять точку доступа и уже к ней подключить комп.
 
Последнее редактирование:

cofessor

New member
Отключить интернет вы не можете, максимум вы можете отключиться от интернета.
Как и что вы делаете не ясно.

Никуда не слетает. Поддержка всех установленных платформ остается. Скетчи нормально собираются.
Ясное дело, что прошивать без роутера надо по другому. Вам уже писали

На есп надо поднять точку доступа и уже к ней подключить комп.
Роутер никуда не девается, он остаётся на месте, но интернет отключается. Я моделировал это просто вытаскивая разъём интернета из гнезда роутера и перезагружал компьютер.
И всё, амба, открываю вкладку инструментов - дополнительных платформ нет. Вставляю разъём, перезагружаю - всё на месте.
А что, разве ПК без роутера может связаться с NodeMCU? У меня на ПК вроде нет поддержки локальных сетей.
 

CodeNameHawk

Moderator
Команда форума
открываю вкладку инструментов
Делайте все медленно со скриншотами, а то непонятно.
Все платы остаются на месте.
А что, разве ПК без роутера может связаться с NodeMCU?
Да.
На есп надо поднять точку доступа и уже к ней подключить комп.
Ясное дело, что для этого в есп надо залить нужный скетч.
 

Сергей_Ф

Moderator
Команда форума
@cofessor может. На то и точка доступа у esp имеется. Но суть не в этом. Как вы не посещая дачу прошивает esp без интернета? Я не понял, честно говоря. И да, слетать без интернета ничего не должно, что то у вас не так.
 

cofessor

New member
Как вы не посещая дачу прошиваете esp без интернета? Я не понял, честно говоря. И да, слетать без интернета ничего не должно, что то у вас не так.
Мне только прислали NodeMCU и я пока отрабатываю дома как я буду делать закачку на даче. Поскольку нет ноутбука, я не могу принести его в теплицу, подключиться и модифицировать скетч, да это и не очень удобно, зато есть ПК в садовом домике. Заказал в Китае свисток USB, который должен обеспечить WiFi. Интернет, понятно, специально только для загрузки скетчей проводить не стану. Цель - чтобы с ПК скетч грузился в контроллер, установленный в теплице, по воздуху.
Делайте все медленно со скриншотами, а то непонятно.
Все платы остаются на месте.
Ну завтра, будет время, попробую ещё раз, может просто сбой какой был.
 

CodeNameHawk

Moderator
Команда форума
Надо проверить не завладели ли темные силы вашим компом.
А так в ардуиноиде есть готовый пример WebUpdate.
 

tretyakov_sa

Moderator
Команда форума
Проблема в том, что теплица - сложный объект и растения в ней не растут, а мучаются из-за огромных скачков температуры и влажности. Добиться поддержки оптимальных параметров - задача не из лёгких и требует массы экспериментов на месте, т.е. постоянных перепрошивок.
Нужно писать код так, чтоб не заливать каждый раз новую прошивку. Компьютер подключили к ESP в режиме точки доступа. Зашли на web страницу встроенную в esp. Поменяли нужные вам настройки. И в крайнем случае, заменили всю прошивку, если хотите сделать глобальные изменения кода через /update.
Роутер и интернет в этом случае вам не нужен. И даже компьютер, все можно сделать с телефона.
 
Последнее редактирование:

nikolz

Well-known member
Наоборот, наименее затратный, потому что не надо каждый раз снимать контроллер чтобы внести изменения в программу. Будь интернет, так можно было бы отлаживать программу вообще находясь дома, в городе: внёс изменения - отслеживаю как повлияло.
На модели отладить не получится - боюсь, придётся долго экспериментировать с разными исполнительными механизмами и режимами работы, прежде чем удастся удерживать в пределах хотя бы температуру, не говоря уже о более сложных зависимостях.
Но это всё объяснение - для чего мне это надо. Ну вот надо и всё тут. В принципе, вопрос не в этом, а в том, как сделать чтобы WiFi работал при отсутствии интернета.
Вы не поверите, но Вы очень сильно заблуждаетесь.
Если действительно хотите разработать технологию управления теплицей то делается это так
1) делаете систему для исследований - сбора и управления на вашем компе который у вас там есть.
2) пишите алгоритм управления на компе
3) собираете данные с датчиков в БД или в файлы.
4) обрабатываете эти данные на матлаб или R и определяете влияющие факторы и ошибку управления
5) если достигнутый результат не устраивает, то вносите коррекции в алгоритм управления и переходите на п3
6) если все устраивает, то переносите разработанный алгоритм ни ESP и ставите работать параллельно с системой сбора для длительного тестирования и коррекции.
--------------------------
Последовательность, которую я вам написал - это тоже технология , но для создания система управления
------------------------
В качестве метода управления теплицей можно применить и нейронные сети, чего Вы по Вашей методике никогда не сможете сделать.
 

nikolz

Well-known member
Роутер никуда не девается, он остаётся на месте, но интернет отключается. Я моделировал это просто вытаскивая разъём интернета из гнезда роутера и перезагружал компьютер.
И всё, амба, открываю вкладку инструментов - дополнительных платформ нет. Вставляю разъём, перезагружаю - всё на месте.
А что, разве ПК без роутера может связаться с NodeMCU? У меня на ПК вроде нет поддержки локальных сетей.
берете еще одну ESP и подключаете ее к компу через разъем Это ESP и будет вам вместо роутера
для этой ESP пишите сервер и включаете на ней точку доступа
ESP в теплице теперь должны подключаться к этой ESP
Интернет вам не нужен. У вас получится своя внутренняя сеть типа звезда где ESP у компа будет центром.
 

tretyakov_sa

Moderator
Команда форума
В качестве метода управления теплицей можно применить и нейронные сети, чего Вы по Вашей методике никогда не сможете сделать.
Вот это улыбнуло. ESP это не компьютер по вашему? По характеристикам мощнее IBM PC ХТ. У теплицы не так много параметров. Почему бы не собрать данные на Flash. Не нужно компьютер включенным держать для сбора данных.
Если хотите исследовать данные в MatLab флаг в руки. Хотите в нейронную сеть данные грузите, обучайте и грузите опять в ESP.
Топик стартер представляет, что это как в ардуино на AVR, код нужно загружать каждый раз.
 

Сергей_Ф

Moderator
Команда форума
@cofessor давайте по порядку. Если сбрасываются настройки в АрдуиноИДЕ, то скажите какая операционка стоит на компе?
Как и куда установлено АрдуиноИДЕ.
Поддержку esp тоже можно установить несколькими способами, не обязательно через ссылку.
Встроенные ядра для AVR вообще никуда деваться не должны.
Перепрошить esp каждый раз в принципе не требуется, для того есть параметры и встроенная флэш-память.
Для автоматизации теплицы можно найти и готовые решения, типа прошивок EspEasy или Sonoff. Естественно, условия и действия нужно будет задать в них самому.
 

Сергей_Ф

Moderator
Команда форума
ардуино на AVR, код нужно загружать каждый раз.
Есть библиотека, реализующая отличную командную строку для AVR. Прекрасно можно менять параметры через терминал. И я даже сделал на ней серьезную работу.
 

nikolz

Well-known member
Вот это улыбнуло. ESP это не компьютер по вашему? По характеристикам мощнее IBM PC ХТ. У теплицы не так много параметров. Почему бы не собрать данные на Flash. Не нужно компьютер включенным держать для сбора данных.
Если хотите исследовать данные в MatLab флаг в руки. Хотите в нейронную сеть данные грузите, обучайте и грузите опять в ESP.
Топик стартер представляет, что это как в ардуино на AVR, код нужно загружать каждый раз.
Вот это улыбнуло. ESP это не компьютер по вашему? По характеристикам мощнее IBM PC ХТ. У теплицы не так много параметров. Почему бы не собрать данные на Flash. Не нужно компьютер включенным держать для сбора данных.
Если хотите исследовать данные в MatLab флаг в руки. Хотите в нейронную сеть данные грузите, обучайте и грузите опять в ESP.
Топик стартер представляет, что это как в ардуино на AVR, код нужно загружать каждый раз.
Я привык предлагать то, в чем имею опыт. Если говорю о том, о чем лишь читал то указываю на это прямо.
В данном случае это не только мой опыт.
Вы это написали из своего опыта обработки больших объемов данных с применением нейросети на ESP или это просто Ваши умозаключения после чтения интернета?
Я могу обоснованно доказать свои утверждения. Но полагаю в этом нет смысла. Вы же просто так погулять вышли. Или я не прав, Вы сейчас просветите меня из собственного опыта.
 
Сверху Снизу