Автор Тема: MMDVM_HS_Dual_Hat прошиваем из версии GPIO в USB и обратно  (Прочитано 6713 раз)

0 Користувачів і 1 Гість дивляться цю тему.

Offline UT3UDX

У меня было два дуплексных MMDVM(ADF7021) модема с Aliexpress, один MMDVM контроллер, две GM340, одна из которых нерабочая, две Raspberry PI#3 и  целое море разноцветных dupont-коннекторов - и не то, чтобы всё это было категорически необходимо для постройки усиленного хотспота, но если уж начал собирать коллекцию, то к делу надо подходить серьёзно.

Когда один контроллер и одна плата Raspberry заработали в составе репитера - освободился один MMDVM модем, еще одну Raspberry для него покупать не хотелось, и я решил прошить его прошивкой, которая позволяет использовать его через USB - другими словами подключить его к любому лэптопу, на котором можно запустить MMDVMHost.

Проблема в том, что я его прошил нужной прошивкой, но он не виден как USB устройство

Конфиг

Код: [Select]
root@pi-star-second-floor(rw):MMDVM_HS# cat Config.h | grep -v "//" | grep -v "^$"

#if !defined(CONFIG_H)
#define  CONFIG_H
#define MMDVM_HS_DUAL_HAT_REV10
#define ENABLE_ADF7021
 #define DUPLEX
#define ADF7021_14_7456
#define AD7021_GAIN_AUTO
#define STM32_USART1_HOST
#define I2C_ADDR 0x22
#define ENABLE_SCAN_MODE
#define SEND_RSSI_DATA
#define SERIAL_REPEATER
#define LONG_USB_RESET
#define ENABLE_DEBUG
#endif

Собираю

Код: [Select]
root@pi-star-second-floor(rw):MMDVM_HS# make
echo "#define GITVERSION \"5cbaf98\"" > GitVersion.h
arm-none-eabi-g++ obj_f1/DMRDMOTX.o obj_f1/IOArduino.o obj_f1/POCSAGTX.o obj_f1/MMDVM_HS.o obj_f1/SerialPort.o obj_f1/DStarRX.o obj_f1/IO.o obj_f1/YSFTX.o obj_f1/DStarTX.o obj_f1/DMRIdleRX.o obj_f1/P25TX.o obj_f1/BitRB.o obj_f1/NXDNRX.o obj_f1/Utils.o obj_f1/P25RX.o obj_f1/IOSTM.o obj_f1/SerialRB.o obj_f1/YSFRX.o obj_f1/DMRDMORX.o obj_f1/SerialArduino.o obj_f1/DMRSlotRX.o obj_f1/DMRRX.o obj_f1/CalDMR.o obj_f1/DMRSlotType.o obj_f1/ADF7021.o obj_f1/NXDNTX.o obj_f1/CalRSSI.o obj_f1/I2CHost.o obj_f1/SerialSTM.o obj_f1/DMRTX.o obj_f1/CWIdTX.o obj_f1/stm32f10x_i2c.o obj_f1/stm32f10x_rcc.o obj_f1/stm32f10x_usart.o obj_f1/misc.o obj_f1/stm32f10x_iwdg.o obj_f1/stm32f10x_gpio.o obj_f1/stm32f10x_exti.o obj_f1/system_stm32f10x.o obj_f1/startup_stm32f10x.o  -Os --specs=nano.specs --specs=nosys.specs -T normal.ld -mcpu=cortex-m3 -march=armv7-m -mthumb -Wall -Wextra  -o bin/mmdvm_f1.elf
Linking complete!

arm-none-eabi-size bin/mmdvm_f1.elf
   text    data     bss     dec     hex filename
  56816     176   11192   68184   10a58 bin/mmdvm_f1.elf
arm-none-eabi-objcopy -O ihex bin/mmdvm_f1.elf bin/mmdvm_f1.hex
Objcopy from ELF to IHEX complete!

arm-none-eabi-objcopy -O binary bin/mmdvm_f1.elf bin/mmdvm_f1.bin
Objcopy from ELF to BINARY complete!



Замыкаю перемычку BOOT1

 

заливаю на плату
Код: [Select]
root@pi-star(rw):MMDVM_HS# sudo make mmdvm_hs_dual_hat
/usr/local/bin/stm32flash -v -w bin/mmdvm_f1.bin -g 0x0 -R -i 20,-21,21:-20,21 /dev/ttyAMA0
stm32flash 0.6

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Interface serial_posix: 57600 8E1

GPIO sequence start
 setting gpio 20 to 1... OK
 delay 100000 us
 setting gpio 21 to 0... OK
 delay 100000 us
 setting gpio 21 to 1... OK
GPIO sequence end

Version      : 0x22
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0410 (STM32F10xxx Medium-density)
- RAM        : Up to 20KiB  (512b reserved by bootloader)
- Flash      : Up to 128KiB (size first sector: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB
Write to memory
Erasing memory
Wrote and verified address 0x0800dea0 (100.00%) Done.

Starting execution at address 0x08000000... done.

GPIO sequence start
 setting gpio 20 to 0... OK
 delay 100000 us
 setting gpio 21 to 1... OK
GPIO sequence end


/usr/bin/stm32flash -v -w bin/mmdvm_f1.bin -g 0x0 -R -i 20,-21,21:-20,21 /dev/ttyAMA0
stm32flash 0.5

http://stm32flash.sourceforge.net/

Using Parser : Raw BINARY
Interface serial_posix: 57600 8E1
Version      : 0x22
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0410 (STM32F10xxx Medium-density)
- RAM        : 20KiB  (512b reserved by bootloader)
- Flash      : 128KiB (size first sector: 4x1024)
- Option RAM : 16b
- System RAM : 2KiB
Write to memory
Erasing memory
Wrote and verified address 0x0800dea0 (100.00%) Done.

Starting execution at address 0x08000000... done.


подключаю через USB порт - дальше оно не определяется ничем, ни устройство не появляется в /dev/ - ничего

перепрошивка на обычную прошивку ( GPIO ) работает, но мне нужно USB

root@pi-star-second-floor(rw):pi-star# pistar-findmodem
Detected MMDVM_HS (GPIO): /dev/ttyAMA0 (MMDVM_HS_Dual_Hat-v1.5.2 20201108 14.7456MHz dual ADF7021 FW by CA6JAU GitID #5cbaf98FF36066E3937554157011124)



Вопрос - кто-то перепрошивал подобную плату , устанавливал загрузчик для работы без RaspberryPi ?
 
Користувачі, які подякували цьому постові: UT4ULP