My Belkin RT1800 does not work with OpenWrt

As in the tittle:
My Belkin RT1800 does not work with OpenWrt ...

Test with Linksys E7350 OpenWRt & same

A little info:
I tried with my build for the Zyxem Multi M1 WSM20 and it started
Obviously I have problems with the lan ports and probably leds and buttons but I have 3 lan ports and the 2.4 / 5Ghz Wifi which work
Wifi speed is correct 550/436 with another OpenWrt Ap & STA in WDS

Is anyone sure that the OpenWrt release has really been tried or are there more versions of this box?

so map the ports like that.

https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=target/linux/ramips/dts/mt7621_linksys_e7350.dts;h=0cdfcb468389f5468c3abc10239abcb67f2e3ec1;hb=f4eef5f2a18400bc7f548d629e1d5825a2b26e5a

Not a problem , i have the OEM dts

/dts-v1/;

/ {
	model = "MediaTek MT7621 RFB (802.11ax,NAND)";
	compatible = "mediatek,mt7621-rfb-ax-nand", "mediatek,mt7621-soc";
	#address-cells = <0x1>;
	#size-cells = <0x1>;

	gsw {
		mediatek,mdio = <0xd>;
		interrupts = <0x0 0x17 0x4>;
		mediatek,mcm;
		compatible = "mediatek,mt753x";
		mt7530,direct-phy-access;
		reset-names = "mcm";
		mediatek,portmap = "llllw";
		resets = <0x5 0x2>;
		#address-cells = <0x1>;
		#size-cells = <0x0>;
		interrupt-parent = <0x1>;

		port@5 {
			reg = <0x5>;
			compatible = "mediatek,mt753x-port";
			phy-mode = "rgmii";

			fixed-link {
				full-duplex;
				speed = <0x3e8>;
			};
		};

		port@6 {
			reg = <0x6>;
			compatible = "mediatek,mt753x-port";
			phy-mode = "trgmii";

			fixed-link {
				full-duplex;
				speed = <0x3e8>;
			};
		};

		mdio-bus {
			#address-cells = <0x1>;
			#size-cells = <0x0>;
		};
	};

	pcie@1e140000 {
		reg = <0x1e140000 0x40000>;
		interrupts = <0x0 0x4 0x4 0x0 0x18 0x4 0x0 0x19 0x4>;
		pinctrl-0 = <0xe>;
		compatible = "mediatek,mt7621-pci";
		clock-names = "pcie0", "pcie1", "pcie2";
		reset-gpios = <0x2 0x13 0x1>;
		reset-names = "pcie0", "pcie1", "pcie2";
		bus-range = <0x0 0xff>;
		device_type = "pci";
		clocks = <0xf 0x18 0xf 0x19 0xf 0x1a>;
		reset-gpio-names = "pcie";
		ranges = <0x2000000 0x0 0x0 0x60000000 0x0 0x10000000 0x1000000 0x0 0x0 0x1e160000 0x0 0x10000>;
		resets = <0x5 0x18 0x5 0x19 0x5 0x1a>;
		status = "okay";
		#address-cells = <0x3>;
		#size-cells = <0x2>;
		pinctrl-names = "default";
		interrupt-parent = <0x1>;

		pcie0 {
			reg = <0x0 0x0 0x0 0x0 0x0>;
			device_type = "pci";
			#address-cells = <0x3>;
			#size-cells = <0x2>;
		};

		pcie1 {
			reg = <0x800 0x0 0x0 0x0 0x0>;
			device_type = "pci";
			#address-cells = <0x3>;
			#size-cells = <0x2>;
		};

		pcie2 {
			reg = <0x1000 0x0 0x0 0x0 0x0>;
			device_type = "pci";
			#address-cells = <0x3>;
			#size-cells = <0x2>;
		};
	};

	cpus {

		cpu@0 {
			compatible = "mips,mips1004Kc";
		};

		cpu@1 {
			compatible = "mips,mips1004Kc";
		};
	};

	crypto@1e004000 {
		reg = <0x1e004000 0x1000>;
		interrupts = <0x0 0x13 0x4>;
		compatible = "mediatek,mtk-eip93";
		status = "okay";
		interrupt-parent = <0x1>;
	};

	sdhci@1e130000 {
		reg = <0x1e130000 0x4000>;
		interrupts = <0x0 0x14 0x4>;
		compatible = "mediatek,mt7621-sdhci";
		status = "disabled";
		interrupt-parent = <0x1>;
	};

	usb-phy@1e1d0000 {
		reg = <0x1e1d0000 0x300>;
		compatible = "mediatek,mt7621-u3phy", "mediatek,mt2701-u3phy";
		ranges;
		status = "okay";
		#address-cells = <0x1>;
		#size-cells = <0x1>;

		usb-phy@0x1e1d0800 {
			reg = <0x1e1d0800 0x100>;
			clock-names = "ref";
			#phy-cells = <0x1>;
			clocks = <0x10>;
			phandle = <0x11>;
			linux,phandle = <0x11>;
		};

		usb-phy@0x1e1d0900 {
			reg = <0x1e1d0900 0x700>;
			clock-names = "ref";
			#phy-cells = <0x1>;
			clocks = <0x10>;
			phandle = <0x12>;
			linux,phandle = <0x12>;
		};

		usb-phy@0x1e1d1000 {
			reg = <0x1e1d1000 0x100>;
			clock-names = "ref";
			#phy-cells = <0x1>;
			clocks = <0x10>;
			phandle = <0x13>;
			linux,phandle = <0x13>;
		};
	};

	hnat@1e100000 {
		reg = <0x1e100000 0x3000>;
		mtketh-ppd = "eth0";
		mtketh-wan = "eth1";
		compatible = "mediatek,mtk-hnat_v1";
		reset-names = "mtketh";
		resets = <0xc 0x0>;
		status = "okay";
		ext-devices = "rax0", "ra0", "rax1", "ra1", "rax2", "ra2", "rax3", "ra3", "apclix0", "apcli0";
		mtketh-max-gmac = <0x2>;
	};

	rstctrl {
		#reset-cells = <0x1>;
		compatible = "ralink,rt2880-reset";
		phandle = <0x5>;
		linux,phandle = <0x5>;
	};

	sysclock50M@0 {
		#clock-cells = <0x0>;
		compatible = "fixed-clock";
		clock-frequency = <0x2faf080>;
		phandle = <0x9>;
		linux,phandle = <0x9>;
	};

	apll@0 {
		#clock-cells = <0x0>;
		compatible = "fixed-clock";
		clock-frequency = <0x1017df80>;
		phandle = <0x4>;
		linux,phandle = <0x4>;
	};

	chosen {
		bootargs = "console=ttyS0,115200";
		bootfrom = [32 00];
	};

	raeth@1e100000 {
		reg = <0x1e100000 0xe000>;
		interrupts = <0x0 0x3 0x4>;
		compatible = "mediatek,mt7621-eth";
		status = "disabled";
		mediatek,ethsys = <0xc>;
		interrupt-parent = <0x1>;
	};

	gpio-keys-polled {
		compatible = "gpio-keys-polled";
		poll-interval = <0x14>;
		#address-cells = <0x1>;
		#size-cells = <0x0>;

		wps {
			gpios = <0x2 0x12 0x1>;
			label = "wps";
			linux,code = <0x211>;
		};

		reset {
			gpios = <0x2 0x6 0x1>;
			label = "reset";
			linux,code = <0x198>;
		};
	};

	gpio-leds {
		compatible = "gpio-leds";

		indicator {
			gpios = <0x2 0x7 0x0>;
			label = "usb_en";
		};
	};

	palmbus@1e000000 {
		reg = <0x1e000000 0x100000>;
		compatible = "palmbus";
		ranges = <0x0 0x1e000000 0xfffff>;
		#address-cells = <0x1>;
		#size-cells = <0x1>;

		nand@3000 {
			reg = <0x3000 0x800>;
			pinctrl-0 = <0xb>;
			ecc-engine = <0xa>;
			compatible = "mediatek,mt7621-nfc";
			status = "okay";
			#address-cells = <0x1>;
			#size-cells = <0x1>;
			pinctrl-names = "default";

			flash@0 {
				reg = <0x0>;
				nand-ecc-mode = "hw";

				partitions {
					compatible = "fixed-partitions";
					#address-cells = <0x1>;
					#size-cells = <0x1>;

					partition@100000 {
						reg = <0x100000 0x80000>;
						label = "Factory";
					};

					partition@180000 {
						reg = <0x180000 0x3000000>;
						label = "firmware";
					};

					partition@3180000 {
						reg = <0x3180000 0x3000000>;
						label = "firmware_2";
					};

					partition@0 {
						reg = <0x0 0x80000>;
						label = "Bootloader";
						read-only;
					};

					partition@6180000 {
						reg = <0x6180000 0x80000>;
						label = "CBTinfo";
					};

					partition@80000 {
						reg = <0x80000 0x80000>;
						label = "Config";
					};
				};
			};
		};

		i2s@a00 {
			reg = <0xa00 0x100>;
			dmas = <0x6 0x4 0x6 0x6>;
			interrupts = <0x0 0x10 0x4>;
			txdma-req = <0x2>;
			compatible = "mediatek,mt7621-i2s";
			reset-names = "i2s";
			clocks = <0x4>;
			resets = <0x5 0x11>;
			status = "disabled";
			rxdma-req = <0x3>;
			dma-names = "tx", "rx";
			interrupt-parent = <0x1>;
		};

		i2c@0 {
			pinctrl-0 = <0x3>;
			gpios = <0x2 0x3 0x1 0x2 0x4 0x1>;
			compatible = "i2c-gpio";
			status = "okay";
			#address-cells = <0x1>;
			i2c-gpio,delay-us = <0x3>;
			#size-cells = <0x0>;
			pinctrl-names = "default";
		};

		spi@b00 {
			reg = <0xb00 0x100>;
			pinctrl-0 = <0x8>;
			compatible = "mediatek,mt7621-spi";
			reset-names = "spi";
			clocks = <0x7>;
			resets = <0x5 0x12>;
			status = "disabled";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			pinctrl-names = "default";
		};

		uartlite@c00 {
			reg = <0xc00 0x100>;
			interrupts = <0x0 0x1a 0x4>;
			reg-shift = <0x2>;
			no-loopback-test;
			compatible = "mediatek,mt6577-uart", "ns16550a";
			clock-frequency = <0x2faf080>;
			clocks = <0x9>;
			reg-io-width = <0x4>;
			interrupt-parent = <0x1>;
		};

		gdma@2800 {
			reg = <0x2800 0x800>;
			interrupts = <0x0 0xd 0x4>;
			compatible = "mtk,rt3883-gdma";
			reset-names = "dma";
			#dma-requests = <0x10>;
			resets = <0x5 0xe>;
			status = "disabled";
			#dma-channels = <0x10>;
			#dma-cells = <0x1>;
			phandle = <0x6>;
			linux,phandle = <0x6>;
			interrupt-parent = <0x1>;
		};

		sysc@0 {
			reg = <0x0 0x100>;
			compatible = "mtk,mt7621-sysc";
		};

		memc@5000 {
			reg = <0x5000 0x1000>;
			compatible = "mtk,mt7621-memc";
		};

		uartfull@d00 {
			reg = <0xd00 0x100>;
			interrupts = <0x0 0x1b 0x4>;
			reg-shift = <0x2>;
			no-loopback-test;
			compatible = "mediatek,mt6577-uart", "ns16550a";
			clock-frequency = <0x2faf080>;
			clocks = <0x9>;
			status = "okay";
			reg-io-width = <0x4>;
			interrupt-parent = <0x1>;
		};

		uartfull@e00 {
			reg = <0xe00 0x100>;
			interrupts = <0x0 0x1c 0x4>;
			reg-shift = <0x2>;
			no-loopback-test;
			compatible = "mediatek,mt6577-uart", "ns16550a";
			clock-frequency = <0x2faf080>;
			clocks = <0x9>;
			status = "okay";
			reg-io-width = <0x4>;
			interrupt-parent = <0x1>;
		};

		ecc@3800 {
			reg = <0x3800 0x800>;
			compatible = "mediatek,mt7621-ecc";
			status = "okay";
			phandle = <0xa>;
			linux,phandle = <0xa>;
		};

		wdt@100 {
			reg = <0x100 0x100>;
			compatible = "mtk,mt7621-wdt";
		};

		hsdma@7000 {
			reg = <0x7000 0x1000>;
			interrupts = <0x0 0xb 0x4>;
			compatible = "mediatek,mt7621-hsdma";
			reset-names = "hsdma";
			#dma-requests = <0x1>;
			resets = <0x5 0x5>;
			status = "disabled";
			#dma-channels = <0x1>;
			#dma-cells = <0x1>;
			interrupt-parent = <0x1>;
		};

		gpio@600 {
			reg = <0x600 0x100>;
			interrupts = <0x0 0xc 0x4>;
			compatible = "mtk,mt7621-gpio";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			interrupt-parent = <0x1>;

			bank@0 {
				reg = <0x0>;
				#gpio-cells = <0x2>;
				compatible = "mtk,mt7621-gpio-bank";
				phandle = <0x2>;
				gpio-controller;
				linux,phandle = <0x2>;
			};

			bank@1 {
				reg = <0x1>;
				#gpio-cells = <0x2>;
				compatible = "mtk,mt7621-gpio-bank";
				gpio-controller;
			};

			bank@2 {
				reg = <0x2>;
				#gpio-cells = <0x2>;
				compatible = "mtk,mt7621-gpio-bank";
				gpio-controller;
			};
		};
	};

	ethernet@1e100000 {
		reg = <0x1e100000 0xe000>;
		interrupts = <0x0 0x3 0x4>;
		compatible = "mediatek,mt7621-eth", "syscon";
		status = "okay";
		#address-cells = <0x1>;
		#size-cells = <0x0>;
		mediatek,ethsys = <0xc>;
		interrupt-parent = <0x1>;

		mac@0 {
			reg = <0x0>;
			compatible = "mediatek,eth-mac";
			phy-mode = "trgmii";

			fixed-link {
				full-duplex;
				pause;
				speed = <0x3e8>;
			};
		};

		mac@1 {
			reg = <0x1>;
			compatible = "mediatek,eth-mac";
			phy-mode = "rgmii";

			fixed-link {
				full-duplex;
				pause;
				speed = <0x3e8>;
			};
		};

		mdio-bus {
			#address-cells = <0x1>;
			phandle = <0xd>;
			#size-cells = <0x0>;
			linux,phandle = <0xd>;

			ethernet-phy@1f {
				reg = <0x1f>;
				phy-mode = "rgmii";
			};
		};
	};

	sysclock125M@0 {
		#clock-cells = <0x0>;
		compatible = "fixed-clock";
		clock-frequency = <0x7735940>;
		phandle = <0x10>;
		linux,phandle = <0x10>;
	};

	aliases {
		serial0 = "/palmbus@1e000000/uartlite@c00";
	};

	interrupt-controller@1fbc0000 {
		reg = <0x1fbc0000 0x2000>;
		compatible = "mti,gic";
		mti,reserved-cpu-vectors = <0x7>;
		#interrupt-cells = <0x3>;
		phandle = <0x1>;
		interrupt-controller;
		linux,phandle = <0x1>;

		timer {
			interrupts = <0x1 0x1 0x0>;
			compatible = "mti,gic-timer";
			clocks = <0x14>;
		};
	};

	pinctrl {
		pinctrl-0 = <0x15>;
		compatible = "mtk,mtkmips-pinmux";
		pinctrl-names = "default";

		i2c {
			phandle = <0x3>;
			linux,phandle = <0x3>;

			i2c {
				mtk,function = "gpio";
				mtk,group = "i2c";
			};
		};

		spi {
			phandle = <0x8>;
			linux,phandle = <0x8>;

			spi {
				mtk,function = "spi";
				mtk,group = "spi";
			};
		};

		mdio {

			mdio {
				mtk,function = "mdio";
				mtk,group = "mdio";
			};
		};

		nand {
			phandle = <0xb>;
			linux,phandle = <0xb>;

			sdhci-nand {
				mtk,function = "nand2";
				mtk,group = "sdhci";
			};

			spi-nand {
				mtk,function = "nand1";
				mtk,group = "spi";
			};
		};

		pcie {
			phandle = <0xe>;
			linux,phandle = <0xe>;

			pcie {
				mtk,function = "gpio";
				mtk,group = "pcie";
			};
		};

		sdhci {

			sdhci {
				mtk,function = "sdhci";
				mtk,group = "sdhci";
			};
		};

		uart1 {

			uart1 {
				mtk,function = "uart1";
				mtk,group = "uart1";
			};
		};

		uart2 {

			uart2 {
				mtk,function = "uart2";
				mtk,group = "uart2";
			};
		};

		uart3 {

			uart3 {
				mtk,function = "uart3";
				mtk,group = "uart3";
			};
		};

		pinctrl0 {
			phandle = <0x15>;
			linux,phandle = <0x15>;

			gpio {
				mtk,function = "gpio";
				mtk,group = "i2c", "uart3", "jtag";
			};

			uart2 {
				mtk,function = "uart2";
				mtk,group = "uart2";
			};
		};

		rgmii1 {

			rgmii1 {
				mtk,function = "rgmii1";
				mtk,group = "rgmii1";
			};
		};

		rgmii2 {

			rgmii2 {
				mtk,function = "rgmii2";
				mtk,group = "rgmii2";
			};
		};
	};

	ethsys@1e000000 {
		reg = <0x1e000000 0x8000>;
		compatible = "mediatek,mt7621-ethsys", "syscon";
		phandle = <0xc>;
		linux,phandle = <0xc>;
	};

	usb@1e1c0000 {
		reg = <0x1e1c0000 0x1000 0x1e1d0700 0x100>;
		phys = <0x11 0x3 0x12 0x4 0x13 0x3>;
		interrupts = <0x0 0x16 0x4>;
		reg-names = "mac", "ippc";
		compatible = "mediatek,mt7621-xhci", "mediatek,mt2701-xhci";
		clock-names = "sys_ck", "free_ck", "ahb_ck", "dma_ck";
		clocks = <0x10 0x10 0x10 0x10>;
		status = "okay";
		interrupt-parent = <0x1>;
	};

	sysbusclock@0 {
		#clock-cells = <0x0>;
		compatible = "mtk,mt7621-sys-bus-clock";
		phandle = <0x7>;
		linux,phandle = <0x7>;
	};

	cpuclock@0 {
		#clock-cells = <0x0>;
		compatible = "mtk,mt7621-cpu-clock";
		phandle = <0x14>;
		linux,phandle = <0x14>;
	};

	cpuintc@0 {
		compatible = "mti,cpu-interrupt-controller";
		#interrupt-cells = <0x1>;
		#address-cells = <0x0>;
		interrupt-controller;
	};

	clkctrl {
		#clock-cells = <0x1>;
		compatible = "ralink,rt2880-clock";
		phandle = <0xf>;
		linux,phandle = <0xf>;
	};
};

