Yes. This is now solved. Though not by "fixing" the key - we can't do that. The key can be only written once, and it's done at factory.
You need to do a small modification to firmware and remove that encryption check; then everything works.
The firmware modification can be done by the 'hardcoder' tool:
Tools for handling firmwares of DJI products, with focus on quadcopters. - o-gs/dji-firmware-tools
github.com
I published a pack of pre-modded firmwares in one of initial posts in this thread. If yours is not there - install Python and use dji-firmware-tools to modify the firmware by yourself.
Brilliant, I found the tool pack, but unsure which needs applying, the gimbal light doesnt come on when powered on, comes on when the unit was flashed though, here is the output from putty, im guessing its Option B - replace encode_usb only:
[SERIAL/DIRECT] CONNECTED TO PORT COM5 (115200-8N1)
7d9½¹É}±±Ayrj¤[ 1.020000] UBI: attaching mtd2 to ubi0
[ 1.020000] UBI: physical eraseblock size: 131072 bytes (128 KiB)
[ 1.030000] UBI: logical eraseblock size: 126976 bytes
[ 1.040000] UBI: smallest flash I/O unit: 2048
[ 1.040000] UBI: sub-page size: 512
[ 1.050000] UBI: VID header offset: 2048 (aligned 2048)
[ 1.050000] UBI: data offset: 4096
[ 1.530000] UBI: attached mtd2 to ubi0
[ 1.540000] UBI: MTD device name: "filesystem"
[ 1.540000] UBI: MTD device size: 113 MiB
[ 1.550000] UBI: number of good PEBs: 904
[ 1.550000] UBI: number of bad PEBs: 0
[ 1.560000] UBI: max. allowed volumes: 128
[ 1.560000] UBI: wear-leveling threshold: 4096
[ 1.570000] UBI: number of internal volumes: 1
[ 1.570000] UBI: number of user volumes: 1
[ 1.580000] UBI: available PEBs: 0
[ 1.580000] UBI: total number of reserved PEBs: 904
[ 1.590000] UBI: number of PEBs reserved for bad PEB handling: 9
[ 1.590000] UBI: max/mean erase counter: 174/1
[ 1.600000] UBI: image sequence number: 943561574
[ 1.600000] UBI: background thread "ubi_bgt0d" started, PID 332
[ 1.610000] console [netcon0] enabled
[ 1.610000] netconsole: network logging started
[ 1.620000] Initializing USB Mass Storage driver...
[ 1.620000] usbcore: registered new interface driver usb-storage
[ 1.630000] USB Mass Storage support registered.
[ 1.630000] i2c /dev entries driver
[ 1.640000] Linux video capture interface: v2.00
[ 1.650000] vpfe_init
[ 1.650000] vpfe-capture: vpss clock vpss_master enabled
[ 1.650000] vpfe-capture vpfe-capture: v4l2 device registered
[ 1.660000] vpfe-capture vpfe-capture: video device registered
[ 1.670000] EVM: switch to ambarella video input
[ 1.670000] vpfe-capture vpfe-capture: v4l2 sub device ambarella registered
[ 1.680000] vpfe_register_ccdc_device: DM365 ISIF
[ 1.680000] DM365 ISIF is registered with vpfe.
[ 1.690000] Trying to register davinci display video device.
[ 1.700000] layer=c1094c00,layer->video_dev=c1094d64
[ 1.700000] Trying to register davinci display video device.
[ 1.710000] layer=c1095000,layer->video_dev=c1095164
[ 1.720000] davinci_init

