Install OpenWrt on ZTE ZXV10 H201L


This is a router having U-Boot bootloader

There are no information on how to boot using tftp method.
Already tried some boot methods using reset button with no result.

Any special info about flashing this model except from general flashing info?

U-Boot, simple (as manipulating a booatloader can be, I suppose).

For the manual, see:

You should be able to boot the BIN, then flash sysupgrade permanently via the web GUI. You may also want to update the Wiki after you succeed.

An example using Meraki MX60 (which also uses U-Boot):

I [really] hope this helps out.

(I suggest running printenv to backup/copy the config before changing anything.)

The manufacturer has stripped down the U-Boot and removed the needed tools to install another firmware. Especially,

  1. there is no tftp command, so the bin file cannot be loaded to memory in order to boot into it. Without tftp, the commands bootp and rarpboot do not function either.

  2. There is a httpd server command, which accepts a bin file through web GUI but it does not install it (it says something like "bad file type")

If someone could help !

Some info from the UART connection:

AMAZON_S # printenv
bootcmd=run flash_flash
preboot=echo;echo Type "run flash_nfs" to mount root filesystem over NFS;echo
nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=$(serverip):$(rootpath)
ramargs=setenv bootargs root=/dev/ram rw
addip=setenv bootargs $(bootargs) ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname):$(netdev):on
addmisc=setenv bootargs $(bootargs) console=ttyS1,$(baudrate) ethaddr=$(ethaddr) phym=$(mem) mem=$(vpe0mem) panic=1 vpe1_load_add1
flash_nfs=run nfsargs addip addmisc;bootm $(kernel_addr)
flash_self=run ramargs addip addmisc;bootm $(kernel_addr) $(ramdisk_addr)
net_nfs=tftp 80500000 $(img_kernel);run nfsargs addip addmisc;bootm
net_ram=tftp 80500000 $(img_kernel);run ramargs addip addmisc;bootm
load=tftp 80500000 $(img_uboot)
flash_flash=run addip addmisc; bootm $(kernel_addr)
ethact=amazon_s Switch

AMAZON_S # help
? - alias for 'help'
askenv - get environment variables from stdin
autoscr - run script from memory
base - print or set address offset
bdinfo - print Board Info structure
bootm - boot application image from memory
bootp - boot image via network using BootP/TFTP protocol
cmp - memory compare
cp - memory copy
crc32 - checksum calculation
echo - echo args to console
erase - erase FLASH memory
flinfo - print FLASH memory information
go - start application at address 'addr'
help - print online help
httpd - start http server
imls - list all images found in flash
loop - infinite loop on address range
md - memory display
mm - memory modify (auto-incrementing)
mtest - simple RAM test
mw - memory write (fill)
nm - memory modify (constant address)
printenv- print environment variables
protect - enable or disable FLASH write protection
rarpboot- boot image via network using RARP/TFTP protocol
reset - Perform RESET of the CPU
run - run commands in an environment variable
setenv - set environment variables
SPI flash sub-systemsflash - SPI FLASH sub-system
sleep - delay execution for some time
tag - set or get or list tag parmeters
version - print monitor version

I have same device and same issue cant copy initramfs-kernel.bin to ram. I tried bootp and rarpboot but device automatically reboots and loads default firmware, so is there a way to boot initramfs-kernel.bin from ram ?

There is similar device homehub_v5a which has same problem with booting custom LEDE/OpenWrt firmware, we need to Enable UART boot by connecting boot_sel2 to GND to get

ROM VER: 1.1.4
CFG 04

but I don't have and idea how to find boot_sel2 pad/connector on this device

I found bootsel0 and bootsel2 pads on PCB. Make jump wires like I draw it on image

for just short amount of time until you see CFG 04 on serial monitor, it would be best to use two buttons to just release them and then you can upload u-boot.asc.You should use instructions below to make u-boot

please use openwrt master
cd into your openwrt directory
patch -p1  add_zte_h201l.patch
rm -rf tmp
make menuconfig and select all zte bootloader
make package/boot/uboot-lantiq/{clean,compile}
you should have the bootloader in bin/targets/lantiq/xway/

and use these instructions afterwords