No announcement yet.

[SOLVED] Amlogic S912 H96 Pro TV stick dongle mini PC bricked

  • Filter
  • Time
  • Show
Clear All
new posts

  • [SOLVED] Amlogic S912 H96 Pro TV stick dongle mini PC bricked

    >>>>>>>>>>Scroll down to the bottom of this post for the solution<<<<<<<<<<

    I left the post intact in order to compare your situation with the one I had


    I'm new to the forum and wanted to say thank you for all that I've learned here!

    === Device ===

    Amlogic S912 H96 Pro TV stick dongle Mini PC
    Pictures of device internals are attached for reference.
    (Heat sync removed for pictures)

    === Issue ===

    My TV dongle would not boot after installing SuperSU.
    I used the USB Burning Tool v.2.0.8 to try and flash the firmware file aml_7.1_s912_q9377-S912-KDMC_mac-20170515.img.
    At some point I understood that I need to first press start and then connect the device.
    So after shortening my USB cable and unchecking "Erase flash" and "Erase bootloader" I was actually able see 95% progress of loading the ROM.
    At 95% it failed with the following error:

    [02:57:53 004][Global][Inf]--Host: Intel(R) 7 Series/C216 Chipset Family USB Enhanced Host Controller - 1E26
    [02:57:53 004][Global][Inf]--DevPath:\\?\pci#ven_8086&dev_1e26&subsys_397717aa&rev_04#3&11583659&0&e8#{3abf6f2d-71c4-462a-8a92-1e6861e6af27}
    [02:57:53 004][Global][Inf]---->Roothub:USB#ROOT_HUB20#4&2be5801c&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
    [02:57:53 105][Global][Inf]-------->[Port0]USB#VID_8087&PID_0024#5&294335c8&5&1#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
    [02:57:53 105][Global][Inf]---------->[Port0]NoDeviceConnected
    [02:57:53 105][Global][Inf]---------->[Port1]NoDeviceConnected
    [02:57:53 106][Global][Inf]---------->[Port2]Other device
    [02:57:53 106][Global][Inf]---------->[Port3]Other device
    [02:57:53 106][Global][Inf]---------->[Port4]NoDeviceConnected
    [02:57:53 106][Global][Inf]---------->[Port5]NoDeviceConnected
    [02:57:53 106][Global][Inf]---------->[Port6]NoDeviceConnected
    [02:57:53 106][Global][Inf]---------->[Port7]NoDeviceConnected
    [02:57:53 106][Global][Inf]-------->[Port1]NoDeviceConnected
    [02:57:53 106][Global][Inf]-------->[Port2]NoDeviceConnected
    [02:57:53 106][Global][Inf]--Scan USB host controller complete
    [02:57:53 107][Global][Inf]--Update data center with HubMap
    [02:57:53 107][Global][Inf]--Update hub2 device data
    [02:57:53 107][Global][Inf]--Update HUB2-1
    [02:57:53 107][HUB2-1][Inf]--Update device path
    [02:57:53 107][Global][Inf]--Update HUB2-2 \\?\usb#vid_1b8e&pid_c003#6&7f19e10&0&2#{a5dcbf10-6530-11d2-901f-00c04fb951ed}
    [02:57:53 107][HUB2-2][Inf]--Update device path
    [02:57:53 107][Global][Inf]--Update HUB2-3
    [02:57:53 107][HUB2-3][Inf]--Update device path
    [02:57:53 107][Global][Inf]--Update HUB2-4
    [02:57:53 107][HUB2-4][Inf]--Update device path
    [02:57:53 107][Global][Inf]--Update HUB2-5
    [02:57:53 107][HUB2-5][Inf]--Update device path
    [02:57:53 107][Global][Inf]--Update HUB2-6
    [02:57:53 107][HUB2-6][Inf]--Update device path
    [02:57:53 140][HUB2-2][Inf]--Device is connected
    [02:57:53 140][HUB2-2][Inf]--Close device handle 0x00000a90
    [02:57:53 191][HUB2-2][Inf]--Open device handle \\?\usb#vid_1b8e&pid_c003#6&7f19e10&0&2#{a5dcbf10-6530-11d2-901f-00c04fb951ed}  0x00000a90
    [02:57:53 242][HUB2-2][Inf]-------------Download DDR.USB-----------
    [02:57:53 242][HUB2-2][Inf]--2-2-0-0
    [02:57:53 242][HUB2-2][Inf]--Control write pll reg1 0xd9000000:0x000000b1
    [02:57:53 743][HUB2-2][Inf]--Control write pll reg1 0xd9000000:0x00005183
    [02:57:54 244][HUB2-2][Inf]--Write initial succeed
    [02:57:54 244][HUB2-2][Inf]--Upload encrypt at 0xc8100228
    [02:57:54 244][HUB2-2][Inf]--ulValue = 0xadfc318c
    [02:57:54 244][HUB2-2][Inf]--Read encrypt value succeed
    [02:57:54 252][HUB2-2][Inf]--Transfer complete
    [02:57:54 252][HUB2-2][Inf]--Run at address 0xd9000000
    [02:57:54 253][HUB2-2][Inf]--RunInRam succeed
    [02:57:54 604][HUB2-2][Inf]--IOCTL_IDENTIFY_HOST_Handler ret=-5 error_msg=libusb0-dll:err [control_msg] sending control message failed, win error: A device attached to the system is not functioning.

    Later in the Log I can see this output which seems corrupted:

    [02:57:55 106][HUB2-2][Err]--[02:57:55 106][HUB2-2][Inf]--Failure : 2, FailureMax : 3
    [02:57:55 606][HUB2-2][Err]--usb_get_configuration ret=-5 error_msg=sending get cached configuration ioctl failed, win error: The system cannot find the file specified.
    [02:57:55 606][HUB2-2][Inf]--Failure : 3, FailureMax : 3
    [02:57:55 727][HUB2-2][Err]--[0x10105002]Romcode/Initialize DDR/Read initialize status/USB Control setup error
    [02:57:55 727][HUB2-2][Inf]--Close device handle 0x00000a90
    [02:58:07 369][Global][War]--User click stop button
    [02:58:07 370][Global][Inf]--Enable burning 0
    [02:58:13 516][Global][Inf]--User click open button
    [02:58:19 476][Global][Inf]--Image path C:\Users\DewHead\Downloads\H96 PRO\H96 PRO\aml_7.1_s912_q8723bs-H96PROmini_KDMC_mac-20170810\    ¬ט¯ ױ]4 €n{ט¯ ¨א#€n{i<ט¯ Fi¶פzר¸zז  ¶פzpט¯ ֺ}[Pץw         ˜פz &zָ‹z0   &z  0 ˜d   ©ֻ|[ˆפz    ₪ט¯ ר§0 œט¯ ji  #    x“z¨ט¯ †|[x“z÷ֽLי¯ *4 ט¯ ¼»ֽLטט¯ טט¯ לט¯ לט¯ נט¯ נט¯ פט¯ פט¯ רט¯ רט¯ D: 8$yX#yŸzטžzˆ“z˜פzˆֶ#ֶ#ר¸z    xי¯ Z׳9    „י¯ ם'4 ¨א#“z       0‘: ר¶z$»ֽL         „י¯ (י¯     (י¯ ²„•[÷„•[ֹביQ  ר¶z    <י¯ ם¯ ©ײ9    ם¯ ׂX0 ¨א#    $&: @Ty°¿ֽL¨א#¨א# ע¯ @Ty˜ָw,Sz[                      (³     c        ¬{[ {[                            °„t                    p                              Pִz          4iDi    ֹwa m l _ 7 . 1 _ s 9 1 2 _ q 8 7 2 3 b s - H 9 6 P R O - d o n g l e _ K D M C _ m a c - 2 0 1 7 0 8 1 0 . i m g           C : \ U s e r s \ T a l \ D o w n l o a d s \ H 9 6   P R O   m i n i _ S 9 1 2 _ q 8 7 2 3 b s _ 1 0 0 8 2 0 1 7 _ A n d r o i d T V B o x . e u \ H 9 6   P R O   m i n i _ S 9 1 2 _ q 8 7 2 3 b s _ 1 0 0 8 2 0 1 7 _ A n d r o i d T V B o x . e u \ a m l _ 7 . 1 _ s 9 1 2 _ q 8 7 2 3 b s - H 9 6 P R O m i n i _ K D M C _ m a c - 2 0 1 7 0 8 1 0 \ a m l _ 7 . 1 _ s 9 1 2 _ q 8 7 2 3 b s - H 9 6 P R O - d o n g l e _ K D M C _ m a c - 2 0 1 7 0 8 1 0 . i m g                                                               נTz[ Uz[ ע¯ °¿ֽL„מ¯ ³ 9    ם¯ k0  ע¯ (ם¯ ֲ¼’[ ע¯ Dם¯ ₪¾’[ €  9        ע¯ €  hם¯ *‎•[ €               €   ע¯     ¸ם¯ ¾T›[ €               ע¯  ע¯  ²³T{[ €                                     ּם¯ $[          מ¯ :L›[ €      ¹ויQ   ע¯  ²³        *׀ׁ‹Xם¯ ִK›[נGt†ž3‏ה±Ht:ƒHtנ’w    ¡      »ַ         ¡    ע¯ HƒHtסזיQ     ְמ¯ z׀ׁ‹YŸŠ[tמ¯ «Ft¡      »ַ     ”מ¯ P;›[נ’w    4ן¯ ‎›ž[    °מ¯ *K›[   €      ¬מ¯  ע¯     ָמ¯ ֻƒ0    €       ע¯ @ן¯ ּ/›[   €      חיQYŸŠ[                                     8ן¯  ²³                    חיQחיQמ¯ œן¯ 9[    dן¯ X2›[ ע¯     €       ׃"  ¨ן¯ ¯ŸŠ[    €      חיQ          ²³׃"÷   ֻw¸נ¯ R¬[    װן¯ »אGt    €       ֽ«÷    YŸŠ[ רן¯ IˆHtYŸŠ[    €           ָנ¯ E±Ht   €      צ־ׁ‹    0²³נc׀Gt$              0   %°Ht     ע¯ 4נ¯ ¼ס¯ js[pylנ¯ ?1›[py ›Ft ע¯ ״נ¯  ²³8;³x£[` €YŸŠ[                                    צ־ׁ‹נ¯ =›Ft$ס¯ נGt†ž3    4ס¯ GtYŸŠ[       €            
    ֿׁ‹0²³ ²³׀Gt?1›[ €  0²³YŸŠ[             ע¯ לנ¯  ²³¼ס¯ נGtn 3‏@ס¯  ŒGt>>~‹|ס¯ bš[0²³     ע¯ ~›[     ע¯    ¼ס¯     0²³           ָס¯ [•[   ‘שיQ`< `<   0 €                ע¯ pA     ˆס¯ p‏¯ חMž[    |‏¯ E0 ¬ֽL   ¸ן#`<          0 ¸ן#¸ן#   x@³XK´<.:                       (³  ׃²        ¬{[ {[                        8   נ’w             wf   f                                       0ew[    ר*w[ ע¯       ²    ¨&³װע¯ ױw¨&³    8ןx$|¢[            ֶף8uִ@:     ִ@:     ִ@:     ” z[                      (³‚  ְw        ¬{[ {[                            @טs                                                   ָQw         €                      : <µ:                       (³$R             ¬{[ {[                            0’w                    h׀#w[א ְְְ      נננ                                                                                            ´ ¶                       z[xֱ#           z[אַx                  ˆ¸: l¸: ״÷: ¼:     $|¢[    $ˆ      א °y       ִף¯     ˜       d·: 5
        ¼:     $|¢[    $ˆ      נננ רPw       ִף¯     ˜       d·: ]
    ‘    ¼:     $|¢[    $ˆ      נננ `Qw       ִף¯     ˜       d·:  
    ¾    ¼:     $|¢[    $ˆ      נננ (ֺw       ִף¯     ˜       d·: –
        d·:         Tֲ: 8ִ#                              ס  ֽ                             €ֵ:                    
    Now I'm at a point where the flash fails at 2% and the device will disconnect.
    I realized that if an SD card is inserted, the device will not be recognized at all.
    Once I remove the SD card the device is recognized.

    If I connect the dongle to a TV it shows nothing at all.
    TV just says No Signal, where before the failed flash, It would show the H96 logo.

    I've tried to create a bootable SD card with Burn_Card_Maker工具 but that does not help.

    Is the device totally bricked?

    Any advice is appreciated!

    How to unbrick an Amlogic S912 H96 Pro TV stick dongle mini PC by shorting pins and flashing Android 7.1.2 + TWRP + Magisk

    This how-to has been translated from instructions found on this Russian forum post.
    Most of the links are from a Russian cloud storage site. If they don't work anymore, you can find what is needed with a simple Google search.
    I am basically organizing the relevant information and links so that it's available in English and easier to understand.

    :::::: Disclaimer ::::::
    As flashing and shorting this or any device may result in permanent damage to the device, you must proceed with caution and under your own responsibility.
    I will not be held responsible in any way if damage of any sort is caused.
    I would recommend double checking every step before execution.

    Now with that out of the way, let's get to it!

    Things you will need:

    - A Bricked Amlogic S912 H96 Pro TV stick dongle mini PC
    - A short USB A to USB A cable. You can cut old phone charger cables and connect the same colored wires but keep it short. I'd sat 20cm in total. Shorter is better.
    - Micro SD card bigger than 2GB but smaller than 32GB (device doesn't support more than that).
    - Small flat-head screwdriver to pry open the dongle and short the pin connections.
    - Computer

    Links to additional software and files that are needed will be provided in the instructions.
    The Russian cloud storage site is in Russian on PC browser. Use Google Translate to translate the page.
    In Chrome browser you should automatically have the option to translate the page on the fly.

    Opening the dongle:

    We'll start with opening the dongle.
    Use the small flat-head screwdriver to pry open the dongle casing.
    It's not sealed very tight and should be easy to open.
    If you do it gently, nothing should break and you will be able to close it back just like new.
    Once you've opened the the dongle, you will need to remove the black heat sync in order to get to the connections that need to be shorted.
    The heat sync is on there with some thermal tape and can be gently lifted. The tape should stay fully intact. Don't get the tape dirty because you'll be sticking it back on.
    In the following pictures you can see the two pin solder connections that need to be shorted. They're the left two pins out of four, marked by a red circle.

    Shorting and getting the device detected:

    OK, now that we know where to short we can install the Burning Tool software and hopefully get the device detected on the computer.
    Download the USB_Burning_Tool v2.0.8 - If the link no longer works you can find this tool with a simple Google search.
    Unzip and open the folder.
    Make sure you have the device driver installed which can be found in the WorldCup_Device folder. Install by running InstallDriver.exe.
    After the driver has installed. go back to the main folder. Right click on USB_Burning_Tool.exe and "Run as administrator".
    Once open, change the language to English like so:

    Now lets connect the dongle to the PC with our USB cable via the OTG port.
    If you're in the state that I was in, the dongle will most likely not be detected.
    This is where we short the pins.
    Take your small flat-head screwdriver and short the two left pin connections by a touch of the screwdriver on both pins at the same time.
    If the board isn't totally fried you should see that it's detected in the Burning Tool.
    This should work regardless of Driver Signature Verification being enabled or not.

    Flashing the rom:

    At this point you should download the specific rom file aml_7.1_s912_q9377-S912_XGO_LP_mac-20171206.img that can be found here.
    Download the zip and extract the .img file.
    Import the .img file to the Burning Tool:

    It will take a few moments for the tool to verify the file.
    Once verified, un-check both "Erase flash" and "Erase bootloader" on the right hand side.
    Leave the rest as is.
    Click start and wait for the file to be loaded to the dongle 100%.
    This will take around five minutes.
    Once you see 100%:Burning successfully in the tool you can rest assure that the dongle is working!

    You can now click on Stop and disconnect the dongle.
    Close is up nicely. You will not need to open it again (crossing fingers).

    Last steps to make it perfect:

    Connect the dongle to a TV and let it boot.
    The first boot will take a few minutes.
    Don't be too excited yet! Wifi and Bluetooth are probably not working.
    We need to restart the device into recovery mode and do a backup with TWRP just so a backup folder will be created.
    TWRP should already be flashed on the device. If not, you can download it from here.
    Shut down the device and insert the MicroSD card.
    Boot into recovery by pressing and holding the reset button with a paperclip until you see the recovery.

    This actually blew my mind because I was sure that this device does not have a reset button but apparently it does!

    You will see a very small hole on the back:

    Once in TWRP, select Backup, select storage as SD card and perform the backup.
    After the backup has completed, unplug the device and remove the MicroSD card.
    Plug the card into the computer.
    Now we are going to basically copy backup files over the existing files in the backup folder that was created just now.
    These files can be found here.
    Download and extract the folder.
    Drill down to the deepest folder and copy the files to the deepest folder on the MicroSD card.
    Insert the MicroSD card back into the device and boot to recovery again.
    This time select restore, select SD as storage and restore.
    After the restore is done, reboot the device and wait for android to boot up.

    Good job! You'r basically done!

    The only thing that's left is to change the language to English.
    In the settings you'll see a small globe icon, select it and find English.


    You have now fully unbricked your device and are now running Android 7.1.2 with TWRP recovery.

    If you would like to root with Magisk it can be found here alongside Magisk Manager APK.
    Just flash in TWRP and install the APK in android.

    This is my first time actually tinkering with a TV box so I'll try to help as much as I can if anyone has a question.
    Last edited by DewHead; 02-07-2018, 13:30.

  • #2
    Happened exactly the same for me. I will try the procedure here:
    Hope it works for you.


    • #3
      Hurray! I got my stick back! just follow the exact steps on the page and use exactly the pins and the firmware version the guy says.


      • #4
        Originally posted by deadrange2001 View Post
        Happened exactly the same for me. I will try the procedure here:
        Hope it works for you.
        Thanks for the suggestion!
        im happy to hear that it fixed your TV dongle.
        N I just need to get home and hope it will work on mine!


        • #5

          deadrange2001, it worked PERFECTLY!
          Thank you for recommending that Russian forum post!


          • #6
            From Russia with love! We are glag to help you!)


            • #7
              I have the same problem , but my H96pro Dongle starts up but freezes on the H96 logo. Do I follow the same procedure as described above to get the dongle up & running again? Also , is there any way I can do all of this on a mac?