S905X 1GB (Android 6) and CoreELEC NG boot failure

I installed Aidan Android 7. After this I can boot Android 7, but it doesn’t tries to boot CoreElec from USB. @kshi can you share your firmware? Thanks.

Pretty much the problem with the devices on android 6 is that the boot loader that was used for the really old android versions doesn’t support some features in the way that the newer kernel expects it to.

So it’s not so much that android needs to be newer but the boot loader that is packaged with android needs to be newer. Which is usually the case with vendor updates. However this may not be the case with third party updates since they may have used the boot loader from the older vendor android.

While I was able to work around some of the other problems caused by old firmware/boot loaders. This is unfortunately not always possible in some cases.

If somebody can find a working update for each of the effected devices, then we can make a forum post to guide others on how to update. However since some of the these devices might look the same and have the same model numbers, but different components/configuration, this could still be rather high risk for anybody that is not comfortable with unbricking their device.

I’ve got a family member that still has a 1G S905x box that has since been relegated to a desk drawer. When I have the time to go get it, I’d be happy to guinea pig this box for you. IIRC it still has the original abysmal Android 6 loaded and I know that the Android 7 ROM I have will install to it, it’s bootloader also allowed my S905x X96 to join the NG club. Hopefully the pins are easily identified on the PCB, though I’ve been meaning to order one of those snazzy SDIO Debug Boards.

I installed new firmware (had to use Amlogic USB Burn Tool and toothpick method). Aidan’s ROM Android 7:

After installation I was not able to boot CoreELEC from any USB port or MMC slot, toothpick method didn’t worked either. But Android worked fine. Thanks to @kshi I tried to use:

With a help of “Reboot to LibreELEC” I was able to boot to CoreELEC NG (which was not booting before). Then successfully ran “inject_bl301” and it worked.

I didn’t had time to test a lot. But only thing what is not working (but it was working not in NG builds) is:


Starting CoreELEC eMMC installation tool…
System is not supported: gxl_p212_1g!

It would be really nice to rewrite Android with CoreELEC, maybe there is a way?
Thanks everyone for help! :slight_smile:

Read the unsupported section
You need to use ceemmc -x

Thanks! It worked. Didn’t found this in ceemmc -h :smiley:

Very glad to hear that you found a solution that worked for you. :grinning:

Do you by chance know if you can flash with an sdcard or using Amlogic Flash Tool https://forum.xda-developers.com/t/08-03-2019-amlogic-tools-7-1-0-a-new-milestone-donate-version-available.3786991/ will work as well.
My male to male USB flash seems to not recognize the box. I have a T95X that has the button behind the AV port so I tried the toothpick but no luck. I have another box M8S mini which does not have the so call button but an on/off button that I tried pressing but does not start the flash.
Any suggestion? I am testing to see if flashing Aidan universal ROM will inject the updated bootloader to allow me loading Coreelec Amlogic-ng kernel.

Could we not use ADB Debug to go into recovery update to flash??

I’d be more inclined to use the standard AML USB burning tool. I’ve played around with that 3rd party set of Amlogic tools and found them to be less than reliable or straightforward. If the toothpick method doesn’t allow the box to be recognized in the above mentioned tool, there is the far more extreme option of shorting pins on emmc to force the box into recovery mode. Shorting is more of a last resort for otherwise bricked boxes though.

IIRC the reset button on the M8S Mini is on the underside of the box, not the AV port.

Unfortunately, this M8S is probably some offshoot of what is considered the standard M8S. There is no buttons other than the on/off. However, I thought all I need to do is go into recovery. I can do that using ADB debug and issue a “reboot recovery” it does go into recovery.
The issue is how to flash since my cable is not good even though I am in recovery. Can’t recovery update be able to flash the img file?