Snapshot images are available for some time already and they work well.
https://firmware-selector.openwrt.org/?version=SNAPSHOT&target=ramips%2Fmt7621&id=belkin_rt1800

You may want to add luci prior to buid.

I am not stupid, bad, bad, bad


Using eth@1e100000 device
TFTP from server 10.10.10.3; our IP address is 10.10.10.1
Filename 'openwrt-e0952e76964d-ramips-mt7621-belkin_rt1800-squashfs-factory.bin'.
Load address: 0x80010000
Loading: #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ##########################################################
         4.8 MiB/s
done
Bytes transferred = 9437216 (900020 hex)

*** Loaded 9437216 (0x900020) bytes at 0x80010000 ***


Erasing from 0x3180000 to 0x3a9ffff, size 0x920000 ... OK
Writting from 0x80010000 to 0x3180000, size 0x900020 ... OK

*** Firmware_2 upgrade completed! ***

Erasing from 0x180000 to 0xa9ffff, size 0x920000 ... OK
Writting from 0x80010000 to 0x180000, size 0x900020 ... OK

*** Firmware upgrade completed! ***

Hit any key to stop firmware bootup:  0
Saving Environment to NAND... Erasing NAND...
Erasing at 0x80000 -- 100% complete.
Writing to NAND... OK
OK
#####CBT_BOOT_VERSION=[V1.0]######
#####boot_count=[12] boot_part=[1] boot_change=[1]######

