Позвольте вклиниться
Да, в перспективе прошивка должна обновляться по радио с того-же андроид-устройства, в этом нет сомнений. Для пользователя всё должно выглядеть как одно нажатие на кнопку.
При этом самый надёжный вариант реализации - тот, который предлагает Pingvin: прошивка закачивается по радио на карточку, а потом при перезагрузке из файла происходит обновление.
Если прошивать сразу с радиоканала в память - то при обрыве радиосоединения (ну там выключил случайно девайс, или ещё что) мы получим непрошитое устройство. Конечно, можно перезапустить/возобновить процесс, но лучше, чтобы сначала прошивка полностью попадала на карточку, а потом за несколько секунд уже переносилась в контроллер - это очевидно.
Поэтому бутлоадер Pingvin-а очень пригодится.
Но я бы хотел также заметить, что способ прошивки - это всё равно дело десятое. Для рядового пользователя куда лучше, чтобы перепрошивать было вообще не обязательно
То есть не было существенных багов.
При этом следует понимать: между работой отдельных компонентов системы (бутлоадер, воспроизведение звука, передача по радио, поддержка MT2 и т.п.), и корректной работой всей системы вместе и находится основная часть работы. И именно на это приходится направлять большую часть усилий.