No luck flashing GL300A P00928.03 USB board via FTDI

Joined
Jul 12, 2018
Messages
8
Reaction score
0
Age
43
Hello

I'm trying to recover my P00928.03 USB board in my GL300A controller. I'm giving it one last chance. I have read the different threads in this forum and articles on GitHub about this subject.

This thread has helped me in particular: GL300A Remote Controller help Excellent help by quaddamage

My issue is that I get gibberish when connected to the P00928.03 board. I use PUTTY to connect to COM1, with settings 115200 8N1. I can see a constant stream of gibberish, which is supposedly the "BOOTME", but its scrambled. I have had a scope on the TX and the shortest cycle meassures 8.8uS, which calculated gives
upload_2018-7-16_1-28-52.gif
= 113636 Baud

I have never had this issue before, connecting via serial connections. I have tried all sorts of changing baudrate. All help is highly appriciated.

Thanks in advance.
 
Since you get some output, your connection must be correct. Though make sure the cable isn't too long.
Since you checked various baudrates already, I will assume transmission parameters are not the cause.
Since you use PuTTY, the terminal program shouldn't be the culprit (some terminal apps are known to cause such issues).

I would say your USB-to-TTL is most likely the issue - it doesn't seem to be compatible with that specific UART. Make sure you use 3.3V USB-to-TTL, or with a jumper to choose between 3.3 and 5 V. Some claim to be "universal" but have no jumper selector. Those usually does not work properly.
 
Since you get some output, your connection must be correct. Though make sure the cable isn't too long.
Since you checked various baudrates already, I will assume transmission parameters are not the cause.
Since you use PuTTY, the terminal program shouldn't be the culprit (some terminal apps are known to cause such issues).

I would say your USB-to-TTL is most likely the issue - it doesn't seem to be compatible with that specific UART. Make sure you use 3.3V USB-to-TTL, or with a jumper to choose between 3.3 and 5 V. Some claim to be "universal" but have no jumper selector. Those usually does not work properly.
Ok. Thanks. I will have to try another USB to TTL adapter then. All connections are held short and Putty has never let me down before.
 
OK. I got the FTDI adapter. Flashed the board with M1300 firmware succesfully. However, my RC is constantly beeping now, and still no USB connection with my phone/tablet.

This is the entire boot sequence:
Code:
DM36x initialization passed!
UBL Product Vesion : DJI-NOHDMI-WM610-UBL-1.0-rc0(2015-01-13)
Dji UBL Version: 1.51(Jan 13 2015 - 16:42:11)
Booting Catalog Boot Loader
BootMode = NAND
Starting NAND Copy...
Valid magicnum, 0xA1ACED66, found in block 0x00000019.
   DONE
Jumping to entry point at 0x81080000.

U-Boot Product Vesion : DJI-WM610-Uboot-1.0-rc4(2014-08-13)
U-Boot 2010.12-rc2-svn-Dji (Aug 13 2014 - 10:55:23)
Cores: ARM 297 MHz
DDR:   270 MHz
I2C:   ready
DRAM:  128 MiB
NAND:  128 MiB
Bad block table found at page 65472, version 0x01
Bad block table found at page 65408, version 0x01
*** Warning - bad CRC, using default environment

Net:   Ethernet PHY: GENERIC @ 0xff
DaVinci-EMAC
Press ESC to abort autoboot in 1 seconds

Loading from nand0, offset 0x4a0000
** Unknown image type
Wrong Image Format for bootm command
ERROR: can't get kernel image!

Loading from nand0, offset 0x900000
   Image Name:   Linux-2.6.32.17-davinci1
   Created:      2015-02-12   3:09:59 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3665856 Bytes = 3.5 MiB
   Load Address: 80008000
   Entry Point:  80008000
## Booting kernel from Legacy Image at 80700000 ...
   Image Name:   Linux-2.6.32.17-davinci1
   Created:      2015-02-12   3:09:59 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3665856 Bytes = 3.5 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Loading Kernel Image ... OK
