Проблемы с W2K3 и прошивка без венды
Цитата:
Сообщение от
kaliha
Господа, есть опыт удачной прошивки в DFU режиме из под Linux с использованием dfu-tool?
Только что прошился.
Сначала пытался по инструкции, но при подключении девайсины W2K3 просила админа (DfuSe был запущен от админа), а когда получала, то пыталась безрезультатно поставить дрова, в DfuSe устройства не появлялось. Про дрова что-то [было написано][1] в постскриптуме второго спойлера в инструкции товарища RaBiDka:
Цитата:
PS:Если у вас не определяется STM Device in DFU Mode в DFU SE DEMO, при запущенной программе переподключите usb шнур. Если и это не помогло, подключите фучай к ПК, в диспетчере устройств будет неопознанный обьект, скачиваем драйвера из первого гайда и устанавливаем принудительно через меню "обновить драйвера".
, но драйверов в первом гайде (?) обнаружено не было.
Идея ставить семёрку или чего новее была отметена, как только возникла, затем был обнаружен весьма кросс-платформенный [dfu-util][2], был прочтён мануал и, после небольшого числа неудачных попыток вспомнилось, что в [мануале на вортекс][3] упоминается про защиту от чтения (sic! записи?):
Цитата:
4. Убираем проводок. Его можно убрать и раньше, после подключения USB, но тогда придется дважды проделывать вход DFU, т.к. при первой прошивке программа ругнется на защиту от чтения и вывалится с ошибкой. Если это произошло, отключаем USB, приставляем проводок и снова подключаем USB.
, после чего возникла идея о её снятии, после чего в man dfu-util было обнаружено следующее:
Цитата:
-s, --dfuse-address address
Specify target address for raw binary download/upload on DfuSe devices. Do not use this for downloading DfuSe (.dfu) files. Modifiers can be added to the address, separated by a colon, to perform special DfuSE commands such as "leave" DFU mode, "unprotect" and "mass-erase" flash memory.
, а [на просторах Интернета][4] следующее:
Цитата:
For anyone with a proper OS (Linux) I believe I have successfully flashed mine with dfu-util 0.8 (0.5 wouldn't work, can't do the unprotect thingy).
Mine now boots up and GUI says FC Version 1.01
Code:
Код:
$ dfu-util -l
dfu-util 0.8
[...]
Found DFU: [0483:df11] ver=2200, devnum=13, cfg=1, intf=0, alt=1, name="[at]Option Bytes /0x1FFFF800/01*016 e", serial="..."
Found DFU: [0483:df11] ver=2200, devnum=13, cfg=1, intf=0, alt=0, name="[at]Internal Flash /0x08000000/128*0002Kg", serial="..."
$ dfu-util --alt 0 -s 0x08000000:force:unprotect -D KISSFC_v1.011_HWv1.02.dfu
[...]
Device disconnects, erases flash and resets now
$ dfu-util --alt 0 -D ~/KISSFC_v1.011_HWv1.02.dfu
[...]
parsing element 1, address = 0x08000000, size = 42548
Download [=========================] 100% 42548 bytes
Download done.
done parsing DfuSe file
The second cmd to unprotect it was trial'n'error so it might not be how you're supposed to do it, but it seems to have done the job.
Super easy.
On another note, the MAX7456.cpp included in the KISS_OSD zip is trying to include Max7456.h which won't compile (atleast on case-sensitive filesystems).
So either change the include in MAX7456.cpp or rename the files with proper cases and update the include in KISS_OSD.ino .
. Конечно, никакой уверенности в правильности адреса 08000000 в конкретном случае не было, да и фраза про trial'n'error доверия не внушает, но приведённая команда для отлочки была тем не менее опробована, после чего девайсина прошилась штатно:
Код:
# dfu-util -a 0 -s 0x08000000:force:unprotect -D ~/VTXmod_1.5.0.dfu
dfu-util 0.8
Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2014 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util[at]lists.gnumonks.org
Match vendor ID from file: 0483
Match product ID from file: df11
Opening DFU capable USB device...
ID 0483:df11
Run-time device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuERROR, status = 10
dfuERROR, clearing status
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 2048
DfuSe interface name: "Internal Flash "
Device disconnects, erases flash and resets now
# sudo dfu-util -a 0 -D ~/VTXmod_1.5.0.dfu
dfu-util 0.8
Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2014 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util[at]lists.gnumonks.org
Match vendor ID from file: 0483
Match product ID from file: df11
Opening DFU capable USB device...
ID 0483:df11
Run-time device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuERROR, status = 10
dfuERROR, clearing status
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 2048
DfuSe interface name: "Internal Flash "
file contains 1 DFU images
parsing DFU image 1
image for alternate setting 0, (1 elements, total size = 54416)
parsing element 1, address = 0x08000000, size = 54408
Download [=========================] 100% 54408 bytes
Download done.
done parsing DfuSe file
Дополнительно отмечаю, что нога R13 была подтянута к VCC всё время с подключения до прошивки и последующего отключения.
Следующий шаг, конечно, — попытка запуска тюнера под вайном.
Двачую трща Yoti:
Цитата:
Сообщение от
Yoti
Может быть тогда найдётся вариант выложить исходники на гитхаб под gpl v3?
Было бы здорово, если бы труд не пропал. Автор на форум заходит? Возможно, стоит написать в личку или на почту (должна быть в whois xvtx.ru).
P. S. Извините за уродские ссылки — поправлю, если наберу 10 сообщений.
[1]: /forum/f16/t132387-p13.html#post9329253
[2]: //dfu-util.sourceforge.net/
[3]: //xvtx.ru/ecig/files/Manual_rus.pdf
[4]: s //www .rcgroups.com/forums/showpost.php?p=33666486&postcount=663
P. P. S. А то, что запрещены знаки собачки, которые были заменены на [at], сказано не было. Поубивал бы.
- - - Добавлено - - -
А, ну и ещё, там в "R26" вовсе не шестёрка, а восьмёрка на плате нарисована.
Цитата:
Сообщение от
XVortex
Активируем USB. Для этого нужно накинуть две перемычки 0 Ом типоразмера 0402 на места R26 и R27 или кинуть два проводочка, как показано на следующей фотке: