Загружчик УНО с сменой пограммы через gprs - есть ли подобное?
- Войдите на сайт для отправки комментариев
Пт, 11/05/2018 - 22:50
Есть ли подобные загрузчики, чтобы по команде мог коннектится на сервак через гпрс модем и менять прошивку в процессоре..?
Такие загрузчики слишком жирные - практически второй МК нужно рядом ставить.
Я как-то искал способ смены прошивки в 328-й по сети, нашел идею на .cc. Она заключалась в том, что основной МК по команде лезет куда надо, сливает прошивку в рядом стоящий EEPROM (например по I2C). Загрузчик же сначала проверяет - есть ли в EEPROM что-нибудь новенькое и переливает в MK, если найдет. Но финала этой истории не было, т.е. загрузчик с поддержкой I2C никто пилить не стал.
Через вай-фай https://geektimes.com/post/274092/
Через GPRS есть коммерческий проект на М66 , но это в раздел ищу исполнителя.
дело в том. что существуют девайсы, которые на атмеге 32й например. там занрузчик с гпрсом... отправляется команда в зашитый проц, и загрузчик лезет на гпрс по известному ему адресу, и шьет себе по кусочкам флеш.. процесс занимает несколько минут.
Программист писал на асемблере, загрузчик около 2кб.. ктото может повторить этот подвиг? Второй проц тут категорически не нужен. и тот загружчик имел свой интерфейс для загрузки по юарту.. процес там похож на ардуиновский. Не верю, что никто не може повторить. Я быдаже задонатил, думаю не только я.
Программист писал на асемблере, загрузчик около 2кб.. ктото может повторить этот подвиг?
Второй проц тут категорически не нужен.
Может, и не нужен, зато радикально дешевле. Или Вы считаете эту задачу настолько важной, что ради нее следует совершать подвиги?
А зачем отдавать предпочтение заведомо более дорогому решению, когда существует дешевое?
скажу - что:
1) это очень удобно.
2) экономит кучу времени, ресурсов и нервов.
разве ради этого не стоит сделать такой специальный загрузчик?
вай-файный вариант 8266 умеет прошиваться "по воздуху". почему бы 328 не научить?
скажу - что:
1) это очень удобно.
2) экономит кучу времени, ресурсов и нервов.
Т.е. Вы полагаете, что перечисленное выше стоит нескольких недель работы опытного программиста?
разве ради этого не стоит сделать такой специальный загрузчик?
вай-файный вариант 8266 умеет прошиваться "по воздуху". почему бы 328 не научить?
"стоит" или "не стоит" - определяется балансом спроса и предложения.
Обратитесь в раздел "Ищу исполнителя", и узнаете - стоит или нет.
не... к сожалению, я понимаю, что доводка версий этого загрузчика да неглючной... - около года времени..
готов донатить 100$ на общественных началах. если будут еще желающие - приветствую. Ну и прошивка ведь по хорошему должна быть общим достоянием. Кстати я не знаю, а какая могла бы быть стоимость если индивидуально заказыать - для себя? порядок цен?
В ветку "ищу исполнителя" - пока рано, поэтому интересно здесь пообщаться.
Ну, по поводу стоимости - это не ко мне.
Если пообщаться по поводу предложенного Вами проекта, то думаю, Вы несколько преувеличиваете его полезность. Мне кажется, что у Ардуино недостаточно мощностей, чтобы обеспечить минимально приемлемую защиту от взлома, а без нее универсальность, а, следовательно, и ценность такого решения будет не на высоте.
не... к сожалению, я понимаю, что доводка версий этого загрузчика да неглючной... - около года времени..
готов донатить 100$ на общественных началах. если будут еще желающие - приветствую. Ну и прошивка ведь по хорошему должна быть общим достоянием. Кстати я не знаю, а какая могла бы быть стоимость если индивидуально заказыать - для себя? порядок цен?
В ветку "ищу исполнителя" - пока рано, поэтому интересно здесь пообщаться.
Не могу понять что мешает задонатить тому перцу, который УЖЕ писал на ассемблере и уложился в два кила? Раз видели код, наверняка этого перца можно найти ..
он просто не будет этого делать, долго обьяснять, но он больше потеряет, чем заработает, даже если задонатить ему 2-3-4-7-9 тыс $...
не спрашивайте почему так, это не тема этой ветки, я просто обьяснил результат.
Ну, по поводу стоимости - это не ко мне.
Если пообщаться по поводу предложенного Вами проекта, то думаю, Вы несколько преувеличиваете его полезность. Мне кажется, что у Ардуино недостаточно мощностей, чтобы обеспечить минимально приемлемую защиту от взлома, а без нее универсальность, а, следовательно, и ценность такого решения будет не на высоте.
Если честно, не все понял. Защита от взлома имея новый загрузчик в процессоре?
Такие загрузчики слишком жирные - практически второй МК нужно рядом ставить.
Я как-то искал способ смены прошивки в 328-й по сети, нашел идею на .cc. Она заключалась в том, что основной МК по команде лезет куда надо, сливает прошивку в рядом стоящий EEPROM (например по I2C). Загрузчик же сначала проверяет - есть ли в EEPROM что-нибудь новенькое и переливает в MK, если найдет. Но финала этой истории не было, т.е. загрузчик с поддержкой I2C никто пилить не стал.
Я извиняюсь, невнимательно первый раз прочитал. Теперь понял идею.
Да, такое вполне резонно. И кстати сама идея смены загрузчиком ПО по гпрсу - она лежит на поверхности, странно, что для ардуино ее никто не реализовал. На а..сс думаю ее должны были обсуждать и не раз, я далеко не первый, кому приходило желание и необходимость сменить ПО удаленно, и не ехать хер знает куда с ноутбуком..
Если честно, не все понял. Защита от взлома имея новый загрузчик в процессоре?
Возможность перепрошить контроллер, не имея физического доступа к нему - опасная штука.
Да, такое вполне резонно. И кстати сама идея смены загрузчиком ПО по гпрсу - она лежит на поверхности, странно, что для ардуино ее никто не реализовал.
Странного ничего нет, потому как этих гпрс-модемов как грязи... И каждый со своим прибабахом, думаю. К ESP прикручен один и тот же сетевой интерфейс, поэтому вендору не нужно маяться и писать загрузчик, который бы работал с десятком разновидностей Wi-Fi чипов. А возьмись кто-то писать под SIM800/SIM900/A6 , да учитывая все ревизии... Адский труд - тащить весь этот воз. Еще и на общественных началах...
Идея с внешней памятью выигрывает тем, что нет дублирования функционала по работе с внешним интерфейсом. Т.е. штатно МК ходит куда-то по gprs, для этого в прошивке написан код. Вот как он ходит куда-то там, так и идет на тайный сервер с обновкой, качает ее пока не надоест (не болтаясь при этом по полдня в бутлоадере, что само по себе не очень хорошая идея). Когда удачно сольет, тогда уже и ребутнется, да перепрошьётся в быстром темпе.
Если честно, не все понял. Защита от взлома имея новый загрузчик в процессоре?
Возможность перепрошить контроллер, не имея физического доступа к нему - опасная штука.
А если я так тысячами перешивал :) И идея моя тогда лет 10 назад была, на что программист ответил поначалу - это невозможно.. А у него тогда за плечами лет 15 на мк тогда было..
не бойтесь, это не опасно. Если все верно сделано - шьется, если гпрс оборвано - мк гсм модуль перезагружает и продолжает долбить попытками.. в худшем случае со шнурком можно уже приехать и перешить. Но это крааайне редко бывало.
логика работы того бутлоадера была несложная - если коннект оборвался - делает десятка два попыток и ждет. ПО в нем да - испорчено. После перезагрузки питания делает снова попытки пока счетчик не сработает и опять ждет.. Никогда не было так, что прошивка внутри мк оказывалась порченой. Перегружать по питанию приходилось крайне редко и это мог сделать тот, кто рядом с устройством. Счетчик попыток был чтобы все деньги на гпрс не сожрало, но сейчас это менее актуально.
В таком разе надежнее закачивать прошивку в память и только после полной закачи - шить контроллер. В качестве внешней памяти почему бы не использовать те же SD карты со SPI интерфейсом? ИМХО, вопрос всё ещё менее понятен чем полезен..
а обычная sd карта какой интерфейс имеет? там памяти там фигня нужна.. а sdшка менее гигабайта уже и не найти. может проще микросхему памяти ставить? какую?
Хочу выяснить все возможности, ньюансы.
Например, I2C EEPROM.