lightbridge firmware PROBLEM (and solution) - firmware version not found by dji assistant tool

Hi i flashed the phantom2 vision fc200 camera but it wasn't good, what image file did you upload to it?

it does not work: sfh_DM36x.exe -nandflash -v -p "COM8" ubl1_editedByGaucho.img u-boot_modifiedByGaucho.img

you have some working img file for you?

I have same problem with Phantom 2 Vision - FC200 camera. If I connect UART Rx TX to Board #3 and run TeraTerm got this msg:

DM36x initialization passed!
TI UBL Version: 1.50
Booting Catalog Boot Loader
BootMode = NAND
Starting NAND Copy...
Valid magicnum, 0xA1ACED66, found in block 0x00000019.
Valid magicnum, 0xA1ACED66, found in block 0x0000001C.
Valid magicnum, 0xA1ACED66, found in block 0x0000001F.
Valid magicnum, 0xA1ACED66, found in block 0x00000022.
Valid magicnum, 0xA1ACED66, found in block 0x00000025.
Valid magicnum, 0xA1ACED66, found in block 0x00000028.
Valid magicnum, 0xA1ACED66, found in block 0x0000002B.
Valid magicnum, 0xA1ACED66, found in block 0x0000002E.
No valid boot image found!
NAND Boot failed.
Aborting...

But there is no chance to run BOOTME on this board. How to get BOOTME state?
 
Finally got BOOTME msg and after flashing here is report:

BOOTME BOOTME BOOTME BOOTME BOOTME BOOTMEřDM36x initialization passed!
UBL Product Vesion : DJI-GSP-UBL-1.0-rc10(2014-08-15)
Dji UBL Version: 1.51(Aug 15 2014 - 17:05:12)
Booting Catalog Boot Loader
BootMode = NAND
Starting NAND Copy...
Valid magicnum, 0xA1ACED66, found in block 0x00000019.
Uboot Checksum:0x7E25B44B
Actua Checksum:0x7E25B44B

U-Boot Product Vesion : DJI-GSP-Uboot-1.0-rc4(2014-07-23)
U-Boot 2010.12-rc2-svn-Dji (Jul 23 2014 - 11:14:40)
Cores: ARM 432 MHz
DDR: 297 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
** Unknown image type
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Dji-Pro #




So, still no working .IMG for FC200 camera?
 
So, still no working .IMG for FC200 camera?

The O-Gs from Github have a lot of old firmwares. You can ask them - they have a Slack group.
Extracting kernel from it would need similar steps to the ones from Phantom 3 described here:
o-gs wiki: Firmware module m0800 structure

And if that won't work - maybe just using kernel from Ph3 would be ok?

For flashing the whole IMG - don't do that; that will damage AT88 data and root file system. You're missing kernel only.
 
The O-Gs from Github have a lot of old firmwares. You can ask them - they have a Slack group.
Extracting kernel from it would need similar steps to the ones from Phantom 3 described here:
o-gs wiki: Firmware module m0800 structure

And if that won't work - maybe just using kernel from Ph3 would be ok?

For flashing the whole IMG - don't do that; that will damage AT88 data and root file system. You're missing kernel only.

Hmm...You mean that I need to find working DaVinci Linux kernel as OS ( at adress 0x900000 uImage_recovery, not included in FW updates; the Linux Kernel which is used when primary kernel gets corrupted ) and flash it with command "sfh_DM36x.exe -nandflash -v -p "COMXX" example.img"?
My working CPU frequency is 432MHz, so it must be DM386.
 
Hmm...You mean that I need to find working DaVinci Linux kernel

Yes.

kernel as OS

Kernel is integral part of every OS, though we usually can't say kernel is the OS. DaVinci Linux is an OS, and it uses Linux kernel.

and flash it with command "sfh_DM36x.exe -nandflash -v -p "COMXX" example.img"?

I don't think `sfh_DM36x` can be used to write anything beyond bootloader. But maybe I'm wrong - you could look in its source and check what it can actually do.
I never tried that. If you somehow could provide it with the destination offset, it would work.

Here's a detailed guide I made for a different board which also has DaVinci:
Fixing flash programming in DM365 chip within GL300 remote controller
 
