Удаленная прошивка Ардуины + EthernetShield
Здравствуйте, коллеги
Дано ардуиноподобные платы (амперка). Которая выступает в роли клиента и стучится за разными данными на сервер.
- Iskra Neo
- Ethernet Shield
- + пара релешек
Необходим механизм удаленной перепрошивки Искры.
Желательно без дополнительных модулей. Теоретически знаю, что есть решения по обновлению через вайфай модуль. Но это план Б скорее.
Это когда мы через DHCP получаем IP адрес на ардуину, а потом уже подключаем ее к сети Wifi. После этого уже указываем на какую-то версию обновлений и прошиваем.
Логика работы, как я её вижу.
Выложил на сервер (не ардуина) в определенное место новый архив или файл. Отметил какой-то флажок в веб интерфейсе на сервере. Ардуина увидела необходимость обновиться и обновилась.
Amp_v.20_05_08_2020 - , что-то нажал и обновило.
И параллельно есть пара квестов по программированию на ардуине. Кому интересно, жду в проект. От Вас предложение по реализации, условия по времени и стоимость.
Спасибо и хорошего дня.
-
72 3 0 Если есть возможность прикрутить туда память (SPI/I2C), то вполне реализуемо - иначе реализуемо, но без HTTP, только UDP, который он будет дергать сам и смотреть есть ли прошивка
-
Здравствуйте.Правильно ли я понимаю что вы хотите реализовать перепрошивку даже без дополнительного МК соторый будет прошивать эту Ардуино?
-
Вариант с ардуиной самой по себе:
Добавляем место для хранения новой прошивки: spi flash, sd card, spi psram (я бы выбрал это, что бы не изнашивать flash, можно ещё и ионистор добавить). В коде самой прошивки идёт проверка на сервере новой прошивки и флага обновления. Если такое появляется - оно скачивается во внешнее место для хранения. Проверяется CRC или хеш. Если ок, перезагружаемся.
Дальше работает переделанный бутлоадер. Он проверяет есть ли во внешнем месте хранения новая прошивка. Для надёжности можно ещё раз посчитать CRC или хеш, сравнить с установленной - и если разные прошить новую.
Минут тут такой: если сломать в самой прошивке (скетче) функцию поиска и скачивания обновления - то работать перестанет.
Можно добавить ещё один МК(ардуину или что-то другое, например какой-нибудь STM32), который будет подключен к ethernet шилду, а для ардуины выглядеть как прозрачная прослойка. У него прошивку не меняем, и там закладываем функцию поиска обновления.
По сути, тот же вариант, что с esp8266.
Можно взять что-то покрупнее. Onion Omega2/аналогичный модуль у китайцев дешевле/б/у роутер с openwrt. Он становиться и ethernet-шилдом и удалённым программатором.
И средой для запуска кода на js/python/bash/lua/c. Ардуина управляет релешками, что-то критическое по времени делает, содержит защитные алгоритмы.
-

Если я не ошибаюсь в библиотеке ArduinoOTA есть скетч OTASckethDownload, который каждые 5 сек. проверяет наличие файла на HTTP и автоматически сам себя обновляет.
-
Aktualne zlecenia dla freelancerów w kategorii Aplikacje desktopowe
Dodać przerwy 10-30 sekund między wysyłkami e-mailiWitam! Szukam doświadczonego programisty 1C / BAS (BAF) do szybkiego rozwiązania problemu technicznego z wysyłką maili.Istota problemu: Używamy programu księgowego BAF (Business Automation Framework), edycja 2.0. Raz w miesiącu pojawia się potrzeba masowego wysyłania klientom… Programowanie stron internetowych, Aplikacje desktopowe ∙ 4 dni 11 godzin temu ∙ 10 ofert |
Rewersowe inżynieria konsolowych narzędzi do ankietowania kontrolerów SSD (Flash ID)1. Cel pracy Wydzielenie interfejsu programowania aplikacji (API) do interakcji z kontrolerami SSD/NVMe z dostarczonego zestawu narzędzi konsolowych (Phison, Silicon Motion, Realtek, Maxiotek, Marvell, JMicron itd.). Wynikiem ma być działający kod w języku C/C++ lub dokładna… C i C++, Aplikacje desktopowe ∙ 4 dni 23 godziny temu ∙ 5 ofert |
Modyfikacja w pracy emulatora
163 PLN
Witaj. Ściągnąłem z Internetu emulator automatu do gier gaminator cf final. Bardzo mi się podoba, ale są tam niedociągnięcia. Jest panel administracyjny, ale otwiera się swobodnie, a nie zamyka w ogóle. Zamyka się tylko razem z aplikacją. A dane po zmianach w panelu… Aplikacje desktopowe ∙ 12 dni 12 godzin temu ∙ 10 ofert |