Joao Cordeiro Posted December 24, 2025 Posted December 24, 2025 Actually, I was able to find that IC but in chinese version.. https://datasheet4u.com/datasheets/I-CORE/AiP1628/1571692 Looks like its some kind of low level chip that probably transforms low voltage signals into higher voltage, like the ones used on ethernet ports. Probably to power up the LCD leds. 0 Quote
shexplorer Posted January 11 Posted January 11 Hi there, I also bought one (V1.5) and tried to use armbian. Unfortunately, I managed to brick it. I booted your image @johlnx from sd, that worked. Then I overwrote the internal EMMC with your image and the box won't boot anymore. Any idea how I can fix it? I made an backup of the original image, but I also read that it may be incomplete because of read protection in uboot of the emmc? I also tried to get into MaskMode by pressing the button and connecting the USB 2.0 to my Windows-PC but no device is discovered. I attached the serial uboot log. Hope somebody has a suggestion how i can boot something again. Thanks boot_with_armbian_sd_insert.log boot_without_sd_insert.log 0 Quote
Joao Cordeiro Posted Monday at 07:48 PM Posted Monday at 07:48 PM (edited) @shexplorer I did something similar to a tv box i had around, not this model. Generally, the cpu comes with some sort of uboot. Written in firmware not emmc. The catch is that that uboot usually writes its persistent environment on the eMMC. And most of the time its not even a file on a partition, like in (and this is an example) between bytes 2000 to 8000 of the mmc. This uboot is only visible via serial console. no hdmi output. (and its quite old) This uboot then attempts to chainload the mmc or usb uboot. And its at this phase you get image. So on my setup, i had CPU uboot but no environment (because i smashed it with my armbian image...), and that environment was needed to boot both mmc or usb. Using a serial port (and pressing control +c ) i was able to instruct uboot it to boot armbian on the usb drive. And i mean manually with command like fatload 0x1000000 usb0.1 linux.img. But every time i reloaded would go back to the endless loop. So the next step was to find a stock image of my device and dump it into the emmc, via usb booted linux. (i actually only copied like the 1st 10MB, only needed uboot env, not the chinese android) Please know that this is not the image you download from any manufacturer website, those are snap-in upgrades that only change part of the emmc, you need a image that someone extracted with dd command from the entire mmc. After that i swore to never touch that emmc again... Maybe this is your problem too Get a serial connected to your device and check if you can see the cpu level uboot. If it is the same issue, maybe someone here can give you the 1st 10MB of their device, if you create a new thread asking for it. Edited to place the "e" on emmc. tnx johlnx for the fix Edited 2 hours ago by Joao Cordeiro 0 Quote
johlnx Posted Monday at 09:35 PM Posted Monday at 09:35 PM @shexplorer here are the first 10MB of the internal emmc. Extracted with dd if=/dev/mmcblk1 count=10 bs=1M | gzip > x88pro13_first_10MB_of_mmcblk.gz. please unzip first. see also the solutuion of this page: x88pro13_first_10MB_of_mmcblk1.gz 0 Quote
Joao Cordeiro Posted 1 hour ago Posted 1 hour ago (edited) @shexplorer, connect it to the internal serial port using a USB-to-serial adapter. If you don’t have one, they’re very cheap—search for CH340G on Amazon. Quick safety guide on serial adapters: 1 - Your device has 3.3v serial , check the jumper on the CH340G to make sure its on 3.3v and not 5v 2 - DO NOT CONNECT VCC/3.3v/5v Pin!!! Only connect: ground RX TX 3 - Connect ground from to ground from device Connect RX from usb to TX from device Connect TX from usb to RX from device Let us know if you are having issues with the bound rate or the pinout on your serial header in your device (send us a picture, in that case) Once you get serial, you should see the boot looping endlessly, holding control + c should stop the loop. Then you get an uboot console. there you can chainload your usb or external mmc uboot. With something similar to(ask chatgpt to help you in case of issues): usb start # starts usb devices usb tree # lists devices and partitions usb info # shows USB device info ls usb 0:1 / # lists files on partition 1 of usb 0 fatload usb 0:1 0x82000000 u-boot.bin # 0x82000000 is an example that may work. if it does not, ask chatgpt for other values # u-boot.bin is the usb uboot you want to chanload, might have another name.... ls usb 0:1 will help you find other files # go 0x82000000 # chainloads what you loaded into 0x82000000 memory address. if you change this on the previous line, change it here also. Besides trying to chainload uboot, you can also load linux kernel + initrd + dbt files directly. Again, chatgpt will help you with those commands. But i found chainloading usb uboot easier. It you reach linux console, remember that once you reboot, everything will loop again. So you need to fix what you did to the emmc before rebooting. You have 3 options to fix: 1 - Restore your full backup. -> you get manufactorer android back 2 - Restore 10MB of your backup or johlnx's backup -> you should be able to boot again from usb or external mmc 3 - You can calculate exacly what you need to copy, to maintain your emmc linux but also recover uboot. There should be some space between the partition table data and the 1st partition. Lets imagine, GPT uses 1MB and 1st partition starts at 10MB, you can copy the data between 1MB and 10MB from your backup into the space between 1MB and 10MB of your EMMC. (this is not trivial to do, but again chatgpt can help) This way, you still have a linux on the EMMC, but you have recovered the Uboot env. Edited 1 hour ago by Joao Cordeiro 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.