Loading from nand0, offset 0x180000
** Unknown image type
no partition number specified

Loading from nand0, offset 0x180000
** Unknown image type
=>

my build for Zyxel


Available load methods:
    0 - TFTP client (Default)
    1 - Xmodem
    2 - Ymodem
    3 - Kermit
    4 - S-Record

Select (enter for default):

Input U-Boot's IP address: 10.10.10.1
Input TFTP server's IP address: 10.10.10.3
Input IP netmask: 255.255.255.0
Input file name: openwrt-ramips-mt7621-zyxel_ax1800-squashfs-factory.bin        
Using eth@1e100000 device
TFTP from server 10.10.10.3; our IP address is 10.10.10.1
Filename 'openwrt-ramips-mt7621-zyxel_ax1800-squashfs-factory.bin'.
Load address: 0x80010000
Loading: T #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         #################################################################
         ##########################################################
         1.3 MiB/s
done
Bytes transferred = 9437184 (900000 hex)

*** Loaded 9437184 (0x900000) bytes at 0x80010000 ***


Erasing from 0x3180000 to 0x3a7ffff, size 0x900000 ... OK
Writting from 0x80010000 to 0x3180000, size 0x900000 ... OK

*** Firmware_2 upgrade completed! ***

Erasing from 0x180000 to 0xa7ffff, size 0x900000 ... OK
Writting from 0x80010000 to 0x180000, size 0x900000 ... OK