OK

Starting kernel ...

[    0.000000] Kernel Product Vesion : DJI-GRC-Kernel-1.0-rc8(2014-11-21)
[    0.000000] Linux version 2.6.32.17-davinci1 (u@dji) (gcc version 4.3.3 (Sour                                                                                                                                                             cery G++ Lite 2009q1-203) ) #1 PREEMPT Thu Feb 12 11:09:57 HKT 2015
[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] Machine: DaVinci DM36x EVM
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] DaVinci dm36x_rev1.2 variant 0x8
[    0.000000] Built 1 zonelists in Zone order, mobility grouping off.  Total pa                                                                                                                                                             ges: 12192
[    0.000000] Kernel command line: console=ttyS0,115200n8 rw dm365_imp.oper_mod                                                                                                                                                             e=0 video=davincifb:vid0=0,0:vid1=0,0:osd0=0,0:osd1=0,0 mem=48MB davinci_enc_mng                                                                                                                                                             r.ch0_output=COMPOSITE davinci_enc_mngr.ch0_mode=pal ubi.mtd=2,2048 root=ubi0:ro                                                                                                                                                             otfs rootfstype=ubifs ip=off lpj=1077248
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Memory: 48MB = 48MB total
[    0.000000] Memory: 44836KB available (3304K code, 409K data, 108K init, 0K h                                                                                                                                                             ighmem)
[    0.000000] SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, N                                                                                                                                                             odes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] NR_IRQS:245
[    0.000000] Console: colour dummy device 80x30
[    0.000000] Calibrating delay loop (skipped) preset value.. 215.44 BogoMIPS (                                                                                                                                                             lpj=1077248)
[    0.000000] Mount-cache hash table entries: 512
[    0.000000] CPU: Testing write buffer coherency: ok
[    0.000000] DaVinci: 8 gpio irqs
[    0.000000] NET: Registered protocol family 16
[    0.100000] bio: create slab <bio-0> at 0
[    0.110000] SCSI subsystem initialized
[    0.110000] usbcore: registered new interface driver usbfs
[    0.110000] usbcore: registered new interface driver hub
[    0.110000] usbcore: registered new device driver usb
[    0.120000] cfg80211: Using static regulatory domain info
[    0.120000] cfg80211: Regulatory domain: US
[    0.120000]  (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp                                                                                                                                                             )
[    0.120000]  (2402000 KHz - 2472000 KHz @ 40000 KHz), (600 mBi, 2700 mBm)
[    0.120000]  (5170000 KHz - 5190000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[    0.120000]  (5190000 KHz - 5210000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[    0.120000]  (5210000 KHz - 5230000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[    0.120000]  (5230000 KHz - 5330000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[    0.120000]  (5735000 KHz - 5835000 KHz @ 40000 KHz), (600 mBi, 3000 mBm)
[    0.130000] cfg80211: Calling CRDA for country: US
[    0.130000] Switching to clocksource timer0_1
[    0.130000] musb_hdrc: version 6.0, pio, host, debug=0
[    0.160000] musb_hdrc: USB Host mode controller at fec64000 using PIO, IRQ 12
[    0.160000] musb_hdrc musb_hdrc: MUSB HDRC host driver
[    0.160000] musb_hdrc musb_hdrc: new USB bus registered, assigned bus number                                                                                                                                                              1
[    0.160000] usb usb1: configuration #1 chosen from 1 choice
[    0.160000] hub 1-0:1.0: USB hub found
[    0.160000] hub 1-0:1.0: 1 port detected
[    0.160000] NET: Registered protocol family 2
[    0.160000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.160000] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
[    0.160000] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
[    0.160000] TCP: Hash tables configured (established 2048 bind 2048)
[    0.160000] TCP reno registered
[    0.160000] NET: Registered protocol family 1
[    0.160000] RPC: Registered udp transport module.
[    0.160000] RPC: Registered tcp transport module.
[    0.160000] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.170000] kfile init
[    0.170000] JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    0.170000] msgmni has been set to 87
[    0.180000] alg: No test for stdrng (krng)
[    0.180000] io scheduler noop registered (default)
[    0.260000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.260000] serial8250.0: ttyS0 at MMIO 0x1c20000 (irq = 40) is a 16550A
[    0.630000] console [ttyS0] enabled
[    0.640000] serial8250.0: ttyS1 at MMIO 0x1d06000 (irq = 41) is a 16550A
[    0.650000] brd: module loaded
[    0.660000] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xf1 (Micron NAND 12                                                                                                                                                             8MiB 3,3V 8-bit)
[    0.670000] Creating 4 MTD partitions on "davinci_nand.0":
[    0.670000] 0x000000000000-0x0000004a0000 : "bootloader"
[    0.680000] 0x0000004a0000-0x000000e00000 : "kernel"
[    0.690000] 0x000000e00000-0x000007f00000 : "filesystem"
[    0.700000] 0x000000000000-0x000008000000 : "all"
[    0.710000] davinci_nand davinci_nand.0: controller rev. 2.3
[    0.720000] UBI: attaching mtd2 to ubi0
[    0.720000] UBI: physical eraseblock size:   131072 bytes (128 KiB)
[    0.730000] UBI: logical eraseblock size:    126976 bytes
[    0.730000] UBI: smallest flash I/O unit:    2048
[    0.740000] UBI: sub-page size:              512
[    0.740000] UBI: VID header offset:          2048 (aligned 2048)
[    0.750000] UBI: data offset:                4096
[    0.920000] usb 1-1: new high speed USB device using musb_hdrc and address 2
[    1.070000] usb 1-1: configuration #1 chosen from 1 choice
[    1.070000] hub 1-1:1.0: USB hub found
[    1.090000] hub 1-1:1.0: 2 ports detected
[    1.320000] UBI: attached mtd2 to ubi0
[    1.320000] UBI: MTD device name:            "filesystem"
[    1.330000] UBI: MTD device size:            113 MiB
[    1.330000] UBI: number of good PEBs:        904
[    1.340000] UBI: number of bad PEBs:         0
[    1.340000] UBI: max. allowed volumes:       128
[    1.350000] UBI: wear-leveling threshold:    4096
[    1.350000] UBI: number of internal volumes: 1
[    1.360000] UBI: number of user volumes:     1
[    1.360000] UBI: available PEBs:             0
[    1.360000] UBI: total number of reserved PEBs: 904
[    1.370000] UBI: number of PEBs reserved for bad PEB handling: 9
[    1.380000] UBI: max/mean erase counter: 43/1
[    1.380000] UBI: image sequence number: 586079779
[    1.380000] UBI: background thread "ubi_bgt0d" started, PID 272
[    1.390000] console [netcon0] enabled
[    1.400000] netconsole: network logging started
[    1.400000] Initializing USB Mass Storage driver...
[    1.410000] usbcore: registered new interface driver usb-storage
[    1.410000] USB Mass Storage support registered.
[    1.420000] usbcore: registered new interface driver usbtest
[    1.430000] i2c /dev entries driver
[    1.430000] watchdog watchdog: heartbeat 1 sec
[    1.440000] TCP cubic registered
[    1.440000] NET: Registered protocol family 17
[    1.450000] lib80211: common routines for IEEE802.11 drivers
[    1.450000] ksocket init
[    1.490000] encrypt device:atsha204 found
[    1.620000] mfi_i2c_client addr:17
[    1.620000] Clocks: disable unused vpss_master
[    1.620000] Clocks: disable unused mmcsd0
[    1.620000] Clocks: disable unused mmcsd1
[    1.620000] Clocks: disable unused spi0
[    1.620000] Clocks: disable unused spi1
[    1.620000] Clocks: disable unused spi2
[    1.620000] Clocks: disable unused spi3
[    1.620000] Clocks: disable unused spi4
[    1.620000] Clocks: disable unused pwm0
[    1.620000] Clocks: disable unused pwm1
[    1.620000] Clocks: disable unused pwm2
[    1.620000] Clocks: disable unused pwm3
[    1.620000] Clocks: disable unused timer1
[    1.620000] Clocks: disable unused timer3
[    1.620000] Clocks: disable unused emac
[    1.620000] Clocks: disable unused voice_codec
[    1.620000] Clocks: disable unused asp0
[    1.620000] Clocks: disable unused rto
[    1.620000] Clocks: disable unused mjcp
[    1.700000] davinci_emac_probe: using random MAC addr: 56:bc:c5:43:2c:e0
[    1.710000] emac-mii: probed
[    1.760000] UBIFS: recovery needed
[    1.840000] UBIFS: recovery completed
[    1.840000] UBIFS: mounted UBI device 0, volume 0, name "rootfs"
[    1.850000] UBIFS: file system size:   110342144 bytes (107756 KiB, 105 MiB,                                                                                                                                                              869 LEBs)
[    1.860000] UBIFS: journal size:       9023488 bytes (8812 KiB, 8 MiB, 72 LEB                                                                                                                                                             s)
[    1.860000] UBIFS: media format:       w4/r0 (latest is w4/r0)
[    1.870000] UBIFS: default compressor: lzo
[    1.870000] UBIFS: reserved for root:  0 bytes (0 KiB)
[    1.880000] VFS: Mounted root (ubifs filesystem) on device 0:13.
[    1.890000] Freeing init memory: 108K

Filesystem Product Vesion : DJI-Filesystem-1.0-rc2
Runing /etc/init.d/rcS
[    4.030000] UBI: scrubbed PEB 37 (LEB 0:35), data moved to PEB 423
[    4.120000] CMEMK module: built on Jul 30 2014 at 10:21:45
[    4.120000]   Reference Linux version 2.6.32
[    4.140000]   File /home/u/work/svn/dec_grc/src/dvsdk/dvsdk_dm368_4_02_00_06/                                                                                                                                                             linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
[    4.160000] allocated heap buffer 0xc7000000 of size 0x4400000
[    4.190000] heap fallback enabled - will try heap if pool buffer is not avail                                                                                                                                                             able
[    4.190000] CMEM Range Overlaps Kernel Physical - allowing overlap
[    4.210000] CMEM phys_start (0x1000) overlaps kernel (0x80000000 -> 0x8300000                                                                                                                                                             0)
[    4.220000] cmemk initialized
[    4.250000] IRQK module: built on Jul 30 2014 at 10:21:09
[    4.270000]   Reference Linux version 2.6.32
[    4.270000]   File /home/u/work/svn/dec_grc/src/dvsdk/dvsdk_dm368_4_02_00_06/                                                                                                                                                             linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/irq/src/module/irqk.c
[    4.290000] irqk initialized
[    4.360000] EDMAK module: built on Jul 30 2014 at 10:19:34
[    4.380000]   Reference Linux version 2.6.32
[    4.380000]   File /home/u/work/svn/dec_grc/src/dvsdk/dvsdk_dm368_4_02_00_06/                                                                                                                                                             linuxutils_2_26_01_02/packages/ti/sdo/linuxutils/edma/src/module/edmak.c
[    4.660000] exFAT: Version 1.2.9
settime failed
[    9.380000] usb aoa module init ok
[    9.510000] usbcore: registered new interface driver usb_applehid
[    9.510000] usb applehid module init ok
[    9.600000] usbcore: registered new interface driver usb_68013
[    9.610000] usb 68013 module init ok
sulogin: no password entry for root
login[404]: root login on 'ttyS0'
#Process /etc/profile...
root@Dji-Pro:~# encrypt check ok
init  libusb successed!!!
usbmuxd disabled
usbsocket_init OK
open /dev/hdmi-status fail!
[   10.270000] usbcore: registered new interface driver usb_aoa
usbsocket_create_handle ok, port:22345, bCanRecv:1
usbsocket_create_handle ok, port:22346, bCanRecv:0
watchdog timeout:5
[   10.310000] aoa start ok
DummyRead68013 0.000000kb
umount: can't umount /mnt/usb: No such file or directory
rmdir: '/mnt/usb': No such file or directory
DummyRead68013 0.000000kb
DummyRead68013 0.000000kb
DummyRead68013 0.000000kb
DummyRead68013 0.000000kb
DummyRead68013 0.000000kb
encrypt chip exist
DummyRead68013 0.000000kb
 
OK. I got the FTDI adapter. Flashed the board with M1300 firmware succesfully. However, my RC is constantly beeping now, and still no USB connection with my phone/tablet.

Code:
[...]
Press ESC to abort autoboot in 1 seconds

Loading from nand0, offset 0x4a0000
** Unknown image type
Wrong Image Format for bootm command
ERROR: can't get kernel image!

Loading from nand0, offset 0x900000
   Image Name:   Linux-2.6.32.17-davinci1
   Created:      2015-02-12   3:09:59 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3665856 Bytes = 3.5 MiB
   Load Address: 80008000
   Entry Point:  80008000
## Booting kernel from Legacy Image at 80700000 ...
[...]

You are booting from recovery kernel. You need to reflash primary kernel.

For the beeping - I don't know. Might be unrelated problem.
 
I tried following the how to flash step by step. Does it say something about primary kernel and how to boot this? Procedure, parameters, etc? Or can you please advise?

There are quite a lot of threads about this issue.

Try looking at the DaVinci spoiler section in this post:
Fix no video feed / black screen / no image transmission / no FPV on Ph3 Pro

Details on flashing are explained in the links within spoiler; kernel is explained in middle one - on dji-firmware-tools wiki.
 
Thanks for your quick reply. I have one issue which I haven't been able to figure out. I might be using the wrong flash files because of this issue, as I found them attached to another forum thread.

When browsing through the firmware CSV, I downloaded the latest version, as mentioned on the M1300 page. However, when I try to decrypt using openssl, using linux on my RPI, I get a "bad magic number". I can't seem to get the flash files available on github decrypted.

Any advise on this issue? I would like to be sure that I use the correct flash files.

Thanks in advance.
 
When browsing through the firmware CSV, I downloaded the latest version, as mentioned on the M1300 page.

I don't have the latest firmware installed, so I personally never tried that version. Mine is from early 2016, can't remember the number.

when I try to decrypt using openssl, using linux on my RPI, I get a "bad magic number". I can't seem to get the flash files available on github decrypted.

I didn't had such issue.. can't help much.
Looking at the CSV, C1_FW versions does not seem to be very consequential there.. you likely got a wrong file.
I probably used C1_FW_V01.05.0072, but can't tell for sure.
 
Status: Got everything flashed as guided here. The board booted with primary kernel, succes!! Mounted the board into RC - still no USB connection. Connected the board via FTDI once again - now constant BOOTME messages. Nothing helps to stop this, not even grounding BTSELV, as mentioned here. Re-flashing using TI utility doesn't change anything - it flashes succesfully, then BOOTME messages appear once again, even after all has been powered off and disconnected properly for 10 min. Assuming that the board is dead now!! About to throw the whole **** thing into the bin...
 
It worked before flashing kernel.. maybe overheated while flashing it? Have you tried measuring BTSEL pin with a multimeter?
 
You're probably right on the heat issue. No I haven't measured BTSEL, but it's probably in a constant pull up state from now on. All though forcing a pull down didn't help?

I've discarded the project. Obviously these old A models have issues. I'll be looking for a newer B or C model.

Thanks for your help!
 

Recent Posts

Members online

No members online now.

Forum statistics

Threads
143,087
Messages
1,467,528
Members
104,965
Latest member
cokersean20