aVinci V4L2 Display Driver V1.0 loaded
[ 1.720000] watchdog watchdog: heartbeat 1 sec
[ 1.730000] TCP cubic registered
[ 1.730000] NET: Registered protocol family 17
[ 1.740000] lib80211: common routines for IEEE802.11 drivers
[ 1.760000] Clocks: disable unused mmcsd0
[ 1.760000] Clocks: disable unused mmcsd1
[ 1.760000] Clocks: disable unused spi0
[ 1.760000] Clocks: disable unused spi1
[ 1.760000] Clocks: disable unused spi2
[ 1.760000] Clocks: disable unused spi3
[ 1.760000] Clocks: disable unused spi4
[ 1.760000] Clocks: disable unused pwm0
[ 1.760000] Clocks: disable unused pwm1
[ 1.760000] Clocks: disable unused pwm2
[ 1.760000] Clocks: disable unused pwm3
[ 1.760000] Clocks: disable unused timer1
[ 1.760000] Clocks: disable unused timer3
[ 1.760000] Clocks: disable unused emac
[ 1.760000] Clocks: disable unused voice_codec
[ 1.760000] Clocks: disable unused asp0
[ 1.760000] Clocks: disable unused rto
[ 1.760000] Clocks: disable unused mjcp
[ 1.840000] nnnn===0
[ 1.840000] davinci_emac_probe: using random MAC addr: 9a:51:9c:69:1a:ca
[ 1.850000] emac-mii: probed
[ 1.890000] UBIFS: recovery needed
[ 1.940000] UBIFS: recovery completed
[ 1.940000] UBIFS: mounted UBI device 0, volume 0, name "rootfs"
[ 1.950000] UBIFS: file system size: 110342144 bytes (107756 KiB, 105 MiB, 869 LEBs)
[ 1.960000] UBIFS: journal size: 9023488 bytes (8812 KiB, 8 MiB, 72 LEBs)
[ 1.960000] UBIFS: media format: w4/r0 (latest is w4/r0)
[ 1.970000] UBIFS: default compressor: lzo
[ 1.970000] UBIFS: reserved for root: 0 bytes (0 KiB)
[ 1.980000] VFS: Mounted root (ubifs filesystem) on device 0:13.
[ 1.990000] Freeing init memory: 116K
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>WM610<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Filesystem Product Vesion : DJI-WM610-Filesystem-1.0-rc3(2014-06-06)
Runing /etc/init.d/rcS
[ 3.740000] UBI: scrubbed PEB 370 (LEB 0:263), data moved to PEB 598
[ 3.860000] CMEMK module: built on Jan 13 2015 at 19:24:09
[ 3.890000] Reference Linux version 2.6.32
[ 3.890000] File /home/DJI2/Project/enc_nohdmi_wm610/src/dvsdk/dvsdk_dm368_4_02_00_06/linuxutils
_2_26_01_02/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.c
[ 3.940000] allocated heap buffer 0xc7000000 of size 0x2456000
[ 3.940000] heap fallback enabled - will try heap if pool buffer is not available
[ 3.960000] CMEM Range Overlaps Kernel Physical - allowing overlap
[ 3.960000] CMEM phys_start (0x1000) overlaps kernel (0x80000000 -> 0x83000000)
[ 3.980000] cmemk initialized
[ 4.010000] UBI: scrubbed PEB 392 (LEB 0:158), data moved to PEB 630
[ 4.040000] IRQK module: built on Jan 13 2015 at 19:23:41
[ 4.040000] Reference Linux version 2.6.32
[ 4.050000] File /home/DJI2/Project/enc_nohdmi_wm610/src/dvsdk/dvsdk_dm368_4_02_00_06/linuxutils
_2_26_01_02/packages/ti/sdo/linuxutils/irq/src/module/irqk.c
[ 4.080000] irqk initialized
[ 4.120000] EDMAK module: built on Jan 13 2015 at 19:23:04
[ 4.120000] Reference Linux version 2.6.32
[ 4.140000] File /home/DJI2/Project/enc_nohdmi_wm610/src/dvsdk/dvsdk_dm368_4_02_00_06/linuxutils
_2_26_01_02/packages/ti/sdo/linuxutils/edma/src/module/edmak.c
[ 4.250000] usbcore: registered new interface driver usb_68013
[ 4.280000] usb 68013 module init ok
sulogin: no password entry for root
login[437]: root login on 'ttyS0'
#Process /etc/profile...
root@Dji-Pro:~#
encode_usb V00.02.02.00(Nov 3 2015 11:23:52).
Entry Encrypt qury mode
Init libusb faild!
Auto to detect v[ 6.580000] EVM: switch to ambarella video input
ideo input type:
Default video input selected:Hdmi_yuv
Setting video standard to: 0x100000000000000
Capture input set to Hdmi[ 6.600000] davinci_resizer davinci_resizer.2: RSZ_G_CONFIG:0:1:124
_yuv:11
[ 6.610000] davinci_previewer davinci_previewer.2: ipipe_set_preview_config
[ 6.620000] vpfe-capture vpfe-capture: IPIPE Chained
[ 6.620000] vpfe-capture vpfe-capture: Resizer present
Capture videoStd[ 6.630000] EVM: switch to ambarella video input
Old=0000000b
[ 6.630000] vpfe-capture vpfe-capture: width = 1280, height = 720, bpp = 1
[ 6.640000] vpfe-capture vpfe-capture: adjusted width = 1280, height = 720, bpp = 1, bytesperline
= 1280, sizeimage = 1382400
[ 6.650000] vpfe-capture vpfe-capture: width = 1280, height = 720, bpp = 1
[ 6.660000] vpfe-capture vpfe-capture: adjusted width = 1280, height = 720, bpp = 1, bytesperline
= 1280, sizeimage = 1382400
videoFrameRate=30000, width=1280, height=720
Venc1.c : minNumOutBufs 2, minOutBufSize[0] 1382400, minOutBufSize[1] 800
GOP interval:30, outBufSize:1382400, enAdpBW:1, airRate=0, slice=6, VUI=4,timeScale=60001
osdThrFxn: process ID is 442 ***********
watchdog timeout:5
ctrlThrFxn: process ID is 434 ***********
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
ARM Load: 52% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:02 Resolution
: 1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:03 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 2% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:04 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 4% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:05 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:06 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 2% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:07 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 3% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:08 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 2% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:09 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:10 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:11 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:12 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:13 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 2% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:14 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 2% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:15 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:16 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 0% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:17 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:18 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 3% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:19 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 0% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:20 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 0% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:21 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:22 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 2% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:23 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 2% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:24 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:25 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 3% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:26 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 2% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:27 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:28 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 2% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:29 Resolution:
1280x720
GetFPGAstatus err!
FPGA[1,0,1,0]-1.000000:0
hdmi status is 1
video lost
libusb send error--1
ARM Load: 1% Video fps: 0 fps Video bit rate: 0 kbps PHY Bandwidth: 0 kbps Time: 00:00:30 Resolution:
1280x720