How I understand it, is that /etc/config/system only contains a line for option compat_version if it's 1.1 or higher. If your device is 1.0 that line isn't there.
So I had an old backup from before the target went to 1.1 (the switch to DSA) that I partially restored, which removed option compat_version '1.1'.
Ok I fugured it up.
You can't just download the files. Best option is git clone the files, and then execute the first file.
Everything is working fine.
My ER-X have 24.10.rc2
Fri Jan 31 17:29:21 CET 2025 upgrade: The device is supported, but this image is incompatible for sysupgrade based on the image version (1.1->2.0).
Fri Jan 31 17:29:21 CET 2025 upgrade: Partition table has been changed due to kernel size restrictions. Refer to the wiki page for instructions to migrate to the new layout: https://openwrt.org/toh/ubiquiti/edgerouter_x_er-x_ka
Image check failed.
First of all: Thank you very much for all the effort. Very happy with the result.
So I used the migration script, and all seems to have gone well, however there were some things unclear:
Out of precaution I rebooted the ERX, just in case. That might be good advice for others.
I executed this to get scripts to ERX, maybe its useful to decrease migration steps.
urls='
https://raw.githubusercontent.com/darkxst/erx-migration/refs/heads/main/ubnt_erx_migrate.sh
https://raw.githubusercontent.com/darkxst/erx-migration/refs/heads/main/ubnt_erx_stage2.sh
'
cd /tmp
for url in $urls;do
wget "$url" -O "/tmp/${url##*/}"
chmod +x "/tmp/${url##*/}"
done
Did I have to chmod +x ubnt_erx_stage2.sh too ?
Check that the comat version is set to 2: uci get system.@system[0].compat_version
Apart from the typo ^ I was unsure if 2 meant 2.0. So did a cat /proc/mtd to see if it had worked.
A restore from backup set it back to 1.1, and I followed the rest of https://github.com/darkxst/erx-migration. Assuming this was the reason to check and modify compat ?
# uci get system.@system[0].compat_version
1.1
# uci set system.@system[0].compat_version=2.0
# uci commit
# uci get system.@system[0].compat_version
2.0
I made another backup after this, and deleted old backup as compat was not set in it.
I have an EdgeRouter X SFP, brand new, never used. I want to install the latest version 24.10.5 on it by first going through 22.03 and then migrating to 24.10.5. As of February 2026, has anyone migrated from 22.03 to 24.10.5 yet to confirm that the scripts still work? My only experience is with the easy-to-flash Archer C7, so flashing the ER-X SFP is going to be a real challenge for me
Just a small note that threw me off: if you scp the scripts they will end up in /root, not in /tmp, and the scripts will mysteriously fail ("Command failed: Connection failed").
Copying the scripts to /tmp and running them there and things worked perfectly.
Teaches me to read instructions more carefully. And perhaps the scripts should have some tests - it isn’t that common that scripts fail like this.
@drachenflieger: I didn’t have a 22.03 box anymore but upgrade from 22.03 to 23.05 was flawless when I tried it ages ago. And once on 23.05, upgrade to 24.10.5 is flawless as long as the scripts are in the /tmp directory. Given that there has been no answer in 12 days, this is the best I can do.