Amlogic USB Burning Tool Still Sucks in 2016

[Update November 2016: If you don’t like USB Burning Tool or don’t have the necessary USB cable, you can flash Amlogic IMG firmware to a micro SD card instead]

In the first few years when Android TV Boxes/mini PCs started to hit the markets, in the 2012-2014 period, online firmware update was inexistent for the vast majority of the boxes, and if you wanted to update your firmware you had to use some windows tools like USB Burning Tool for Amlogic, AndroidTool for Rockchip, or PhoenixUSBPro / PhonixSuite for Allwinner platforms. All those tools have poor design, for example the window is not resizable, so it’s impossible to your an old netbook (1024×600 resolution), and then you have to install drivers which is easy, for after detection of the box may be hit and miss, and you have to follow a procedure with the right power sequence with a USB cable connected to a USB OTG port (not always properly marked) and the recovery pin hole or button. It’s taken me close to 4 hours in the past to update firmware through that method switching between USB ports and computers to find out what may be wrong… Luckily in recent years, many devices are now supporting OTA firmware updates, or an easy offline update procedure using a micro SD card or USB flash drive. That means most people should not need to torture themselves using such terrible tools and procedure, unless your TV box is somehow bricked, in which case Windows tools, or their Linux equivalent, are required.

I’ve writing about this because Rikomagic must have been nostalgic and decided not to provide OTA firmware update, and only distribute MK22 TV box firmware as an IMG file for Amlogic USB Burning Tool, both of which can be downloaded on Rikomagic download page. Even though I must have had to use such tools for nearly two years, I was naively expecting it update the firmware in a few minutes, since I used such tools extensively in the past. I was wrong, and I did managed to flash the firmware after two hours, most of it due my own mistakes, as I forgot some of the caveat, and did not read the complete instructions. So I’ll report my experience in case it can help somebody.

The first challenge was to find which one of the USB ports is the OTG one, as there are three, and no specific markings. At first, none of the ports would be detected due the wrong recovery sequence as explained, but I eventually found out it was the lonely USB port on the side, on the left of the micro SD slot and recovery pinhole.

mk22-otg-port-recovery-button

I know that normally you need to insert a toothpick in the recovery button and apply power, before releasing the recovery button, and I did just that and could not get into recovery mode at anytime. My mistake was that I had also inserted the USB cable, and it took me a while to realize it would also power the power through USB, not enough to show anything on the TV, but enough to boot the processor, and prevent me from accessing recovery mode. So the correct procedure, is to enter recovery mode by pressing the recovery button, applying power, and a few second later release the recovery button, and only then you can insert the USB cable.

After that I fired up a Windows 7 virtual image through VirtualBox, and installed USB Burning Tool and drivers by clicking on setup_v2.0.5.15_build7.exe downloaded from Rikomagic website. The installation went smoothly, but after enabling “Amlogic” device in Virtual Box, it would report the device is not supported, so I removed the drivers and reinstalled them, and I could get “Worldcup Device” in the Device Manager.

Good, now I can start USB Burning Tool, change the language to English in the program, and the TV box is detected, so I loaded the firmware file (File->Import Image… RKM MK22_161031.img), hoping to get ready to flash the firmware, but I got another error message “Get key failed” with the mac = 0 on the right window when click on Start button… Very odd.

Click to Enlarge
Click to Enlarge

But I’m not the only one with the issue, and for some reasons, Amlogic decided to add a license to their factory software… Hard to understand why, but I should definitely have read the provided “MK22.MK06 Software installation intructions-161013.doc” manual, as it explicitly states to

copy the folderlicense to the path when you set by this step. For example: I set C:\Program Files (x86)\Amlogic\USB_Burning_Tool

And there’s indeed a license folder in the downloaded file from Rikomagic, so I copied the directory to C:\Program Files (x86)\Amlogic\USB_Burning_Tool, overwriting the current license directory, and started USB burning tool again. Hmm… same “get key failed” error… Should I reboot? Let’s do it, but same error again after reboot.

So I decided to uninstall everything, and start from start with the drivers and USB Burning Tool, and made sure I copied the license directory before starting USB burning tool. After which I started the program, loaded the firmware file, click on Start button, and after just under 7 minutes I had managed to flash the firmware! Woohoo!

Click to Enlarge
Click to Enlarge

That was a painful experience. So while there’s a case (firmware recovery) for such tools and images, end users should not be asked to install the firmware through that method. It’s complicated, and the default settings wipe out your data and apps.

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
21 Comments
oldest
newest
JustMe ROMS
JustMe ROMS
7 years ago

No Need for power cable just it gets powered via usb cable

Theguyuk
Theguyuk
7 years ago
Stane1983
Stane1983
7 years ago

