Ubootmod layout for Cudy TR3000

Initially, Cudy TR3000 has ~40mb free userspace in OpenWrt, but there is an ubootmod making use of something like 85-90mb. This PR was created by @1715173329 almost 4 months ago:

I've tested it on my Cudy TR3000 and it works perfectly fine. Is there any chance it's just been forgotten under many other PR's? It would be super handy to have it approved.

2 Likes

By the way, does anyone know how to get the label wifi password?

I think it would be super handy to get wifi networks enabled after flashing/resetting the router with wifi labeled on the router sticker.
Since it's mentioned in the DTS where to get MAC, I've found the way to get the wifi network names exactly the same as on the sticker via this code:

MAC_HEX=$(dd if=/dev/mtd3 bs=1 skip=56832 count=6 2>/dev/null | hexdump -v -e '6/1 "%02X"')
MAC_SUFFIX=${MAC_HEX:8:4}
SSID_2G="Cudy-${MAC_SUFFIX}"
SSID_5G="Cudy-${MAC_SUFFIX}-5G"

But I can't find out the password. Anyone have a clue where to search?

Nevermind, Cudy support told me they are encrypting the password from bdata.

By the way, we need only 4 more approving reviews to merge this PR. Would you guys review and approve it if you have the contributor tag?

Is it safe to flash from intermediate FW to snapshot after repartitiong mod? Or do I have to do partinion tricks mentioned in PR?

Thks

You have to do everything mentioned in the PR

I see it's merged, and images are being built - https://firmware-selector.openwrt.org/?version=SNAPSHOT&target=mediatek%2Ffilogic&id=cudy_tr3000-v1-ubootmod.

1 Like

Yes, already tested the Snapshot, it's working fine. Do you know when is the 24.10.2 release expected?

Won't be there AFAIK, unless someone back ports it, like it was done with the initial TR3000 PR into 23.05.

Backport is there in PR https://github.com/openwrt/openwrt/pull/18945 I hope it will be merged before the release. I just thought if there are any ETA on 24.10.2?

1 Like

Check if it's been tagged, if not, there's no ETA.
I haven't been looking.

So snap is ok to test? Should be built with this commit

Sure, but it'll be harder to install kmods after 24hrs.

If you want vanilla OpenWRT 24.10.1 ubootmod for Cudy TR3000 128 with kmods etc I build it: https://github.com/fildunsky/Fudy-MT3000
Working fine on my Cudy TR3000.

1 Like

Hello. Thank you for releasing vanilla 24.10.1. I’m also especially grateful to the publisher of ubootmod.
After applying the necessary my configurations to 24.10.1-ubootmod and being satisfied with the operation tests, I created an image using the imagebuilder through a self-build. However, I encountered two issues during this process, so I’d like to ask for your help.

Issue 1: The imagebuilder successfully output a sysupgrade.itb file with the necessary packages added, as expected.
After flashing this image while preserving the current settings, it initially seemed to work fine. However, upon closer inspection, the Status > Overview > Port Status display showed all five ports as inactive, resembling a switch with no active ports. The expected eth0 and eth1 ports were not displayed.

Issue 2: When I flashed the vanilla sysupgrade.itb created from the self-build, the device bricked... The status LED blinking red.
When I powered on the device while holding the reset button, the status LED turned solid pink. In this state, I was able to send the initramfs-recovery.itb file via a TFTP server, and the device booted successfully.
I tried flashing the self-built sysupgrade.itb again, but it bricked once more.
Next, I flashed the vanilla image you provided, and it booted normally.
What could be the difference between the package-included image and the two vanilla images? I know I should investigate the boot log via a UART connection, but since the device booted successfully, I haven’t gotten around to it yet.

Question: I performed the self-build with the following steps. Is there anything incorrect or missing in my process?

wget https://github.com/openwrt/openwrt/archive/refs/tags/v24.10.1.zip
unzip & cd
wget https://downloads.openwrt.org/releases/24.10.1/targets/mediatek/filogic/config.buildinfo -O .config
wget https://patch-diff.githubusercontent.com/raw/openwrt/openwrt/pull/18945.patch
patch -p1 < 18945.patch
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig -- select 'TR3000-ubootmod'
make -j1 defconfig download clean world

Thank you for your help!
(This is machine translated, sorry to my cheap English)

I don't know, I've just used this:

git clone --branch v24.10.1 --depth 1 git://git.openwrt.org/openwrt/openwrt.git 24.10.1
cd 24.10.1
./scripts/feeds update -a
./scripts/feeds install -a

Then recreated everything from this PR into my local cloned folder, checked that all the dependent kmods (wifi and network drivers) are selected with * and build it. Also have you changed FIP and BL2 as mentioned in the PR? They are necessary for ubootmod to work.
P.S. If your lang is RU, you can message me at 4pda

