В модуле который нужно обновить прошивка на SDK 3.5 оверлей в апдейте создан под SDK 5.3.
API за это время поменялось 2,5 раза.
Нафиг-нафиг.
Т.е. вы каждый раз меняете код аварийной загрузки?
Сделайте табичку для 10 функций по абсолютному адресу. Больше, чем 10 шт. внешних процедур прошивальщику не требуется. Посчитайте сами.
Так-же вам никто не мешает получит дату сборки или даже её час и напихать в OTA 1000 загрузчиков. Это всего-то до 100 мегабайт пачка загрузчиков – меньше скачанного мультика
Если новый код не снять из инета, то значит на оленях - а там минималка ныне microSD - у неё объемы больше и все ваши годовые модификации в бинарном виде туда полезут, а олени не перетрудятся
ОТА нужна только тем, кто продает некачественный недоделанный товар...
И начнется: фаервол, антивирус, открытые порты, "у меня macOS и ничего не работает...".
Вы явно не работали с потребителями.
Ваши методы устарели. Прямая связь через WiFi со смарта и оно само найдет SSID своего модуля, да кинет туда всё что надо, как в Wынь и в Лух...
На macOS вообще ничего не работает. Как же там продолбиться вообще пользователю через удаленный роутер на ваш WiFi модуль?
И зачем "пользователь" вообще покупал МАK? Почему чуть менее экзотичное не нашел - например комп с CP/M?
Разницы там выходит никакой - всё можно сделать и автоматом в браузере - тем-же исполняемым файлом. Роутеры и фарволы тут не пир чем. Или вы вообще WiFi на модуле не используете? - Тогда дрова на USB и шнурком...
Я вот ни разу ещё не пользовался кнопками WPS и прочими - с кнопками, на бытовых штучках. Пробовал - нифига не соединяется и телефоном фотал наклейки и оно всё само соединялось...
Копаться надо только в *nix, в остальных системах работает java и jvascript.
---------
Cisco тоже не может передать даже через HTTPS автоматом IP для TFTP:
Cisco Wireless LAN Controller (WLC) Software Upgrade | Getting Started with Wireless | Cisco Support Community
Wireless LAN Controller (WLC) Software Upgrade
Тем более инкапсулировать его хотя-бы в webcocket и всё сделать автоматом...
---------
@sharikov - какой-же протокол обновления вы выбрали? Просто лить файл в HTTP в cоntent-е?
Это не всегда и везде проходит и требуется более правильный протокол - запросно-ответный. По этому и ближе TFTP (а инкапсулировать его можно как угодно - он мелко-блочный). Передающий часто не ждет и льет как льется до ошибок, ожидая что вы перезапросите с какого-то куска, если что, а flash не пишется с мега-байтным трафиком... И никакая домохозяйка не в состоянии указать файл на диске из Http/html странички.
И если потребуется какая переразметка общей структуры, то как лить такое через HTTP? Вот тут у вас и начнется описанное вами - версия 3, только после 2, а до этого обязательно 1...
Будете придумывать и менять с каждым обновлением свои протоколы дешифровки заголовков файлов в МБ-ы или воспользуетесь наработанным другими за годы, немного их покромсав (выкинув совсем не нужное) и облачив в современный вид?