DFU (Device Firmware Upgrade)
Подробнее
- Создатель
- USB Implementers Forum
- Тип
- Класс USB-устройств
Стандартный класс USB для загрузки новой прошивки в устройство без отдельного программатора.
USB-IF определил класс, чтобы каждому производителю не изобретать свой протокол обновления. Устройство перезагружается в режим DFU — обычно это загрузчик в защищённой области флеша — и заново перечисляется как другое USB-устройство, принимающее файл и записывающее его блок за блоком. На стороне хоста работает универсальная утилита вроде dfu-util.
Во многих микроконтроллерах, включая несколько семейств STM32, DFU зашит в ПЗУ, которое нельзя перезаписать, поэтому устройство практически невозможно «окирпичить» неудачным обновлением. iPhone имеет собственный режим DFU на той же идее. С точки зрения безопасности это дверь: без проверки подписи загрузчик принимает любую прошивку, и потому серьёзные продукты сочетают DFU с безопасной загрузкой.