Thanks for the advice.
BL2 and FIP were still for SNAPSHOT. I guess I can just replace these with the ones built for 24.10.1.
I'll give it a try after the weekend. Thank you very much!!

Result report.
I replaced the BL2 and FIP (the current one for SNAPSHOT) with I built myself (with a combination of 24.10.1 source and patch set 18945) ,
The vanilla sysupgrade.tib I built myself started and accepted pings, but dhcp/ssh did not start.
This is a step forward compared to not booting, but I've decided to shelve it for now as I'll need to take my time working on it beyond this.
I reverted BL2 and FIP to the SNAPSHOT version. I will use your 24.10.1 and look forward to the merge in 24.10.2. Thanks for your support.

1 Like

Now that I can use the serial console.

I found the reason why it starts but does not accept connections.
Compared to SNAPSHOT's ubootmod-initramfs and dunsky's 24.10.1-ubootmod-squashfs,
(A) was there, but (B) did not appear in the boot-log.

(A)


	mtk_soc_eth 15100000.ethernet eth0: PHY [mdio-bus:01] driver [RTL8221B-VB-CG 2.5Gbps PHY (C45)] (irq=53)
	mtk_soc_eth 15100000.ethernet eth0: configuring for phy/2500base-x link mode

(B)

	mtk_soc_eth 15100000.ethernet eth1: PHY [mdio-bus:00] driver [MediaTek MT7981 PHY] (irq=POLL)
	mtk_soc_eth 15100000.ethernet eth1: configuring for phy/gmii link mode
	br-lan: port 1(eth1) entered blocking state
	br-lan: port 1(eth1) entered disabled state

In my build of initramfs, the eth0/eth1 interface was not configured correctly, probably because dts was not reflected.

BusyBox v1.36.1 (2025-04-13 16:38:32 UTC) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt 24.10.1, r28597-0425664679
 -----------------------------------------------------

root@OpenWrt:~# cat /etc/board.json
{
."model": {
.."id": "cudy,tr3000-v1-ubootmod",
.."name": "Cudy TR3000 v1 (OpenWrt U-Boot layout)"
.},
."network": {
.."lan": {
..."device": "eth1",
..."protocol": "static",
..."ports": [
...."lan1",
...."lan2",
...."lan3",
...."lan4"
...]
..},
.."wan": {
..."device": "wan",
..."protocol": "dhcp"
..}
.},
."wlan": {
.."phy0": {
..."path": "platform/soc/18000000.wifi",
..."info": {
...."antenna_rx": 3,
...."antenna_tx": 3,
...."bands": {
....."2G": {
......"ht": true,
......"he": true,
......"max_width": 40,
......"modes": [
......."NOHT",
......."HT20",
......."HE20",
......."HT40",
......."HE40"
......],
......"default_channel": 1
.....}
....},
...."radios": [
....]
...}
..},
.."phy1": {
..."path": "platform/soc/18000000.wifi+1",
..."info": {
...."antenna_rx": 3,
...."antenna_tx": 3,
...."bands": {
....."5G": {
......"ht": true,
......"vht": true,
......"he": true,
......"max_width": 160,
......"modes": [
......."NOHT",
......."HT20",
......."VHT20",
......."HE20",
......."HT40",
......."VHT40",
......."HE40",
......."VHT80",
......."HE80",
......."VHT160",
......."HE160"
......],
......"default_channel": 36
.....}
....},
...."radios": [
....]
...}
..}
.}
}

root@OpenWrt:~# cat /tmp/sysinfo/board_name
cudy,tr3000-v1-ubootmod

root@OpenWrt:~# cat /proc/device-tree/compatible
cudy,tr3000-v1-ubootmod.mediatek,mt7981.

Below is my build and installation procedure.
I have confirmed that all patches are applied correctly. But I still think I may have omitted something.

git clone --branch v24.10.1 --depth 1 git://git.openwrt.org/openwrt/openwrt.git 24.10.1
cd 24.10.1
./scripts/feeds update -a
./scripts/feeds install -a
wget https://downloads.openwrt.org/releases/24.10.1/targets/mediatek/filogic/config.buildinfo -O .config
wget https://patch-diff.githubusercontent.com/raw/openwrt/openwrt/pull/18945.patch
patch -p1 < 18945.patch --> suceeded.
make menuconfig --> select target: 'TR3000-ubootmod'
make -j1 defconfig download clean world

unlock & erase & write BL2, FIP
tftp boot ubootmod-initramfs-recovery.itb

Can someone please help me?

I am not sure, but I assume you may miss some essential package (kmod or driver) in your build. I had similar issues with network/wireless, trying to build vanilla OpenWrt for a new device in the past, because I thought the default config should have all the necessary items checked by default but somehow in my case that doesn't happened.

Thanks for bringing this to my attention, I'll compare the lsmod results.