*** Firmware upgrade completed! ***

Hit any key to stop firmware bootup:  0
Saving Environment to NAND... Erasing NAND...
Erasing at 0x80000 -- 100% complete.
Writing to NAND... OK
OK
#####CBT_BOOT_VERSION=[V1.0]######
#####boot_count=[13] boot_part=[2] boot_change=[1]######

Loading from nand0, offset 0x3180000
   Image Name:   MIPS OpenWrt Linux-5.10.138
   Image Type:   MIPS Linux Kernel Image (uncompressed)
   Data Size:    2735442 Bytes = 2.6 MiB
   Load Address: 80001000
   Entry Point:  80001000
Automatic boot of image at addr 0x80010000 ...
## Booting kernel from Legacy Image at 80010000 ...
   Image Name:   MIPS OpenWrt Linux-5.10.138
   Image Type:   MIPS Linux Kernel Image (uncompressed)
   Data Size:    2735442 Bytes = 2.6 MiB
   Load Address: 80001000
   Entry Point:  80001000

Which firmware version was your rt1800 using, was it booting from the first or second partition?

Please see Linksys E7350 Serial Port Problem or downgrade method for ideas.

1 Like

I suppose the question was about the initial OEM firmware version.
If you have any OpenWrt version running on the router, try sysupgrade with the proper sysupgrade image from the Firmware Selector.
Otherwise try to tftp the kernel image in the bootloader ("load image") and then sysupgrade from the OpenWrt.

