Задать вопрос
dimanjy
@dimanjy
Недопрограммист и полуинженер.

Загрузка прошивки в Arduino из Android

Разрабатываю гибридное устройство Android + Arduino. Мозги в Android, исполнитель - Arduino - как обычно. Подключение по USB с использованием готовой библиотеки usb-serial-for-android. В общем, с передачей данных туда-сюда проблем никаких нет.

Как бы при помощи этой связки загружать скетчи в Arduino? Это нужно для обновления прошивки уже готовых устройств без каких-либо действий со стороны пользователя.

Знаю, что есть такой проект, как Arduino IDE for Android. Значит, загружать скетчи из Android в Arduino через USB на практике возможно.

Вопрос - как мне сделать свой велосипед и реализовать это в своем Android-приложении?
Где почитать, чего посмотреть?

Как я понимаю, я сперва должен послать сигнал сброса на Arduino по USB, а потом пытаться отправить скетчь. Вот как именно это нужно делать, какой протокол для данных, как это делает, например, сам avrdude?

  • Вопрос задан
  • 14703 просмотра
Подписаться 7 Оценить Комментировать
Решения вопроса 1
dimanjy
@dimanjy Автор вопроса
Недопрограммист и полуинженер.

Вот, сам нашел нечто похожее на ответ:
Avrdude прошивает Arduino через bootloader (зашитый в микроконтроллер), используя протокол STK500 для передачи новых скетчей. Вот документация.
Видимо, используя этот протокол можно залить скетч в Arduino из Android...

А вот и STK500 на Java...

Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@svd71_1

Читайте инфу по bootloader for AVR. Имеются тысячи реализаций оного.
>Как я понимаю, я сперва должен послать сигнал сброса на Arduino по USB, а потом пытаться >отправить скетчь. Вот как именно это нужно делать, какой протокол для данных, как это делает, >например, сам avrdude?

Может я чего-то и не зтаю про Ардуино, ведь их могут быть тоже тысячи модификаций, но avrdude не может на прямую перепрограммировать микроконтроллер. Хотя если используются для USB кристаллы FT3232 (вроде бы в старых версиях Ардуино был FT232), то возможно програмирование с использованием SPI интерфейса. Если же вы знаете способ, как заставить avrdude прошивать Arduino, то этот документ может вам пригодиться: http://www.atmel.com/Images/doc0943.pdf
Хотя почитайте еще и этот тоже http://www.atmel.com/Images/doc1644.pdf

Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 дек. 2024, в 20:40
10000 руб./за проект
22 дек. 2024, в 20:34
3000 руб./за проект
22 дек. 2024, в 20:12
10000 руб./за проект