I’ve given you my suggestion. If you’re keen to go that route, I’d be more inclined to ask on a forum that caters specifically to Android like XDA or Freaktab. IIRC you’re still gonna need the USB drivers for your box, (which are included with the AML USB burning tool, btw), for your device to use ADB.
In the long run you’re probably still gonna want a working USB A Male/Male anyways, in case things go sideways.

Thank you. Odd thing is I somehow brick the device and it is in recovery now and the USB male/male seems to be detected in the Amlogic USB burning tool (HUB201 Connect success). Select normal erase and erase bootloader as instruction indicated. However, when I tried flashing Aidan img. It failed at 4% Download UBOOT time 23s.

[11:33:29 291][Global][Inf]–Scan end
[11:33:29 338][HUB2-1][Inf]–Open device handle \?\usb#vid_1b8e&pid_c003#5&c1e6cce&0&1#{a5dcbf10-6530-11d2-901f-00c04fb951ed} 0x00000194
[11:33:29 401][HUB2-1][Inf]–CloneImageProxy
[11:33:29 401][Global][Inf]–OpenImg C:\Users\hieppo\Downloads[v7.5] (UNIVERSAL) Aidan’s ROM [S905X] 1GB 2GB+.img
[11:33:29 401][HUB2-1][Inf]–Connect path=Intel® 82801FB/FBM USB2 Enhanced Host Controller - 265C/P0/P0
[11:33:29 401][HUB2-1][Inf]–Start burning…
[11:33:29 463][HUB2-1][Inf]--------------ERASE BOOTLOADER------------
[11:33:29 573][HUB2-1][Inf]–start SendIdentifyCmd
[11:33:29 588][HUB2-1][Inf]–2-2-0-0
[11:33:29 588][HUB2-1][Inf]-------------Download DDR.USB-----------
[11:33:29 588][HUB2-1][Inf]–2-2-0-0
[11:33:29 588][HUB2-1][Inf]–Control write pll reg1 0xd9000000:0x000000b1
[11:33:30 088][HUB2-1][Inf]–Control write pll reg1 0xd9000000:0x00005183
[11:33:30 588][HUB2-1][Inf]–Control write pll reg1 0xd9000000:0x000000b1
[11:33:31 088][HUB2-1][Inf]–Control write pll reg1 0xd9000000:0x00005183
[11:33:31 588][HUB2-1][Inf]–Write initial succeed
[11:33:31 588][HUB2-1][Inf]–Upload encrypt at 0xc8100228
[11:33:31 588][HUB2-1][Inf]–ulValue = 0xadfc318c
[11:33:31 588][HUB2-1][Inf]–Read encrypt value succeed
[11:33:31 588][HUB2-1][Inf]–Download DDR.USB,size: 49152!
[11:33:31 635][HUB2-1][Inf]–Transfer complete 49152
[11:33:31 635][HUB2-1][Inf]–Run at address 0xd9000000
[11:33:31 651][HUB2-1][Inf]–RunInRam success
[11:33:31 776][HUB2-1][Inf]–2-2-0-0-0-1-0-0
[11:33:31 776][HUB2-1][Inf]–CheckFileRunState succeed
[11:33:31 776][HUB2-1][Inf]–runResult:0x 0,paraMagic:0x7856efab
[11:33:31 776][HUB2-1][Inf]–ddrCapacity:0x 400
[11:33:31 776][HUB2-1][Inf]–2-2-0-0-0-1-0-0
[11:33:31 776][HUB2-1][Inf]–Get Encrpt ulValue = 0xadfc318c
[11:33:31 776][HUB2-1][Err]–download 1 time!
[11:33:31 776][HUB2-1][Inf]–Download UBOOT.USB buffer at 0x0200c000
[11:33:32 402][HUB2-1][Inf]–Transfer complete
[11:33:32 605][HUB2-1][Inf]–2-2-0-0-0-1-0-0
[11:33:32 605][HUB2-1][Inf]–Download DDR.USB buffer at 0xd9000000
[11:33:32 652][HUB2-1][Inf]–Transfer complete
[11:33:32 652][HUB2-1][Inf]–DownCheckPara succeed
[11:33:32 652][HUB2-1][Inf]–2-2-0-0-0-1-0-0
[11:33:32 652][HUB2-1][Inf]–RunInAddr at address 0xd9000000
[11:33:32 699][HUB2-1][Inf]–ReadCheckPara succeed
[11:33:32 699][HUB2-1][Inf]–2-2-0-0-0-1-0-0
[11:33:32 699][HUB2-1][Inf]–Get Encrpt ulValue = 0xadfc318c
[11:33:32 699][HUB2-1][Inf]–Download DDR.USB buffer at 0xd9000000
[11:33:32 745][HUB2-1][Inf]–Transfer complete
[11:33:32 761][HUB2-1][Inf]–DownRunPara succeed
[11:33:32 761][HUB2-1][Inf]–2-2-0-0-0-1-0-0
[11:33:32 761][HUB2-1][Inf]–RunInRam at address 0xd9000000
[11:33:45 263][HUB2-1][Inf]–Detect Device remove timeout
[11:33:45 263][HUB2-1][Inf]–Device is connected
[11:33:45 263][HUB2-1][Inf]–Close device handle 0x00000194
[11:33:45 326][HUB2-1][Inf]–Open device handle \?\usb#vid_1b8e&pid_c003#5&c1e6cce&0&1#{a5dcbf10-6530-11d2-901f-00c04fb951ed} 0x00000194
[11:33:53 405][HUB2-1][Inf]–IOCTL_IDENTIFY_HOST_Handler ret=-116 error_msg=libusb0-dll:err [control_msg] sending control message failed, win error: The I/O operation has been aborted because of either a thread exit or an application request.