1 Like

With my build no problem

tftp > 6 or 2

Unfortunate. I tried to make it as painless as possible. No idea if it's possible to make compatible with newer firmwares.

Hi guys, I'm new to the forum, I apologize for the newbie questions.

I was thinking to get a Belkin RT1800 but now I have doubts. Are there going to be problems with OpenWRT support for this model? Are there different versions of it? How come it works for some but not for others? Thanks for any input.

Please refer to Linksys E7350 Serial Port Problem or downgrade method
The main difference is the initial (OEM) firmware version.

Hi Andrew, thanks for your reply.

I had seen that thread and I was glad to read your post saying you could flash OpenWRT on your RT1800 after updating it to the latest available OEM firmware - ver. 1.1.00.016, released a year ago, which I duly downloaded :slight_smile: - so I thought there would be no issue, but this thread suggests there are problems with some units.

This one doesn't sound like the issue with the corrupted boot partition 1 as @Annick was able to flash a different build, but then what do I know (very little about OpenWRT YET! :grinning:) Still, I've just ordered a TTL-USB CP2102 on Aliexpress.

It'd be interesting to know from Annick which OEM firmware version he had on his RT1800 and if he updated it.

1 Like

Thank you, so that's the initial OEM firmware release from September 2020, according to the release notes linked on the other thread by @AndrewZ, then that could be the cause of the problem.

