Mikrotik RB750Gr3 hex installation not possible - Aug 2025

The latest lot of Mikrotik RB750Gr3 hex that I have receieved doesn’t boot after installing 23.05.x and 24.10.x.

It boots properly with OpenWrt initramfs 23.05.0-rc3.

The reason I see is, RouterOS is not letting me downgrade the RouterBoot after downgrading the RouterOS from v7 to v6 as suggested in the wiki for installation.

Below is the dmesg output from the initramfs boot image:

[    0.000000] Linux version 5.15.127 (builder@buildhost) (mipsel-openwrt-linux-musl-gcc (OpenWrt GCC 12.3.0 r23389-5deed175a5) 12.3.0, GNU ld (GNU Binutils) 2.40.0) #0 SMP Sat Aug 19 14:01:06 2023
[    0.000000] SoC Type: MediaTek MT7621 ver:1 eco:3
[    0.000000] printk: bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001992f (MIPS 1004Kc)
[    0.000000] MIPS: machine is MikroTik RouterBOARD 750Gr3
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] VPE topology {2,2} total 4
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.000000] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000000fffffff]
[    0.000000] percpu: Embedded 11 pages/cpu s14736 r8192 d22128 u45056
[    0.000000] pcpu-alloc: s14736 r8192 d22128 u45056 alloc=11*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 64960
[    0.000000] Kernel command line: console=ttyS0,115200 rootfstype=squashfs,jffs2
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes, linear)
[    0.000000] Writing ErrCtl register=00021000
[    0.000000] Readback ErrCtl register=00021000
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 246308K/262144K available (7296K kernel code, 627K rwdata, 880K rodata, 4048K init, 226K bss, 15836K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] NR_IRQS: 256
[    0.000000] clocksource: GIC: mask: 0xffffffffffffffff max_cycles: 0xcaf478abb4, max_idle_ns: 440795247997 ns
[    0.000004] sched_clock: 64 bits at 880MHz, resolution 1ns, wraps every 4398046511103ns
[    0.008047] Calibrating delay loop... 586.13 BogoMIPS (lpj=2930688)
[    0.066219] pid_max: default: 32768 minimum: 301
[    0.071643] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.078853] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.090452] rcu: Hierarchical SRCU implementation.
[    0.095938] smp: Bringing up secondary CPUs ...
[    0.101412] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.101440] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.101455] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.101499] CPU1 revision is: 0001992f (MIPS 1004Kc)
[    0.160732] Synchronize counters for CPU 1: done.
[    0.193334] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.193356] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.193368] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.193394] CPU2 revision is: 0001992f (MIPS 1004Kc)
[    0.252273] Synchronize counters for CPU 2: done.
[    0.282913] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.282935] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes
[    0.282946] MIPS secondary cache 256kB, 8-way, linesize 32 bytes.
[    0.282978] CPU3 revision is: 0001992f (MIPS 1004Kc)
[    0.337465] Synchronize counters for CPU 3: done.
[    0.367319] smp: Brought up 1 node, 4 CPUs
[    0.376448] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.386251] futex hash table entries: 1024 (order: 3, 32768 bytes, linear)
[    0.393329] pinctrl core: initialized pinctrl subsystem
[    0.400167] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.406766] thermal_sys: Registered thermal governor 'step_wise'
[    0.412579] FPU Affinity set after 11720 emulations
[    0.431304] clocksource: Switched to clocksource GIC
[    0.437584] NET: Registered PF_INET protocol family
[    0.442703] IP idents hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.450884] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes, linear)
[    0.459201] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.466870] TCP established hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.474519] TCP bind hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.481652] TCP: Hash tables configured (established 2048 bind 2048)
[    0.488095] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.494600] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.501936] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.507546] PCI: CLS 0 bytes, default 32
[    0.523067] workingset: timestamp_bits=14 max_order=16 bucket_order=2
[    0.537777] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.543702] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.555045] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[    1.010317] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    1.016461] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    1.022703] mt7621_gpio 1e000600.gpio: registering 32 gpios
[    1.030177] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    1.041231] printk: console [ttyS0] disabled
[    1.045661] 1e000c00.uartlite: ttyS0 at MMIO 0x1e000c00 (irq = 19, base_baud = 3125000) is a 16550A
[    1.054741] printk: console [ttyS0] enabled
[    1.063061] printk: bootconsole [early0] disabled
[    1.433309] spi-mt7621 1e000b00.spi: sys_freq: 220000000
[    1.440454] spi-nor spi0.0: w25q128jv (16384 Kbytes)
[    1.445556] 2 fixed-partitions partitions found on MTD device spi0.0
[    1.451958] OF: Bad cell count for /palmbus@1e000000/spi@b00/flash@0/partitions
[    1.459293] OF: Bad cell count for /palmbus@1e000000/spi@b00/flash@0/partitions
[    1.467137] OF: Bad cell count for /palmbus@1e000000/spi@b00/flash@0/partitions
[    1.474540] OF: Bad cell count for /palmbus@1e000000/spi@b00/flash@0/partitions
[    1.482123] Creating 2 MTD partitions on "spi0.0":
[    1.486923] 0x000000000000-0x000000040000 : "RouterBoot"
[    1.494975] 5 routerbootpart partitions found on MTD device RouterBoot
[    1.501544] Creating 5 MTD partitions on "RouterBoot":
[    1.506675] 0x000000000000-0x00000000f000 : "bootloader1"
[    1.513127] 0x00000000f000-0x000000010000 : "hard_config"
[    1.519504] 0x000000010000-0x00000001f000 : "bootloader2"
[    1.526004] 0x000000020000-0x000000021000 : "soft_config"
[    1.532433] 0x000000030000-0x000000031000 : "bios"
[    1.538145] 0x000000040000-0x000001000000 : "firmware"
[    1.545446] 2 minor-fw partitions found on MTD device firmware
[    1.551336] Creating 2 MTD partitions on "firmware":
[    1.556296] 0x000000000000-0x000000300000 : "kernel"
[    1.562315] 0x000000300000-0x000000fc0000 : "rootfs"
[    1.568178] mtd: setting mtd8 (rootfs) as root device
[    1.573353] 1 squashfs-split partitions found on MTD device rootfs
[    1.579534] 0x000000f60000-0x000000fc0000 : "rootfs_data"
[    1.734941] mtk_soc_eth 1e100000.ethernet: generated random MAC address de:b5:80:5f:db:d6
[    1.743403] mtk_soc_eth 1e100000.ethernet: generated random MAC address ea:c1:d6:8b:37:55
[    1.753153] mt7530-mdio mdio-bus:1f: MT7530 adapts as multi-chip module
[    4.440252] mtk_soc_eth 1e100000.ethernet eth0: mediatek frame engine at 0xbe100000, irq 22
[    4.452281] mtk_soc_eth 1e100000.ethernet wan: mediatek frame engine at 0xbe100000, irq 22
[    4.462411] i2c_dev: i2c /dev entries driver
[    4.469902] MikroTik RouterBOARD hardware configuration sysfs driver v0.07
[    4.478357] MikroTik RouterBOARD software configuration sysfs driver v0.05
[    4.486700] NET: Registered PF_INET6 protocol family
[    4.494507] Segment Routing with IPv6
[    4.498251] In-situ OAM (IOAM) with IPv6
[    4.502330] NET: Registered PF_PACKET protocol family
[    4.507518] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    4.520954] 8021q: 802.1Q VLAN Support v1.8
[    4.531550] gpio-export gpio_export: 2 gpio(s) exported
[    4.537200] mt7530-mdio mdio-bus:1f: MT7530 adapts as multi-chip module
[    4.612862] mt7530-mdio mdio-bus:1f: configuring for fixed/rgmii link mode
[    4.620590] mt7530-mdio mdio-bus:1f: Link is Up - 1Gbps/Full - flow control rx/tx
[    4.622392] mt7530-mdio mdio-bus:1f lan2 (uninitialized): PHY [mt7530-0:01] driver [MediaTek MT7530 PHY] (irq=26)
[    4.641171] mt7530-mdio mdio-bus:1f lan3 (uninitialized): PHY [mt7530-0:02] driver [MediaTek MT7530 PHY] (irq=27)
[    4.654143] mt7530-mdio mdio-bus:1f lan4 (uninitialized): PHY [mt7530-0:03] driver [MediaTek MT7530 PHY] (irq=28)
[    4.666972] mt7530-mdio mdio-bus:1f lan5 (uninitialized): PHY [mt7530-0:04] driver [MediaTek MT7530 PHY] (irq=29)
[    4.679257] DSA: tree 0 setup
[    4.698593] Freeing unused kernel image (initmem) memory: 4048K
[    4.704607] This architecture does not have kernel memory protection.
[    4.711039] Run /init as init process
[    4.714748]   with arguments:
[    4.714761]     /init
[    4.714770]   with environment:
[    4.714777]     HOME=/
[    4.714784]     TERM=linux
[    5.212611] init: Console is alive
[    5.216472] init: - watchdog -
[    5.230266] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    5.245230] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    5.261162] init: - preinit -
[    5.461924] random: jshn: uninitialized urandom read (4 bytes read)
[    5.542094] random: jshn: uninitialized urandom read (4 bytes read)
[    5.606371] random: jshn: uninitialized urandom read (4 bytes read)
[    5.903276] mtk_soc_eth 1e100000.ethernet eth0: configuring for fixed/rgmii link mode
[    5.915873] mtk_soc_eth 1e100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[    5.924754] mt7530-mdio mdio-bus:1f lan2: configuring for phy/gmii link mode
[    5.932567] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[    8.074257] procd: - early -
[    8.077377] procd: - watchdog -
[    8.648902] procd: - watchdog -
[    8.652557] procd: - ubus -
[    8.662951] random: ubusd: uninitialized urandom read (4 bytes read)
[    8.705239] random: ubusd: uninitialized urandom read (4 bytes read)
[    8.712218] random: ubusd: uninitialized urandom read (4 bytes read)
[    8.722408] procd: - init -
[    9.079065] kmodloader: loading kernel modules from /etc/modules.d/*
[    9.139577] PPP generic driver version 2.4.2
[    9.145546] NET: Registered PF_PPPOX protocol family
[    9.158054] kmodloader: done loading kernel modules from /etc/modules.d/*
[    9.287081] urngd: v1.0.2 started.
[    9.460211] random: crng init done
[    9.463663] random: 31 urandom warning(s) missed due to ratelimiting
[   28.193233] mtk_soc_eth 1e100000.ethernet eth0: Link is Down
[   28.220186] mtk_soc_eth 1e100000.ethernet eth0: configuring for fixed/rgmii link mode
[   28.228620] mtk_soc_eth 1e100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[   28.240650] device eth0 entered promiscuous mode
[   28.246887] mt7530-mdio mdio-bus:1f lan2: configuring for phy/gmii link mode
[   28.255406] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   28.263739] br-lan: port 1(lan2) entered blocking state
[   28.269041] br-lan: port 1(lan2) entered disabled state
[   28.276913] device lan2 entered promiscuous mode
[   28.305830] mt7530-mdio mdio-bus:1f lan3: configuring for phy/gmii link mode
[   28.314438] br-lan: port 2(lan3) entered blocking state
[   28.319699] br-lan: port 2(lan3) entered disabled state
[   28.326812] device lan3 entered promiscuous mode
[   28.339101] mt7530-mdio mdio-bus:1f lan4: configuring for phy/gmii link mode
[   28.347774] br-lan: port 3(lan4) entered blocking state
[   28.353100] br-lan: port 3(lan4) entered disabled state
[   28.360396] device lan4 entered promiscuous mode
[   28.371784] mt7530-mdio mdio-bus:1f lan5: configuring for phy/gmii link mode
[   28.380216] br-lan: port 4(lan5) entered blocking state
[   28.385618] br-lan: port 4(lan5) entered disabled state
[   28.393266] device lan5 entered promiscuous mode
[   28.412484] mtk_soc_eth 1e100000.ethernet wan: PHY [mdio-bus:00] driver [MediaTek MT7530 PHY] (irq=POLL)
[   28.422117] mtk_soc_eth 1e100000.ethernet wan: configuring for phy/rgmii link mode
[   31.707972] mt7530-mdio mdio-bus:1f lan5: Link is Up - 1Gbps/Full - flow control rx/tx
[   31.716030] br-lan: port 4(lan5) entered blocking state
[   31.721302] br-lan: port 4(lan5) entered forwarding state
[   31.727376] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
```

Does anyone has found a workaround to this issue? Or am I missing something?

RouterBOOT v7 on NOR devices no longer supports the old kernel ELF in YAFFS boot method. It needs a little extra packing into a (Mikrotik) NPK first.
I have rough tools to do this. They once worked for me, but usual disclaimers apply; expect device to catch fire:

The older Mikrotik devices also have issues with large initramfs images. These ramips devices will refuse to load an initramfs image with ELF entry point address > 0x80b81000: https://github.com/openwrt/openwrt/issues/13255#issuecomment-1772098866

1 Like

Thanks @johnth

I followed the instructions for npk-packer on 23.05.2 and 24.10.2 firmware but the device is still in the boot loop. RouterBOOT version on the device is 7.16.2.

Does it matter that I am trying it on RB750Gr3 while instructions are for RB760iGS?

Would you require some debug information related to npk-packer operation I am performing?

I have not yet found time to test that version of RouterBOOT on my 760igs, but I just saw that Mikrotik fixed a RouterBOOT boot bug for NOR devices in 7.16.6. That could be what you were running into. You could try to update your RouterBOOT to that version… See:

Also have v7 NPK packed sysupgrade image in OpenWrt snapshot now.

I was able to build 24.10.3 using the patch in the pull request - https://github.com/john-tho/openwrt/pull/7.

Devices are shipped to the field now.

RouterBOOT fix with v7.19.6 means we wouldn’t require v7 NPK image?

We can’t update the RouterBOOT version remotely and need to have v7 sysupgrade image in the future available, else it is going to be a logistical nightmare.

Good.
I have not checked, but I doubt it would work with old kernel.elf boot.