I am using a Cudy TR3000 router and I want to use OpenWRT on it. There are two versions out there - a 128 MB and a 256 MB version. I have the 256 MB version.
The Wiki page contains instructions for expanding the available flash memory because by default there is only 45MB space available:
I am wondering if the procedure is the same for both 128 MB and 256 MB versions. Basically it comes down to the question if the BL2 (ubootmod-preloader) and FIP (ubootmod-bl31-uboot) is the same for both devices.
Any feedback would be appreciated here as I don't want to brick the device.
There is a comment from a Cudy engineer on the ubootmod changeset for the 128 MB device. It contains a patch to support the 256 MB device (this patch adds support for the new flash chip).
To me it looks like it should be this patch (I would use latest 25.12-rc on the device):
So what I am wondering: Isn't this enough for Das U-Boot to support both flash chips/devices? Or do we need different uboot builds for both devices? The rest of the board is identical, yet they still use two different DTS files.
Regarding DTS/DTSI files, this is what I found out so far:
mt7981b-cudy-tr3000-v1.dtsi → Contains the common stuff
mt7981b-cudy-tr3000-v1.dts → inherits from mt7981b-cudy-tr3000-v1.dtsi and defines &spi_nand and &ubi
mt7981b-cudy-tr3000-v1-ubootmod.dts → Inherits from mt7981b-cudy-tr3000-v1.dtsi and just defines &ubi. No &spi_nand section (this is good, isn't it?)
mt7981b-cudy-tr3000-256mb-v1.dts → inherits from mt7981b-cudy-tr3000-v1.dtsi and defines &spi_nand nd &ubi
Now the only relevant difference in the ubootmod DTS (compared to the others) seems to be the &ubi reg section:
To me it looks like that reg setting just defines partition boundaries. If that's true, my assumption would be that the 256MB device could work with ubootmod, but only up to the 128MB flash chip boundary.
Or am I wrong here? What's interesting is that the reg definition in the DTS for the 256MB version already goes up to 0xe600000 (which should equal ~230MB). Does that mean that ubootmod is not required for this version? I think I just need to get my hands on OpenWRT 25.12 now and see how it looks like with the stock/vendor bootloader.
If the ubootmod really does not work on the 256MB version we should put a big fat warning on the wiki. I think I could do that but it would be nice to get some feedback from a developer in advance because I don't want to spread false information
Yes, I got that. So if there is no specific build for the 256 MB version I would assume that ubootmod does not depend on the flash size and can be used for both devices. At least that's what the instructions on the device wiki suggest.
And when looking at the target device/cudy_tr3000-v1-ubootmod it seems the only difference is the DTS with the reg definition and the question is if this even matters. I just thought it would be wise to get feedback from somebody with better inside knowledge before testing this.
And that's precisely the reason why I came here to ask, because I definitely don't want to brick my device. I did read the wiki instructions thoroughly and I have also checked the source / build config and could not find a definite answer. So I was hoping for some actual technical explanation or feedback from others with a 256MB device regarding this question.
Now here comes the interesting part: I just had time to flash OpenWRT and it turned out that I have the 128 MB version. Although my serial number is starting with 2544!
The OEM bootlog clearly shows that it has the (old) F50L1G41LB chip.
My unit must be like one of the last devices that is still using the old chip. OpenWRT wiki says everything 2543 and higher is 256MB, Cudy says the flash chip has been changed in serials starting with 2544. I'll at least fix the information in the OpenWRT wiki.
Where do they say that? In the download section of the TR3000 they are talking about 2544 (see 2.4.22 release at the bottom).
I happen to have a F50L1G41LB chip in my device (old chip), yet my serial code starts with 2544. Something is strange with this information.
Yeah, this makes sense. On another forum (Russian) there was a user stating he got the 256 MB version together with the F50L1G41LC. So I was hoping that F50L1G41LC effectively meant 256 MB NAND, but I guess I am wrong here. When thinking about this, that guy probably just got a Chinese version (AFAIK the 256 MB version used to be sold mainly in China).
As others already wrote, the serial number has got nothing to do with the amount of flash memory.
When there's no "256MB" on the label, you got the 128MB variant.
It just comes down to the fact that they still include the (old) F50L1G41LB in higher serial number ranges than expected. Since it's supported in latest builds I guess the impact of this is negligible.
It would have been nice to know how much free space one could use on the 256MB variant. I couldn't get one of these, so i did the u-boot-mod and got ~95MB free storage. That has to be enough, unless i'd change the flash to 256 MB. But that's too much hassle...
I cannot find that information regarding serial number range 2543 there. All I see is a generic blog post in German without any device-specific information.
Did you even click the link to the Cudy firmware changelog that I provided earlier? This is what it says:
Again, I do understand that the impact is probably negligible for current OpenWRT builds. It would still be nice if the information in the wiki would be accurate.
Thanks. I honestly cannot see this message, so thanks for providing the screenshot.
So in the end I guess we can at least agree that the information from Cudy is... inconsistent.
And still, my 2544 device uses the old F50L1G41LB... I guess there simply are SN ranges where some production lines are still using the old chips. Not that it matters that much if it's unrelated to NAND size.