Solved - Phantom 3a and Android 13 cant get the "camera" button to show.

Code:
 [00013442]========== 2014.01.01 00:00:13 unsynchronized ======
 [00013448]Packet [C:\P3S_FW_V01.01.0008.bin] detected.
 [00013451]Packet upgrade start...

 [00013455]Packet checking...
 [00013458]Done.

 [00013461]Version checking[1]...
 [00013485][03 05] v34.2.0.8 -> v34.2.0.8
 [00013526][03 06] v2.1.6.18 -> v2.1.6.7
 [00013536][04 00] v1.36.0.0 -> v1.36.0.0
 [00013555][09 00] v1.7.0.3 -> v1.7.0.3
 [00013625][11 00] v1.6.0.0 -> v1.6.0.0
 [00013681][12 00] v1.8.0.0 -> v1.7.0.0
 [00013710][12 01] v1.8.0.0 -> v1.7.0.0
 [00013756][12 02] v1.8.0.0 -> v1.7.0.0
 [00013800][12 03] v1.8.0.0 -> v1.7.0.0
 [00013814][15 00] v1.1.2.0 -> v1.1.2.0
 [00013855][17 00] v1.1.1.2 -> v1.1.1.2
 [00013930][17 01] v1.0.2.4 -> v1.0.2.4
 [00013955][19 00] v1.0.8.59 -> v1.0.8.59
 [00013960][01 00] v1.7.2735 -> v1.7.2735
 [00013964][01 01] v1.7.2735 -> v1.7.2735
 [00013968]Packet upgrade cancelled at version checking.

Ok, here is some explanation:
You've inserted the SD-card into the camera. Camera application is module `[01 01]` - you see module marking in each line of the `Version checking`. So the camera asked all other modules within the drone to provide their versions, and compared them to the one you copied within the package file on sd-card.

Conclusions:
* All modules within your drone are functional - they are responding to an ask for version. There is no `device not detected` which would mean a module is not booting or is disconnected. In your drone, all modules booted and are able to talk.
* Your current firmware is somewhere between V01.01.0009 and V01.03.0020. I did not checked deep enough for specific version, as I don't think it's relevant. But that's an old version - looks like the previous owner never updated. That's good!

How I got the FW version range:
I still have extracted firmware packages from years ago when I played with them (they can be extracted using dji-firmware-tools). So using these old files, I made each FW show version of `[12 00]` it includes:

Code:
# find ./ -name 'P3S_FW_V*_m1200.ini' | xargs grep 'version'
P3S_FW_V01.01.0008_m1200.ini:version=01.07.0000
P3S_FW_V01.01.0009_m1200.ini:version=01.08.0000
P3S_FW_V01.02.0007_m1200.ini:version=01.08.0000
P3S_FW_V01.02.0008_m1200.ini:version=01.08.0000
P3S_FW_V01.03.0020_m1200.ini:version=01.08.0000
P3S_FW_V01.04.0010_m1200.ini:version=01.10.0000
P3S_FW_V01.05.0030_m1200.ini:version=01.10.0000
P3S_FW_V01.06.0040_m1200.ini:version=01.10.0000
P3S_FW_V01.07.0060_m1200.ini:version=01.10.0000
P3S_FW_V01.08.0080_m1200.ini:version=01.10.0000
P3S_FW_V01.09.0060_m1200.ini:version=01.10.0000
P3S_FW_V01.10.0090_m1200.ini:version=01.11.0000
P3S_FW_V01.11.0030_m1200.ini:version=01.13.0000

You version, as visible in the LOG_AB, is `01.08` - so you must have a FW package from a range which includes the ESC module in that version.
 
Ok thats good i guess i figured it was 1.8 looking at the log.
Does it matter that my dji go app on the phone is the latest version or should i get an older version?
 
  • Like