Yes.



Kernel is integral part of every OS, though we usually can't say kernel is the OS. DaVinci Linux is an OS, and it uses Linux kernel.



I don't think `sfh_DM36x` can be used to write anything beyond bootloader. But maybe I'm wrong - you could look in its source and check what it can actually do.
I never tried that. If you somehow could provide it with the destination offset, it would work.

Here's a detailed guide I made for a different board which also has DaVinci:
Fixing flash programming in DM365 chip within GL300 remote controller
Many thanks for great info. I will try to find working kernel for this board. If you think or/and have kernel for P3 with smilar HW, pls post it here, so I can try.
 
I just try to flash with gl300_dm365_recovery_kernel using ZMODEM and here is result:

DM36x initialization passed!
UBL Product Vesion : DJI-GSP-UBL-1.0-rc10(2014-08-15)
Dji UBL Version: 1.51(Aug 15 2014 - 17:05:12)
Booting Catalog Boot Loader
BootMode = NAND
Starting NAND Copy...
Valid magicnum, 0xA1ACED66, found in block 0x00000019.
Uboot Checksum:0x7E25B44B
Actua Checksum:0x7E25B44B

U-Boot Product Vesion : DJI-GSP-Uboot-1.0-rc4(2014-07-23)
U-Boot 2010.12-rc2-svn-Dji (Jul 23 2014 - 11:14:40)
Cores: ARM 432 MHz
DDR: 297 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 (Sourcery 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 pages: 12192
[ 0.000000] Kernel command line: console=ttyS0,115200n8 rw dm365_imp.oper_mode=0 video=davincifb:vid0=0,10K:vid1=0,10K:eek:sd0=1920x1080X16,8100K mem=48MB davinci_enc_mngr.ch0_out
[ 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 highmem)
[ 0.000000] SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=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.080000] bio: create slab <bio-0> at 0
[ 0.080000] SCSI subsystem initialized
[ 0.090000] usbcore: registered new interface driver usbfs
[ 0.090000] usbcore: registered new interface driver hub
[ 0.090000] usbcore: registered new device driver usb
[ 0.100000] cfg80211: Using static regulatory domain info
[ 0.100000] cfg80211: Regulatory domain: US
[ 0.100000] (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 0.100000] (2402000 KHz - 2472000 KHz @ 40000 KHz), (600 mBi, 2700 mBm)
[ 0.100000] (5170000 KHz - 5190000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[ 0.100000] (5190000 KHz - 5210000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[ 0.100000] (5210000 KHz - 5230000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[ 0.100000] (5230000 KHz - 5330000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[ 0.100000] (5735000 KHz - 5835000 KHz @ 40000 KHz), (600 mBi, 3000 mBm)
[ 0.100000] cfg80211: Calling CRDA for country: US
[ 0.100000] Switching to clocksource timer0_1
[ 0.110000] musb_hdrc: version 6.0, pio, host, debug=0
[ 0.130000] musb_hdrc: USB Host mode controller at fec64000 using PIO, IRQ 12
[ 0.130000] musb_hdrc musb_hdrc: MUSB HDRC host driver
[ 0.130000] musb_hdrc musb_hdrc: new USB bus registered, assigned bus number 1
[ 0.130000] usb usb1: configuration #1 chosen from 1 choice
[ 0.130000] hub 1-0:1.0: USB hub found
[ 0.130000] hub 1-0:1.0: 1 port detected
[ 0.130000] NET: Registered protocol family 2
[ 0.130000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.130000] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
[ 0.130000] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.130000] TCP: Hash tables configured (established 2048 bind 2048)
[ 0.130000] TCP reno registered
[ 0.130000] NET: Registered protocol family 1
[ 0.130000] RPC: Registered udp transport module.
[ 0.130000] RPC: Registered tcp transport module.
[ 0.130000] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.140000] kfile init
[ 0.140000] JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[ 0.140000] msgmni has been set to 87
[ 0.150000] alg: No test for stdrng (krng)
[ 0.150000] io scheduler noop registered (default)
[ 0.210000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[ 0.210000] serial8250.0: ttyS0 at MMIO 0x1c20000 (irq = 40) is a 16550A
[ 0.580000] davinci_interrupt 368: VBUS error workaround (delay coming)
[ 0.590000] console [ttyS0] enabled
[ 0.590000] serial8250.0: ttyS1 at MMIO 0x1d06000 (irq = 41) is a 16550A
[ 0.610000] brd: module loaded
[ 0.610000] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xf1 (Micron NAND 128MiB 3,3V 8-bit)
[ 0.620000] Creating 4 MTD partitions on "davinci_nand.0":
[ 0.630000] 0x000000000000-0x0000004a0000 : "bootloader"
[ 0.640000] 0x0000004a0000-0x000000e00000 : "kernel"
[ 0.650000] 0x000000e00000-0x000007f00000 : "filesystem"
[ 0.650000] 0x000000000000-0x000008000000 : "all"
[ 0.660000] davinci_nand davinci_nand.0: controller rev. 2.3
[ 0.670000] UBI: attaching mtd2 to ubi0
[ 0.680000] UBI: physical eraseblock size: 131072 bytes (128 KiB)
[ 0.680000] UBI: logical eraseblock size: 126976 bytes
[ 0.690000] UBI: smallest flash I/O unit: 2048
[ 0.690000] UBI: sub-page size: 512
[ 0.700000] UBI: VID header offset: 2048 (aligned 2048)
[ 0.700000] UBI: data offset: 4096
[ 0.710000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 0:0, read 64 bytes
[ 0.720000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 0:2048, read 512 bytes
[ 0.730000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 1:0, read 64 bytes
[ 0.740000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 1:2048, read 512 bytes
[ 0.750000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 2:0, read 64 bytes
[ 0.760000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 2:2048, read 512 bytes
[ 0.770000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 3:0, read 64 bytes
[ 0.770000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 3:2048, read 512 bytes
[ 0.780000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 4:0, read 64 bytes
[ 0.790000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 4:2048, read 512 bytes
[ 0.800000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 5:0, read 64 bytes
[ 0.810000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 5:2048, read 512 bytes
[ 0.820000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 6:0, read 64 bytes
[ 0.830000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 6:2048, read 512 bytes
[ 0.840000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 7:0, read 64 bytes
[ 0.850000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 7:2048, read 512 bytes
[ 0.860000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 8:0, read 64 bytes
[ 0.870000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 8:2048, read 512 bytes
[ 0.880000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 9:0, read 64 bytes
[ 0.890000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 9:2048, read 512 bytes
[ 0.900000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 10:0, read 64 bytes
[ 0.910000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 11:0, read 64 bytes
[ 0.920000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 11:2048, read 512 bytes
[ 0.930000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 12:0, read 64 bytes
[ 0.930000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 12:2048, read 512 bytes
[ 0.940000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 13:0, read 64 bytes
[ 0.950000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 13:2048, read 512 bytes
[ 0.960000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 14:0, read 64 bytes
[ 0.970000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 14:2048, read 512 bytes
[ 0.980000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 15:0, read 64 bytes
[ 0.990000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 15:2048, read 512 bytes
[ 1.000000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 16:0, read 64 bytes
[ 1.010000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 16:2048, read 512 bytes
[ 1.020000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 17:0, read 64 bytes
[ 1.030000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 17:2048, read 512 bytes
[ 1.040000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 18:0, read 64 bytes
[ 1.050000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 18:2048, read 512 bytes
[ 1.060000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 19:0, read 64 bytes
[ 1.070000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 19:2048, read 512 bytes
[ 1.080000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 20:0, read 64 bytes
[ 1.090000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 20:2048, read 512 bytes
[ 1.100000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 21:0, read 64 bytes
[ 1.110000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 21:2048, read 512 bytes
[ 1.120000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 22:0, read 64 bytes
[ 1.120000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 22:2048, read 512 bytes
[ 1.130000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 23:0, read 64 bytes
[ 1.140000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 23:2048, read 512 bytes
[ 1.150000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 24:0, read 64 bytes
[ 1.160000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 24:2048, read 512 bytes
[ 1.170000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 25:0, read 64 bytes
[ 1.180000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 25:2048, read 512 bytes
[ 1.190000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 26:0, read 64 bytes
[ 1.200000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 26:2048, read 512 bytes
[ 1.210000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 27:0, read 64 bytes
[ 1.220000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 27:2048, read 512 bytes
[ 1.230000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 28:0, read 64 bytes
[ 1.240000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 28:2048, read 512 bytes
[ 1.250000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 29:0, read 64 bytes
[ 1.260000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 29:2048, read 512 bytes
[ 1.270000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 30:0, read 64 bytes
[ 1.280000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 30:2048, read 512 bytes
[ 1.290000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 31:0, read 64 bytes
[ 1.300000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 31:2048, read 512 bytes
[ 1.310000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 32:0, read 64 bytes
[ 1.320000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 32:2048, read 512 bytes
[ 1.320000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 33:0, read 64 bytes
[ 1.330000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 33:2048, read 512 bytes
[ 1.340000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 34:0, read 64 bytes
[ 1.350000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 34:2048, read 512 bytes
[ 1.360000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 35:0, read 64 bytes
[ 1.370000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 35:2048, read 512 bytes
[ 1.380000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 36:0, read 64 bytes
[ 1.390000] UBI error: process_eb: bad image sequence number 248044948 in PEB 36, expected 1667215269
[ 1.400000] UBI error: ubi_init: cannot attach mtd2
[ 1.410000] UBI error: ubi_init: UBI error: cannot initialize UBI, error -22
[ 1.420000] console [netcon0] enabled
[ 1.420000] netconsole: network logging started
[ 1.420000] Initializing USB Mass Storage driver...
[ 1.430000] usbcore: registered new interface driver usb-storage
[ 1.440000] USB Mass Storage support registered.
[ 1.440000] usbcore: registered new interface driver usbtest
[ 1.450000] i2c /dev entries driver
[ 1.450000] watchdog watchdog: heartbeat 1 sec
[ 1.460000] TCP cubic registered
[ 1.460000] NET: Registered protocol family 17
[ 1.470000] lib80211: common routines for IEEE802.11 drivers
[ 1.470000] ksocket init
[ 2.400000] encrypt device:at88 found
[ 2.730000] davinci_interrupt 368: VBUS error workaround (delay coming)
[ 4.880000] davinci_interrupt 368: VBUS error workaround (delay coming)
[ 7.030000] davinci_interrupt 368: VBUS error workaround (delay coming)
 
[ 1.370000] UBI error: ubi_io_read: error -74 while reading 512 bytes from PEB 35:2048, read 512 bytes
[ 1.380000] UBI error: ubi_io_read: error -74 while reading 64 bytes from PEB 36:0, read 64 bytes
[ 1.390000] UBI error: process_eb: bad image sequence number 248044948 in PEB 36, expected 1667215269
[ 1.400000] UBI error: ubi_init: cannot attach mtd2
[ 1.410000] UBI error: ubi_init: UBI error: cannot initialize UBI, error -22

Looks like your root file system is damaged as well. I doubt the one from Ph3 will work for you - someone would have to dump the whole NAND on a working device in order to fix such damage.

What happened to that camera? was it left on direct sunlight for a year?
It would seem the whole NAND got de-programmed.
 
Looks like your root file system is damaged as well. I doubt the one from Ph3 will work for you - someone would have to dump the whole NAND on a working device in order to fix such damage.

What happened to that camera? was it left on direct sunlight for a year?
It would seem the whole NAND got de-programmed.

Dji-Pro # nand bad

Device 0 bad blocks:
07f80000
07fa0000
07fc0000
07fe0000
Dji-Pro #
 
Nope. Have you read all the threads you found?



No manufacturer is obliged for lifetime warranty, and every device has expected lifespan. Planned obsolescence is an issue with some companies; it is hard to prove though. But companies avoid it nowadays due to serious image losses. I see no evidence of planned obsolescence in Phantoms; though the NAND chips used are definitely not top tier, and someone might have noticed during development that they're a weak spot.



I don't think we have DJI support folks here. Write on DJI forum.



If you have the ability to fix electronics - diagnose and fix it.
If you don't - pay for a fix or buy a new device.

I made a diagnosis diagram and fix instructions for the issue on Ph3; you can make one for stand-alone lightbridge based on it:


Hey Quaddamage--Thanks for your reply, I think... You used almost as many words as I did but didn't address anything helpful to my post, which remains a valid one. I believe that the point of these forums is exchanging information and being helpful and supportive of each other, is it not? If I wanted to be chided by someone I would have posted some random point, without specifics, that makes it obvious I have not idea what I am talking about. I am pretty sure I credentialized myself as written. I have had every Phantom since the Phantom 1 came out and have customized and enhanced everything throuh the P4, Pro+, Inspire 1 and F450 and 550 among numerous fixed wing autopilot driven long range FPV planes, so save me the newbie dribble.

YES, I've read more threads on this than most any challenge I have tried to address in the past. I never implied DJI had any responsibility for lifetime support nor that DJI could not obsolete anything they want at any time. As a matter of fact they made it known at one point that they had the exprerssed right to obsolete the N1 Video Encoder at any point. QUITE SIMPLY, I AM JUST TRYING TO DO IS CONFIRM WHETHER INDEED THEY HAVE EXERCISED THAT RIGHT. And if I wanted to post this on a DJI forum where they won't address these things directly, I would have done that. I think that is the final baseline point you put spin on that I will waste further bytes complaining about. Oh wait--one more.... My question was not about fixing broken hardware not requisite of your convoluted flowchart for turning a P3 into a time machine but thanks for that work of art. I'll blow that up in print and cover my wall with it so that I might be able to read it. You must be a frustrated organic chemist.

Again, I am talking about the DJI N1 Video Encoder being used with a DJI bird other than the Matrice, which it expressly states (now) it is meant to work with. For many years it also worked with the Inspire 1 and others to allow non DJI cameras. I am not using a Phantom 3. I have three N1 video encoders. I have plenty of triage and technical skills and build most of my own components myself. I cannot, however override that apparently DJI has chosen to disable the ability for the N1 video encoder to transmit video on non-Matrice platforms.

So, my simple question remains here. Has DJI disabled the ability for the N1 video encoder to allow transmission of non DJI video over the Inspire 1 lightbridge platform. None of us who have been pursuing this need to chase if our non DJI cameras will no longer work with Inspire 1's lightbridge and that no downgrade of Inspire 1 drone or remote control will get us back to transmitting non-DJI camera video again.

Thanks to all and best regards!
 
@TXHillCountryFPVer, you are right in that this forum is very friendly and supportive. I hope we'll both be able to keep that state in the posts we write.

This thread is on fixing Lightbridge in a specific case of DaVnci video processor bootloader de-programming. That's why I provided fixing chart. For speculating on DJI actions in regard to N1 Video Encoder, maybe a separate thread would help?
 
Hi guys, Lightbridge 1 Air Unit issue here
when trying to run according to steps on page #1 we get this.. (there is mentioned a line containing Target: CORRUPT - what can this mean??)

Code:
-----------------------------------------------------
  TI Serial Flasher Host Program for DM36x
  (C) 2009, Texas Instruments, Inc.
  Ver. 1.50
-----------------------------------------------------


Flashing NAND with ubl1_editedByGaucho.img and u-boot_modifiedByGaucho.img.


Attempting to connect to device COM2...
Press any key to end this program at any time.


Waiting for the DM36x...
       Target:
       Target:
       Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
       Target:   BEGIN
BEGIN commmand received. Sending CRC table...
100% [                                                              ]
                          CRC table sent....



Waiting for DONE...
       Target: CORRUPT
       Target:  BOOTME

Waiting for the DM36x...
       Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
       Target:  BOOTME

Waiting for the DM36x...
       Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
       Target:  BOOTME

Waiting for the DM36x...
       Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
       Target:  BOOTME

Waiting for the DM36x...
       Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
       Target:  BOOTME

Waiting for the DM36x...
       Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
       Target:  BOOTME

Waiting for the DM36x...
       Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
       Target:  BOOTME

Waiting for the DM36x...
       Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
       Target:  BOOTME

Waiting for the DM36x...
       Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
       Target:  BOOTME

When trying to run without bootpin it gives us this. Appears like the NAND is empty.. what can we try to do?

Code:
Target: DM36x initialization passed!
      Target: UBL Product Vesion : DJI-ABP-SUPER-UBL-1.0-rc0(2014-08-25)
      Target: Dji UBL Version: 1.51(Aug 26 2014 - 16:00:24)
      Target: Booting Catalog Boot Loader
      Target: BootMode = NAND
      Target: Starting NAND Copy...
      Target: Valid magicnum, 0xA1ACED66, found in block 0x00000019.
      Target: Valid magicnum, 0xA1ACED66, found in block 0x0000001B.
      Target: Valid magicnum, 0xA1ACED66, found in block 0x0000001D.
      Target: Valid magicnum, 0xA1ACED66, found in block 0x0000001F.
      Target: No valid boot image found!
      Target: NAND Boot failed.
      Target: Aborting...

THANKS IN ADVANCE
I have the EXACT same issue, 1 old unit and 1 new unit (4yrs old package still sealed) and both have the same error, I will let you know if and when I figure it out.
 
Hi,

i did everything as described in your post to solve the firmware problem by reprogramming the images.
But it failed.
I tried several times, sometimes the CRC is transmitted, one I saw the ULB was transmitted. But usually it comes to this output:
-----------------------------------------------------
TI Serial Flasher Host Program for DM36x
(C) 2009, Texas Instruments, Inc.
Ver. 1.50
-----------------------------------------------------


Flashing NAND with ubl1_editedByGaucho.img and u-boot_modifiedByGaucho.img.


Attempting to connect to device COM11...
Press any key to end this program at any time.


Waiting for the DM36x...
Target:
Target: BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
Target: BEGIN
BEGIN commmand received. Sending CRC table...
100% [ ]
CRC table sent....



Waiting for DONE...
Target: CORRUPT
Target: BOOTME

Waiting for the DM36x...
Target: BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
Target: BOOTME

Waiting for the DM36x...
Target: BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
Target: BOOTME

I tried with to different FTDI units on Vista64 and XP32 systems. All the same results.
The support told me, they will not reapair or exchange the units due to product's end of support is reached.
I need it very urgent in the next week for a cable camera. Otherwise I cannot do my job.

Many thanks for your investigations and further held in advance.
 
Hi,

i did everything as described in your post to solve the firmware problem by reprogramming the images.
But it failed.
I tried several times, sometimes the CRC is transmitted, one I saw the ULB was transmitted. But usually it comes to this output:
-----------------------------------------------------
TI Serial Flasher Host Program for DM36x
(C) 2009, Texas Instruments, Inc.
Ver. 1.50
-----------------------------------------------------
Hi, that's so interesting, you have almost the exact identical situation I do, you weren't the one who bought those off of eBay by any chance are you?
Even when you buy those units off of eBay brand new, sometimes those are worse because they've been sitting for 5 years.
I have literally the exact same issue as you when it comes to trying to flash the board, my log is literally identical.
I'm going to investigate into the situation further as I also need this light bridge for a remote camera, I believe the chip set may need to be swapped and then reflashed.

Flashing NAND with ubl1_editedByGaucho.img and u-boot_modifiedByGaucho.img.


Attempting to connect to device COM11...
Press any key to end this program at any time.


Waiting for the DM36x...
Target:
Target: BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
Target: BEGIN
BEGIN commmand received. Sending CRC table...
100% [ ]
CRC table sent....



Waiting for DONE...
Target: CORRUPT
Target: BOOTME

Waiting for the DM36x...
Target: BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
Target: BOOTME

Waiting for the DM36x...
Target: BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
Target: BOOTME

I tried with to different FTDI units on Vista64 and XP32 systems. All the same results.
The support told me, they will not reapair or exchange the units due to product's end of support is reached.
I need it very urgent in the next week for a cable camera. Otherwise I cannot do my job.

Many thanks for your investigations and further held in advance.
 
I tried several times, sometimes the CRC is transmitted, one I saw the ULB was transmitted. But usually it comes to this output:

Code:
Waiting for the DM36x...
        Target:
        Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
        Target:   BEGIN
BEGIN commmand received. Sending CRC table...
100% [                                                              ]
                           CRC table sent....

Waiting for DONE...
        Target: CORRUPT
        Target:  BOOTME

Either your device does not get enough power, or the cable is too low quality (or just too long).
 
Either your device does not get enough power, or the cable is too low quality (or just too long).
I use a lab power supply with thick cables, the air unit pulls just 250 mA. Or do you mean the TX/RX cables? I was investigating this and tried shorter cables, other GND connection and more.
Investigating the RX TX signals, I found something strange...
DS1Z_QuickPrint1.png

The blue curve (CH2) is what the air unit receives, just after powering up. The big block is generated when receiving the CRC data. But the last 2/3 look strange due to the levels, which are not 0V /3.3V, but low is about 2.2V. Actually I cannot explain. It looks like conflicting outputs on this line. E.g. air unit pulls this line up, FTDI cannot pull down to 0. May somebody can confirm. Or, even better, confirm valid levels when programming succeeds.
 
I use a lab power supply with thick cables, the air unit pulls just 250 mA. Or do you mean the TX/RX cables?

I meant both:

- Power cables (and power source) for amperage (usually people supply voltage from USB). Though if it takes only 250mA, even USB shouldn't be a problem. I am more familiar with Ph3, where power consumption is much higher due to Ambarella sitting on the same line.

- And TX/RX cables can cause transmission issues as well - sometimes people use meter long cables or put them near sources of interference.

But considering your expertise, you've probably already checked that. If the voltage is fluctuating from expected levels, you either have short to ground, or resistance in series.
Or the DM36x chip is a little fried.

I did not heard about the UART line being used for anything internally within any of the DJI boards; the proper DM36x lines are just outputed directly to the RX/TX pads without connecting to anything else, AFAIK.
 
I meant both:

- Power cables (and power source) for amperage (usually people supply voltage from USB). Though if it takes only 250mA, even USB shouldn't be a problem. I am more familiar with Ph3, where power consumption is much higher due to Ambarella sitting on the same line.

- And TX/RX cables can cause transmission issues as well - sometimes people use meter long cables or put them near sources of interference.

But considering your expertise, you've probably already checked that. If the voltage is fluctuating from expected levels, you either have short to ground, or resistance in series.
Or the DM36x chip is a little fried.

I did not heard about the UART line being used for anything internally within any of the DJI boards; the proper DM36x lines are just outputed directly to the RX/TX pads without connecting to anything else, AFAIK.
Thanks for your reply, I am still investigating, it seems there is a solution....
 
Hello

Thank you Gaucho for your work. I allready had to reflash many Phantom 2 Vision+ with no image. It worjed always without any problems.

Actually I need to get my RE700 working again. Until now 3 pieces are bricked thanks to the app update.
Is there a way to flash the wm301_repeater_2g_v1 module from the RE700?
I got one working RE700 and 3 bricked RE700.
I think the ddwrt software wasn't flashed correctly during update and now it won't even boot.

I also use a tplink cpe210 with 24v powermodule and 18650 batteries as alternative. But I can't give this solutions to all my friends ;-) there should be an easier way like the RE700 working again.

Thank you in advance

Fabio
 
Hi guys,

I found a solution (partly by accident) when I was searching a reset pin for the board. Just to eleminate the chance of transient power issues short after powering up the unit.

To solve the "CORRUPT" message described above, I pulled the marked pin to GND by a 8.5k resistor. No warranty that this will work and not damaga your board. But pulling pins to GND via a resistor like this has only low risks.

After that continue with the procedure of goucho. In my case the board completes flashing the images with no issues. My air unit works again as a new one.
Please let me know if somebody can confirm this procedure.
Good luck!

btw: DJI support told me that the unit will not be reapaired or exchanged anymore. Thanks DJI!! Never will buy a faulty expansive product with this kind of support!!

20191024_121159.jpg
 
  • Like
Reactions: quaddamage

Members online

Forum statistics

Threads
143,066
Messages
1,467,352
Members
104,933
Latest member
mactechnic