[11:33:53 405][HUB2-1][Err]–CheckFileRunState failed
[11:33:53 405][HUB2-1][Err]–[0x10303004]Romcode/Switch status/Identify/Error result
[11:33:53 405][HUB2-1][Inf]–Close device handle 0x00000194

Based on the log it seems like my usb cable was removed but it never did.

Which version of the tool are you using?

I am using v2.2.0

I use 2.2.4, but I can’t see that being a huge issue.
Does it always fail at the same point?

Yeah it fail the exact same place. I thought it could be my cable since it is a diy cable. I just solder the two USB type A ends together keep same pin outs. I may need to go out and purchase a manufactured M/M USB type A and try again. I mean the box is toast at the moment. The red LED is solid red and boot nothing at the moment (not internal eMMC or flash card or USB). I guess my only option to debrick this is through M/M USB flash.

ROM may just be incompatible.

After a hairy weekend from trying to flash Aidan’s custom rom as suggested above, I soft bricked my box. Luckily I was able to find my USB UART and see the output. Somehow my box after the fail flashed. It got stuck in a boot loop. So yes, I can theoretically connect M/M and USB Burn Tool detects it but it would not flash any ROM whatsoever. It would always fail at UBOOT about 4%.

I was able to finally resurrect the box using the following method.

If I create a SD card using AML Boot card maker, I was able to boot off the card. It took a while to find a working img to allow it to boot fully into Android. Aidan’s img would not boot fully, I would only see a green screen.

I then adb reboot recovery and I found a Sunvell T95x which was a ZIP format. In recovery, select update from EXT, I was able to select the ZIP file and standard Android flash into eMMC again.

I now can boot from the eMMC. However, this still does not fix my issue with trying to get CoreELEC NG to boot. I guess I still have to find a compatible ZIP to flash.

I am not 100% sure about flashing with USB Burn tool since even after I resurrect the box and tried to flash, it would fail at 4%. USB UART would stop at the error. When I connect to UART again, I will post the output.

@kshi I was not able to successfully flash the your suggested ROM.

@Betatester also has an image that he’s had luck with on S905x boxes. Maybe ask if he’ll share the one he uses?