Reactions: RodPad
Does it matter that my dji go app on the phone is the latest version or should i get an older version?
I don't think it matters. I mostly used `P3X_FW_V01.07.0060` on my drone (Pro and Advanced use the same version numbers) and had no issues with any of newer apps (well, except the Dji Go wanted me to update my firmware and tried to block me from flying unless I do so, but there are ways to block that).

You do need to have the AC and the RC on firmwares from similar time period - the latest RC firmware will not be able to connect to AC with old firmware. But from what I understand, in your case it connects and reacts to commands from the RC, so you do not seem to have issue with that.

Ok thats good i guess i figured it was 1.8 looking at the log.
Not sure if that's a shortcut or the explanation of versions was too brief, but your FW package version seem to be between V01.01.0009 and V01.03.0020, and the 1.8 is just a module version - ESC module in that case. Firmware packages ranged between V01.01.0009 and V01.03.0020 have this ESC module version.
 
Last edited:
Is my next step to reflash the bootloader on the controller?
Yes.

Well.. I guess you could check if your RC can generate an update log as well. We expect the chip in charge of USB port is not booting, so it won't be able to write a log file.

GL300b/c/e only allow to update the RC FW using Dji Go app. But in the GL300a, it is possible to update RC firmware in the same way as AC - by inserting a drive with firmware in root folder. This time not an sd-card though, just a normal flash drive (or SD-card reader, that will work as well).

Since your AC firmware is from circa 2015-06, it's from the time when RC and AC firmware was the same - both stored is the same file (later, on 2015-09, a separate 'C1' firmware started being distributed for RCs).

But maybe we're just delaying the unavoidable - the chance that this will provide any new info is very small. You will most likely have to reflash something on the internal NAND, like the bootloader you mentioned.
 
yeah i couldnt update the RC when i first tryed it, it just booted up without noticing the usb drive.
Im to tired today sadly, didnt get my nap :-P.
I might have time friday morning or next week. This feels so close so frustrating not having the time to do it :s.
Thanks alot for the help so far. I just started learning programming on arduino a few months back, this will definatly help understanding the finer things of electronics :).
 
  • Like
Reactions: RodPad
So @quaddamage i now have the board out and ready to solder.
I read somewhere i need a soldering station with variable heat i do have that. What amount of heat in C would you solder with?
I usually use between 350 to 450 when i solder. But ive never solderet anything that could get damagede from high heat.
 
  • Like
Reactions: RodPad
We are talking about just soldering 3 wires to pads, not soldering/desoldering any chips.

Most technicians look at the state of solder (and state of components) when selecting temperature. And they rarely even know the exact temp - stations typically just have numbers 1..10.

In your case, you will use your own solder and your own flux. So you can easily start on any unrecoverable equipment - solder and unsolder the wires there to get some basics. The temperature should be set to what is enough to make the solder fully fluid. The soldering tip should be in a shape which allows to transfer the heat easily. And that's it, really.