1 Like

The correct installation of a firmware is always done by the U-boot
Normally it has nothing to do with the OEM firmware version that is loaded next
If it does not work it is that the built firmware is not correct
So it is important to correct this

I built very quickly a firmware factory ( the sysupgrade for example does not work )
Not problem with different versions of the OEM firmware with the tftp

openwrt build depend of type_fw_date fw_ver ???


define Build/belkin-header
	$(eval magic=$(word 1,$(1)))
	$(eval hw_ver=$(word 2,$(1)))
	$(eval fw_ver=$(word 3,$(1)))

	( \
		type_fw_date=$$(printf "01%02x%02x%02x" \
			$$(date -d "@$(SOURCE_DATE_EPOCH)" "+%y %m %d")); \
		hw_fw_ver=$$(printf "%02x%02x%02x%02x" \
			$(hw_ver) $$(echo $(fw_ver) | cut -d. -f-3 | tr . ' ')); \
		fw_len_crc=$$(gzip -c $@ | tail -c 8 | od -An -tx8 | tr -d ' \n'); \
		fw_crc_len="$${fw_len_crc:8:8}$${fw_len_crc:0:8}"; \
		\
		printf "$(magic)" | dd bs=4 count=1 conv=sync 2>/dev/null; \
		printf "$$(echo $${type_fw_date}$${hw_fw_ver} | \
			sed 's/../\\x&/g')"; \
		printf "$$(echo $${fw_crc_len}$${fw_crc_len} | \
			sed 's/../\\x&/g')"; \
		printf "\x5c\x78\x00\x00"; \
		cat $@; \
	) > $@.new
	mv $@.new $@
