[Solved] Zyxel NBG6817 flashing from OEM

Hi everyone, sorry for my pool english,

I break the emmc partition by fdisk, i tried to flash ras.bin from tftp, but it's not working...
So I think the gpt partition must be restored at first, and I found a command ATUG from serial port

ATUG upgrade GPT partition table on GMMC (gpt_main1.bin, gpt_backup1.bin)

but where I can find the gpt_main1.bin?

Here is all the command under U-boot

ATBT    x         bnock0 wrmteenable (1=enable, 0=disable)
ATWM    x         set MAC"address$inworking buffer
ATEN    x[,y]     set BootExtension Debwg Flag ,y=assword)
ATSE    x         show the seed of password ggnerator
AWZ     x[,y,z]   write ZyXEL MAC addr, Country code, HTP"flag
ATCB          copy from FLASH to working buffer
ATSB      "     ! save working buffer to FLASH
ATSH              dump manufacturer!related data in ROM
ATCO    x         set country code in working!buffer
ATFL    x         set HTP flag in working buffer
ATSN    x  ! $    set serial number in FLASH ROM
ATGU              go bcck to!mester loader
ATCL              erase U-Boot environment, sjould ce$reboot
ATCR              erase rootfs_data partition
ATRV    [x,y-z,u]RAM read/write test (x=level, y=start addr, z=end adfr, u=iteraions)
ATGO              boot up whole system
ATUR    x  "     !utgrde RAS image (filename)
ATUB    x         upgrade ZLD kmage )fmleame)
ATUG              upgrade GPT partition table on GMMC (gpt_min1.bin, gpt_backup1.bin)
ATUD    x         upgrade ROOD image$(filename)
ATCD              erase RomD partition
ATLD    x.[y]  ! $load file X to memory address Y via TFTP
ATMB    [x,y]   " upgrade firmware image by multiboot
ATDU    x[,y]     dump memor{ or regmsters
ATWW    x,y,z     set memory or registers(x=address. y=vamue, z=len)
ATER    x,y       erase flash from block X to block Y
ATRF    x,y[,z]   read/dump flash to ram/console(x=flash offset, y=len,z=ram address)
ATWF    x,y,z     write data from RAM to flasi(|=RM address, y=flash offset, z=len)
ATDS    x,y       duop data of pare area in page Y of block X
ATSWF   x         switch flash$tye for command ATER,ATRF,ATWF(x=0(NOR), 1(NAND))
ATCOP   x,y-z$   compare two memory space x and y with length is z
CTLED   [x,y]     set LED (x=led no, y=blink mode)
ATPIO   x[,y[,z]_ set GPMO (x={d|s|w|r}, y=pio num, z=write data)

The easiest option might be to boot an initramfs image and re-creating the partition table.

Thank you for your advice,
but I can't find any command under U-boot which support boot from RAM or TFTP.
the ATGO for NBG6817 does not support parameter..

lu=tftpboot ${loadaddr} ${dir}u-boot.mbn || setenv stdout serial && echo tftpboot download fail && exit 1;sf probe;sf erase ${ldr_paddr} +${ldr_psize} || setenv stdout serial && echo sf erase fail && exit 1;sf write ${fileaddr} ${ldr_paddr} ${filesize}

so tftpboot should be available

Thanks, where can I run the tftpboot? On my ubuntu server(installed tftp service) or NBG6817's serial port interface?
It seems only these AT* command are supported under serial port interface..

Hello everyone and sorry for my English and poor understanding of OpenWrt. I installed the last stable release of OpenWrt 18.06.2 and I can not understand why only 51.14 MB are available for installation of programs. Can anyone explain me how to access the 4GB eMMC?

That value is correct, please see https://openwrt.org/toh/zyxel/nbg6817#flash_layout for details.

Something goes wrong =( partition containing extroot isn't mounted during boot. option delay_root is set to 15.

I'm troubled as I can't install openwrt with the firmware upgrade tool of the Zyxel NGB6817.
Each time I have the reply :
Firmware upgrade error...

The flash image upload failed. The error messages are as follows:
That is not the latest firmware, so can not update it.

Firmware of the device is actually V1.00(ABCS.9)C0

I tried different names like : factory_18.06.4-ipq806x-zyxel_nbg6817-squashfs-mmcblk0p5-rootfs.bin
but each time is the same answer...
Hope someone can help me :wink:

Thanks for support :slight_smile:

Please read https://openwrt.org/toh/zyxel/nbg6817#oem_easy_installation - and be happy that your attempt failed, as your approach would have (soft-)bricked your device.

Just to spell it out explictly, while it's possible to install 18.06.x if you follow that procedure exactly (and understand what it does), the installation got much simpler after 18.06.x, with OpenWrt master newer than r7959-g8e9a59a6b9 (2018-08-28) or the 19.07.x branch. Even if you do want to use the stable 18.06.4 release instead of the moving targets of master/ 19.07-snapshot, you really should use a more current (snapshot) factory image for the initial installation and downgrade (don't keep settings) from there.

  • 17.01.x: possible (but hard-) to install, if you know what you're doing - but strongly recommended against.
    It lacks proper wifi calibration (may damage the hardware - or 'just' not work in the first place), dual-boot not supported yet, the overlay isn't persistent yet.
  • 18.06.4: possible (but hard-) to install, if you know what you're doing, functionally o.k. and safe to use, once installed, and working well (dual-boot supported).
  • 19.07~ or master: simple to install from the OEM webinterface, using the factory image - working really well (dual-boot fully supported).

Be aware that master snapshots do not have a webinterface (luci) preinstalled, so you can only access your router via ssh (and install luci from there).

A temporary workaround, until 19.07.0 gets released, would be to install a 19.07-SNAPSHOT image (a daily pre-release snapshot of what 19.07.0 might become) for the time being, as those do contain the webinterface (luci). You can either safely downgrade (don't keep settings!) to 18.06.4 from there or just stick to the pre-release 19.07-SNAPSHOT branch for the next couple of weeks.


You need the zyxel_nbg6817-squashfs-factory.bin (yes, the actually downloaded file will expand the filename with the current version/ git hash) image for installing from the ZyXEL OEM webinterface (or tftp recovery), while upgrading/ downgrading OpenWrt uses the corresponding sysupgrade image instead.

I do recommend to install luci-app-advanced-reboot afterwards.


Ok many thanks for your advices very well explained.

So if I understand well (I can be wrong again...)

I have to upgrade thru the firmware upgrade tool the file named: openwrt-19.07-snapshot-r10306-d97c6d9f09-ipq806x-zyxel_nbg6817-squashfs-factory.bin then install luci-app-advanced-reboot (is there a guide to do that step by step?)

Thanks again :wink:

Correct (at least for today, tomorrow's snapshot will be named slightly differently).

That is optional, but recommended for this device, the steps are simple (via a ssh session):

# opkg update
# opkg install luci-app-advanced-reboot

Alternatively this is also possible via OpenWrt's webinterface (luci-app-opkg), under System/ Software.

1 Like

Awesome, thank you so much

Hi Again here,
I'm now on OpenWrt !

I tried to create a samba storage interface on that now.
I'm with version 19.07 snapshot of today.
I don't found the mount menu under "system", I guess it is not native but how to add it?
Nothing found in software list linked to that or I missed somthing.


You need to install block-mount.

Seems like your initial problem (flashing from OEM) is solved.
If it really is, please consider marking this topic as [Solved]. See How to mark a topic as [Solved] for a short how-to.

Greetings, today I flashed my NBG6817 trough web interface from genuine firmware V1.00(ABCS.9)C0
I uploaded this file form web interface Firmware Upgrade: openwrt-19.07-snapshot-r10321-c85f9a245a-ipq806x-zyxel_nbg6817-squashfs-factory.bin
and it worked well, big thanks to active members on this forum :laughing:

1 Like

I'm not the creator of the topic so I can't mark it as solved

Oops, my fault.

Anyways, 2 confirmed successfull flashes makes me think that this topic can be declared as solved.

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.