There are two ways of doing it wrong: overheat it and the copper pad will stop sticking to the board, or rip it by pulling (either pulling the wire, or pulling the soldering iron while it's too cold).

1. Overheat - to avoid that you need set the proper temperature, but also make sure the time of soldering is as brief as possible. A good flux and some skill are crucial to make the soldering moment short.

2. Ripping by force - yeah, the pad is small. Avoid applying any force to the wire when soldering. If your wire it too large and too stiff, you can rip the pad even by bending the wire - so also use a small gauge wire. Some people use tape to secure the wires after they're soldered, so that bending the wire doesn't apply force to the soldering point.

I wrote a lot about the process because you seem worried; but this is really fast and easy.
 
I cant Figure out about the 5v ps. You just want me to connect an external instead of using the 5v on the ttl board?
Edit:
It works now. Rx needs to go to Tx and Tx needs to go to Rx i missed that part. I got the bootme going. Ill move on in your guide.
IMG_20241004_132459.jpg
 
Last edited:
  • Like
Reactions: RodPad
So this is my active window.
It doesnt realy get any further then Target: BOOTME in the end. Is it safe to disconnect or what should i do right now ?

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


Flashing NAND with ubl1_prop.img and u-boot_prop.img.


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




Waiting for the DM36x...
        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% [                                                              ]
 100%

                           CRC table sent.

Waiting for DONE...
        Target:    DONE
DONE received.  Sending the UBL...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
        Target: ???? BOOTME   UBL sent.

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: TME
        Target:  BOOTME
BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
        Target:  BOO  BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%
Waiting for DONE...        CRC table sent.
        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:   BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%
Waiting for DONE...        CRC table sent.
        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:   BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%
Waiting for DONE...        CRC table sent.
        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:   BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%
Waiting for DONE...        CRC table sent.
        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:   BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%
Waiting for DONE...        CRC table sent.
        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:   BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%
Waiting for DONE...        CRC table sent.
        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:   BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%
Waiting for DONE...        CRC table sent.
        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:   BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%


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

 100%
 100%
Waiting for DONE...        CRC table sent.
        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:   BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%
Waiting for DONE...        CRC table sent.
        Target: CORRUPT
        Target:  BOOTME







BOOTME commmand received. Returning ACK and header...
ACK command sent. Waiting for BEGIN command...
        Target:   BEGIN
BEGIN commmand received. Sending CRC table...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
 100%
Waiting for DONE...        CRC table sent.
        Target:    DONE
DONE received.  Sending the UBL...
   0% [ ------------------------------------------------------------ ]
Status Undefined

 100%
        Target:    DONE       UBL sent.
DONE received.  UBL was accepted.
UBL transmitted successfully.


Waiting for SFT on the DM36x...
        Target:  BOOTME
        Target:  BOOTME
        Target:  BOOTME
        Target:  BOOTME
        Target:  BOOTME
        Target:  BOOTME

        Target:  BOOTME
 
  • Like
Reactions: RodPad
And now Putty show me this

▒DM36x initialization passed!
UBL Product Vesion : DJI-GRC-UBL-1.0-rc0(2014-07-31)
Dji UBL Version: 1.51(Jul 31 2014 - 09:23:41)
Booting Catalog Boot Loader
BootMode = NAND
Starting NAND Copy...
Valid magicnum, 0xA1ACED66, found in block 0x00000019.
Valid magicnum, 0xA1ACED66, found in block 0x0000001D.
No valid boot image found!
NAND Boot failed.
Aborting...
 
  • Like
Reactions: RodPad
It doesnt realy get any further then Target: BOOTME in the end.
That's no what the log says. According to the log, the target did responded with "BEGIN" on a command.

It later responded with "Target: CORRUPT" which probably means there were errors during the data transfer.

But after a few retries, it did flashed successfully - "Target: DONE".
 
That's no what the log says. According to the log, the target did responded with "BEGIN" on a command.

It later responded with "Target: CORRUPT" which probably means there were errors during the data transfer.

But after a few retries, it did flashed successfully - "Target: DONE".
Yeah thats what i saw too.
But then in the end it keeps saying:
Waiting for SFT on the DM36x...
<br> Target: BOOTME
<br> Target: BOOTME

I guess thats why my next error is not boot image found.

EDIT:
Apparently i didnt focus on the part that says do it twice. Now im at operation completet sucessfully
 
Last edited:
  • Like
Reactions: RodPad
BTW, I have soldering iron, I can adjusted from 350 - 850, maybe 8 different types of tips.
I still screw up. :rolleyes:

Rod ..
 
  • Like
Reactions: ninja_plys
Okay the operation was successfull yesterday and yet i couldnt connect either of the phones i tryed.
This is my putty output without the 3,3v jumper cable.


Code:
DM36x initialization passed!
UBL Product Vesion : DJI-GRC-P3-SUPER-UBL-1.0-rc0(2015-05-12)
Dji UBL Version: 1.51(May 12 2015 - 11:29:40)
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-GRC-Uboot-1.0-rc1(2015-01-27)
U-Boot 2010.12-rc2-svn-Dji (Jan 27 2015 - 18:45:11)
Cores: ARM 486 MHz
DDR:   360 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
nand_bbt: ECC error while reading bad block table
*** 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:osd0=1920x1080X16,8100K mem=48MB davinci_enc_mngr.ch0_output=COMPOSITE davinci_enc_mngr.ch0_mode=pal ubi.mtd=2,2048 root=ubi0:rootfs 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 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.070000] bio: create slab <bio-0> at 0
[    0.070000] SCSI subsystem initialized
[    0.080000] usbcore: registered new interface driver usbfs
[    0.080000] usbcore: registered new interface driver hub
[    0.080000] usbcore: registered new device driver usb
[    0.090000] cfg80211: Using static regulatory domain info
[    0.090000] cfg80211: Regulatory domain: US
[    0.090000]  (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[    0.090000]  (2402000 KHz - 2472000 KHz @ 40000 KHz), (600 mBi, 2700 mBm)
[    0.090000]  (5170000 KHz - 5190000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[    0.090000]  (5190000 KHz - 5210000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[    0.090000]  (5210000 KHz - 5230000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[    0.090000]  (5230000 KHz - 5330000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
[    0.090000]  (5735000 KHz - 5835000 KHz @ 40000 KHz), (600 mBi, 3000 mBm)
[    0.090000] cfg80211: Calling CRDA for country: US
[    0.090000] Switching to clocksource timer0_1
[    0.090000] musb_hdrc: version 6.0, pio, host, debug=0
[    0.110000] musb_hdrc: USB Host mode controller at fec64000 using PIO, IRQ 12
[    0.110000] musb_hdrc musb_hdrc: MUSB HDRC host driver
[    0.110000] musb_hdrc musb_hdrc: new USB bus registered, assigned bus number 1
[    0.110000] usb usb1: configuration #1 chosen from 1 choice
[    0.110000] hub 1-0:1.0: USB hub found
[    0.110000] hub 1-0:1.0: 1 port detected
[    0.110000] NET: Registered protocol family 2
[    0.110000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.110000] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
[    0.110000] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
[    0.110000] TCP: Hash tables configured (established 2048 bind 2048)
[    0.110000] TCP reno registered
[    0.110000] NET: Registered protocol family 1
[    0.110000] RPC: Registered udp transport module.
[    0.110000] RPC: Registered tcp transport module.
[    0.110000] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.120000] kfile init
[    0.120000] JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
[    0.120000] msgmni has been set to 87
[    0.120000] alg: No test for stdrng (krng)
[    0.120000] io scheduler noop registered (default)
[    0.180000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.180000] serial8250.0: ttyS0 at MMIO 0x1c20000 (irq = 40) is a 16550A
[    0.550000] console [ttyS0] enabled
[    0.560000] serial8250.0: ttyS1 at MMIO 0x1d06000 (irq = 41) is a 16550A
[    0.570000] brd: module loaded
[    0.570000] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xf1 (Micron NAND 128MiB 3,3V 8-bit)
[    0.580000] Creating 4 MTD partitions on "davinci_nand.0":
[    0.590000] 0x000000000000-0x0000004a0000 : "bootloader"
[    0.600000] 0x0000004a0000-0x000000e00000 : "kernel"
[    0.600000] 0x000000e00000-0x000007f00000 : "filesystem"
[    0.610000] 0x000000000000-0x000008000000 : "all"
[    0.620000] davinci_nand davinci_nand.0: controller rev. 2.3
[    0.630000] UBI: attaching mtd2 to ubi0
[    0.630000] UBI: physical eraseblock size:   131072 bytes (128 KiB)
[    0.640000] UBI: logical eraseblock size:    126976 bytes
[    0.640000] UBI: smallest flash I/O unit:    2048
[    0.650000] UBI: sub-page size:              512
[    0.650000] UBI: VID header offset:          2048 (aligned 2048)
[    0.660000] UBI: data offset:                4096
[    0.780000] usb 1-1: new high speed USB device using musb_hdrc and address 2
[    0.930000] usb 1-1: configuration #1 chosen from 1 choice
[    0.930000] hub 1-1:1.0: USB hub found
[    0.950000] hub 1-1:1.0: 2 ports detected
[    1.110000] UBI: attached mtd2 to ubi0
[    1.110000] UBI: MTD device name:            "filesystem"
[    1.120000] UBI: MTD device size:            113 MiB
[    1.120000] UBI: number of good PEBs:        904
[    1.130000] UBI: number of bad PEBs:         0
[    1.130000] UBI: max. allowed volumes:       128
[    1.140000] UBI: wear-leveling threshold:    4096
[    1.140000] UBI: number of internal volumes: 1
[    1.150000] UBI: number of user volumes:     1
[    1.150000] UBI: available PEBs:             0
[    1.150000] UBI: total number of reserved PEBs: 904
[    1.160000] UBI: number of PEBs reserved for bad PEB handling: 9
[    1.170000] UBI: max/mean erase counter: 60/1
[    1.170000] UBI: image sequence number: 85601955
[    1.170000] UBI: background thread "ubi_bgt0d" started, PID 272
[    1.180000] console [netcon0] enabled
[    1.190000] netconsole: network logging started
[    1.190000] Initializing USB Mass Storage driver...
[    1.200000] usbcore: registered new interface driver usb-storage
[    1.200000] USB Mass Storage support registered.
[    1.210000] usbcore: registered new interface driver usbtest
[    1.210000] i2c /dev entries driver
[    1.220000] watchdog watchdog: heartbeat 1 sec
[    1.230000] TCP cubic registered
[    1.230000] NET: Registered protocol family 17
[    1.230000] lib80211: common routines for IEEE802.11 drivers
[    1.240000] ksocket init
[    1.260000] encrypt device:atsha204 found
[    1.350000] mfi_i2c_client addr:17
[    1.350000] Clocks: disable unused vpss_master
[    1.350000] Clocks: disable unused mmcsd0
[    1.350000] Clocks: disable unused mmcsd1
[    1.350000] Clocks: disable unused spi0
[    1.350000] Clocks: disable unused spi1
[    1.350000] Clocks: disable unused spi2
[    1.350000] Clocks: disable unused spi3
[    1.350000] Clocks: disable unused spi4
[    1.350000] Clocks: disable unused pwm0
[    1.350000] Clocks: disable unused pwm1
[    1.350000] Clocks: disable unused pwm2
[    1.350000] Clocks: disable unused pwm3
[    1.350000] Clocks: disable unused timer1
[    1.350000] Clocks: disable unused timer3
[    1.350000] Clocks: disable unused emac
[    1.350000] Clocks: disable unused voice_codec
[    1.350000] Clocks: disable unused asp0
[    1.350000] Clocks: disable unused rto
[    1.350000] Clocks: disable unused mjcp
[    1.430000] davinci_emac_probe: using random MAC addr: 12:1c:e6:72:0c:2a
[    1.440000] emac-mii: probed
[    1.480000] UBIFS: recovery needed
[    1.540000] UBIFS: recovery completed
[    1.540000] UBIFS: mounted UBI device 0, volume 0, name "rootfs"
[    1.550000] UBIFS: file system size:   110342144 bytes (107756 KiB, 105 MiB, 869 LEBs)
[    1.560000] UBIFS: journal size:       9023488 bytes (8812 KiB, 8 MiB, 72 LEBs)
[    1.560000] UBIFS: media format:       w4/r0 (latest is w4/r0)
[    1.570000] UBIFS: default compressor: lzo
[    1.570000] UBIFS: reserved for root:  0 bytes (0 KiB)
[    1.580000] VFS: Mounted root (ubifs filesystem) on device 0:13.
[    1.590000] Freeing init memory: 108K
 
  • Like
Reactions: RodPad
Code:
Filesystem Product Vesion : DJI-Filesystem-1.0-rc2
Runing /etc/init.d/rcS
[    3.100000] CMEMK module: built on Jul 30 2014 at 10:21:45
[    3.100000]   Reference Linux version 2.6.32
[    3.110000]   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
[    3.130000] allocated heap buffer 0xc7000000 of size 0x4400000
[    3.150000] heap fallback enabled - will try heap if pool buffer is not available
[    3.170000] CMEM Range Overlaps Kernel Physical - allowing overlap
[    3.170000] CMEM phys_start (0x1000) overlaps kernel (0x80000000 -> 0x83000000)
[    3.180000] cmemk initialized
[    3.210000] IRQK module: built on Jul 30 2014 at 10:21:09
[    3.210000]   Reference Linux version 2.6.32
[    3.220000]   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
[    3.240000] irqk initialized
[    3.280000] EDMAK module: built on Jul 30 2014 at 10:19:34
[    3.300000]   Reference Linux version 2.6.32
[    3.300000]   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
[    3.500000] exFAT: Version 1.2.9
settime failed
[    7.000000] UBI: scrubbed PEB 57 (LEB 0:55), data moved to PEB 374
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
[   11.010000] usbcore: registered new interface driver usb_applehid
[   11.010000] usb applehid module init ok
[   11.070000] usbcore: registered new interface driver usb_68013
[   11.070000] usb 68013 module init ok
sulogin: no password entry for root
[   11.270000] UBI: scrubbed PEB 157 (LEB 0:155), data moved to PEB 373
login[407]: root login on 'ttyS0'
#Process /etc/profile...
root@Dji-Pro:~# encrypt check ok
init  libusb successed!!!
usbmuxd disabled
usbsocket_init OK
usbsocket_create_handle ok, port:22345, bCanRecv:1
usbsocket_create_handle ok, port:22346, bCanRecv:0
watchdog timeout:5
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
DummyRead68013 0.000000kb
DummyRead68013 0.000000kb
DummyRead68013 0.000000kb
DummyRead68013 0.000000kb
DummyRead68013 0.000000kb
 
  • Like
Reactions: RodPad
Haven't you seen something about that in the guide?:

Code:
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

Though since the Linux is booting, I think you should be able to reflash the primary kernel using the standard USB upgrade procedure rather than manual flashing.
 
I did the USB firmware update starting from the lowest available firmware on phantomhelp and it worked with 1.2.7 guess i had 1.1.9 or something.

It still connect fine with the drone able to start the rotors and controll gimball. Just no phone connection on either Samsung S5 nor my newer phone.

Code:
==========1970.01.01 00:00:10==========
Packet: /mnt/usb/P3S_FW_V01.02.0007.bin,
Upgrading ...
Result: Success
But i still get the same error.
This mean i need to flash the kernel manually right?

Code:
DM36x initialization passed!
UBL Product Vesion : DJI-GRC-P3-SUPER-UBL-1.0-rc0(2015-05-12)
Dji UBL Version: 1.51(May 12 2015 - 11:29:40)
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-GRC-Uboot-1.0-rc1(2015-01-27)
U-Boot 2010.12-rc2-svn-Dji (Jan 27 2015 - 18:45:11)
Cores: ARM 486 MHz
DDR:   360 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
nand_bbt: ECC error while reading bad block table
*** 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!
 
  • Like
Reactions: RodPad
To reflash the kernel manually do i need the jumper cable from 3,3v or is that not needed ?
Since im trying to interrupt the bootloader it shouldnt be needed right?
 
  • Like
Reactions: RodPad

Recent Posts

Members online

Forum statistics

Threads
143,332
Messages
1,469,662
Members
105,315
Latest member
prodigey
Want to Remove this Ad? Simply login or create a free account