endef

found another bug / problem for MAC address because values are not in mtd2 but in mtd1

i think bad in 02_network

belkin,rt1800|\
linksys,e7350)
		lan_mac=$(mtd_get_mac_ascii Config lan_hwaddr)
		wan_mac=$(mtd_get_mac_ascii Config wan_hwaddr)
		label_mac=$lan_mac
		;;

correct ?

belkin,rt1800)
		lan_mac=$(mtd_get_mac_ascii Config lan_hwaddr)
		wan_mac=$(mtd_get_mac_ascii Config wan_hwaddr)
		label_mac=$lan_mac
        ;
linksys,e7350)
		lan_mac=$(mtd_get_mac_ascii Config lan_hwaddr)
		wan_mac=$(mtd_get_mac_ascii Config wan_hwaddr)
		label_mac=$lan_mac
		;;

Good job for continuing to dig into this. this is an interesting device now that the RT3200 is harder to find here in Europe.

I already have two Netgear WAX202 running OpenWRT as APs, but they don't have an USB port which I need on the router, so I'm running OpenWRT on my old Asus RT-AC87U (wired only) for now. The idea would be to replace it with the RT1800 and have 3 wifi boxes with the same chipsets and drivers for optimal coverage. Hopefully the RT1800 will route 1 Gb/s too with the latest patches.

I've ordered one on Amazon Warehouse, I'll update it to the latest OEM firmware then try to flash OpenWRT. I'll keep you posted. Thanks guys for all the great info on this and the other thread.

FYI - there is no "MAC problem" in the official OpenWrt build, see Bad MAC adress for Belkin RT1800 - #2 by AndrewZ

2 Likes

Thanks, appreciated.

In fine i have modofied values in partition factory