Sysupgrade zbt z8102ax-emmc not working

i use an selfcompiled openwrt 25.12. kernel 6.12 on zbt z8102ax-emmc (based on openmptcprouter).

sysupgrade of a new binary does not work with the firmware upgrade utilty.

i need to set back the rooter to the stock firmware (openwrt 21.3) and flash there with the included firmware upgrade tool.

any idea how to configure/compile the also my custom bild flashes to the right partition?

any ideas?

thanks a lot!

  • Where did your source code come from?
  • What is running on the device right now? (ubus call system board)

I’ve added support for the v2 and emmc variant is not supported in Openwrt maineline (as I don’t have it)

EDIT: I now see that openmptcp has support for that variant so you just needs to integrate their dts https://github.com/Ysurac/openmptcprouter/blob/develop/6.6/target/linux/mediatek/dts/mt7981b-zbt-z8102ax-eMMC.dts into the openwrt builds - see my commit for reference https://github.com/openwrt/openwrt/commit/c908fc7d9591163ae4836f31b7e6db4611e6bc7e

yes i did, but sysupgrade to emmc don't work on openmptcprouter

code comes 99% from openwrt

build.sh with distribution = openwrt

{
"kernel": "6.12.62",
"hostname": "OpenMPTCProuter",
"system": "ARMv8 Processor rev 4",
"model": "ZBT Z8102AX (EMMC)",
"board_name": "z8102ax-emmc",
"rootfs_type": "squashfs",
"release": {
"distribution": "openwrt",
"version": "v0.64-snapshot-6.12",
"firmware_url": "https://downloads.openwrt.org/",
"revision": "r0+32439-5578eb69c2",
"target": "mediatek/filogic",
"description": "openwrt v0.64-snapshot-6.12 r0+32439-5578eb69c2" ,
"builddate": "1767033684"
}
}

self compiled with adjusted openmptcprouter scripts

This is the equivalent of a fork as it is no longer code that is maintained by the official project.

You have two approaches you can consider:

  1. Use 100% official OpenWrt code (download the source code from openwrt.org and do not use the openmptcprouter scripts) and see if the problem still manifests. If it does, people on this forum can help try to figure out why. If the problem doesn't manifest when compiling 100% official OpenWrt source code, it points squarely to something that happens as a result of the openmptcprouter scripts (and for that, see below...)

or

  1. ask the openmptcprouter maintainers/users for assistance if you're using their code modifications. We don't know what their scripts do and how it might affect things, so we cannot help here.

code comes 99% from openwrt

build.sh with distribution openwrt

ok, i will transfer the files to my openwrt fork and see what happens, but it takes more or less the openwrt files and adds dts

I understand that, but the 1% could make material changes to the resulting binaries and could be the source of your issue.

So the first step is to understand if the problem exists on a 100% official build.

show us some code (public repo) and retrieve the failure log via serial console

1 Like

my repos with 100% openwrt + dts are:

build (github-action): https://github.com/lblabr/openwrt-25.12

This is not an official build...

We're asking you to build 100% from the official OpenWrt repo. That means no changes to the build whatsoever so that it can be determined if the problem exists in the official source code.

the device is not supported, how should i build ? and after making sure that it works, pr ?
what is not pure openwrt? its 100% fork, with my newbee trying to add the device (back and forth ...)

so: how is the correct process? (newbee question)

i need to add the dts, isn't ?

Your device is supported -- 24.10.5 has it here:

i have zbt z8102ax emmc not zbt z8102ax it does not matter?

good question... I can't confirm or refute the idea that these are different models.

the manufacture has also 2 types of dts (openwrt 21.3) and says that are different models

therefore i added another dts, taken from openmptcprouter

there are also two diffrent types of dts, it seems to make sense from an non expert view

as a non expert, how the image/sysupgrade knows to go to emmc? and the size ?

i thought forking and make changes in the own repos is the way to go?

shows the diffs, to the original openwrt repo