Amlogic IMG files can be burn using only USB flash drive or SD card as bootloader supports usb/sdcard burning (on M8 – newer sdk-s and on all S9xx). Things you need is aml_autoscript, aml_sdc_burn.ini and IMG file to be in root of sdcard/usb. I’ll write article on how to do it on my site and will provide aml_autoscript for both usb and sdcard burning because they use different command and not all people can create these files. Will post another msg here when article is up. Flashing is slower than recovery or USB burning tool but it works 🙂

Mr Maso
Mr Maso
7 years ago

Stane1983 : Amlogic IMG files can be burn using only USB flash drive or SD card as bootloader supports usb/sdcard burning (on M8 – newer sdk-s and on all S9xx). Things you need is aml_autoscript, aml_sdc_burn.ini and IMG file to be in root of sdcard/usb. I’ll write article on how to do it on my site and will provide aml_autoscript for both usb and sdcard burning because they use different command and not all people can create these files. Will post another msg here when article is up. Flashing is slower than recovery or USB burning tool but it works… Read more »

Chris
Chris
7 years ago

You don’t even need the aml_autoscript, just the aml_sdc_burn.ini (which you can extract from the img file) and the aml_upgrade_package.img file itself on a sd card. I put some simple c code on freaktab to extract all the files from the img file.

Chris
Chris
7 years ago

Example output from serial console: GXM:BL1:dc8b51:76f1a5;FEAT:ADFC318C:0;POC:3;RCY:0;EMMC:0;READ:0;0.0;CHK:0; TE: 147717 BL2 Built : 19:58:22, Aug 31 2016. gxl g54c8aee – xiaobo.gu@droid05 set vdd cpu_a to 1120 mv set vdd cpu_b to 1050 mv set vddee to 1000 mv Board ID = 2 CPU clk: 1200MHz DQS-corr enabled DDR scramble enabled DDR3 chl: Rank0+1 @ 912MHz – PASS Rank0: 1024MB(auto)-2T-13 Rank1: 1024MB(auto)-2T-13 DataBus test pass! AddrBus test pass! -s Load fip header from eMMC, src: 0x0000c200, des: 0x01400000, size: 0x00004000 New fip structure! Load bl30 from eMMC, src: 0x00010200, des: 0x01100000, size: 0x0000d600 Load bl31 from eMMC, src: 0x00020200, des: 0x10100000, size: 0x00015400… Read more »

Chris
Chris
7 years ago

@Chris
Sorry I think there was some sort of error during copy and paste of the serial output above. Parts of the log are missing, maybe due to parsing by the message board.

Chris
Chris
7 years ago

@Chris

Chris :

You don’t even need the aml_autoscript, just the aml_sdc_burn.ini (which you can extract from the img file) and the aml_upgrade_package.img file itself on a sd card. I put some simple c code on freaktab to extract all the files from the img file.

Disregard the above it appears you need either aml_autoscript or u-boot on the sdcard. I am working on porting amlogic u-boot to current version and apparently had remnants of it on my sdcard without realizing it.

BumsBums
BumsBums
7 years ago

Where is the link to freaktab or the tool. Flashed a qbox firmware on a eny box nowbthe device isn’t recognized on the pc anymore. Do i need to extract the files of a qbox image or a eny image later for the bootable sd?

TOM
TOM
7 years ago

As flashing wiht USB burning tool failed, i got TF card flash from RIkomagic.
Share here:
https://www.sendspace.com/file/nj2rll

PhilS
PhilS
7 years ago

The greatest problem that I find is not with regards to the tool (although the licencing thing is rather silly) but the physical procedures that you often have to go through, which can vary from box to box, even when some have the same type of SOC onboard. The pinholes in the base or reset buttons in the AV ports are just plain stupid. At least with something like the TX5 Pro, all you had to do was fire up the tool and then just plug the USB cable in off it went. No need for any overbearing procedures, some… Read more »

balbes150
balbes150
7 years ago

“But I’m not the only one with the issue, and for some reasons, Amlogic decided to add a license to their factory software… Hard to understand why, but I should definitely have read the provided “MK22.MK06 Software installation intructions-161013.doc” manual, as it explicitly states to”

IMHO
This is a license for MAC ‘ (allowed list). Each manufacturer is allocated a specific range and the license describes this range.

Ajay
Ajay
6 years ago

in my android tv box flash another rom after didn’t connect to pc Please help me.
ans start android Zoom the Screen An not open properely and colure are yellow,

danny dingdong
danny dingdong
5 years ago

Thank you Jean-Luc, this worked well for me, in combination with setting the temperature range to 10-90.

Cheers for posting your findings online.

Jean Bg
4 years ago

0x00000fff get key failed ,,, plz help

Khadas VIM4 SBC