Error updating: Image check failed...swconfig to DSA

I switched to DSA a week ago.

and now I am trying to update image from firmware selector with custom packages (like I did 4 days ago) but now it is giving me errors.

Device - D-Link Dir 2640 A1

Setting I chenged

Added a Interface and bridge-device ,firewall zone and a wifi , for it.

Current packages in image - luci luci-app-wireguard luci-app-pbr stubby qosify kmod-ipt-geoip netdata usbutils kmod-usb-storage-uas block-mount kmod-fs-ext4 kmod-usb-storage kmod-usb3 kmod-usb-core

Currently on OpenWrt 22.03.5
trying to 'update' to OpenWrt 22.03.5

What is the current version ?
Which version are you trying to flash ?

And BTW installing usb storage on such device will lead to sluggish result. And I don't even dare to think of what wireguard will do. Don't ask too much about this basic device.

If you have restored /etc/config/system, you have possibly lost the compatibility version flag and you need to set it again to 1.1.
But only if you are sure that you are now already running the DSA version and are going to flash similar.

Example in

Wireguard should be fine. It's pretty lightweight and runs well even on much more modest hardware.

2 Likes

I thought D-Link Dir 2640 is mid-range

Switching from old router swconfig to new router with DSA I only changes config/wireless, config/network

/etc/config/system stayed same -

config system
	option ttylogin '0'
	option log_size '64'
	option urandom_seed '0'
	option zonename ''
	option timezone ''
	option log_proto 'udp'
	option conloglevel '8'
	option cronloglevel '5'

config timeserver 'ntp'
	list server '0.openwrt.pool.ntp.org'
	list server '1.openwrt.pool.ntp.org'
	list server '2.openwrt.pool.ntp.org'
	list server '3.openwrt.pool.ntp.org'
	option use_dhcp '0'

you have possibly lost the compatibility version flag and you need to set it again to 1.1.

How ?

Yep, no flag there.

Like the example I linked above. Did you read it???

You need like this, but 1.1

2 Likes

Please inquire using full concice sentences. It's not clear what you're asking.

It seems you may be asking which number to enter, but given you were told already - that isn't clear.

Perhaps hnyman can take time to explain the use of compatibility version in depth. I actually thought that part was obvious, so I won't be able to explain well.

It is just number, used to prevent sysupgrade with incompatible config or firmware.
Explanation in https://github.com/openwrt/openwrt/commit/735de53b2aae9be03611715699bf58dff44e8eff

Decimal change mean incompatible config, like 1.0 - 1.1
Whole number change like 1.0 - 2.0 means incompatible image, a factory install likely needed. (E.g. when wrt32x kernel area size changed, sysupgrade is not powerful enough)

The value can be set for a router/target, when a change like DSA is made, highlighting to you that the sysupgrade needs care.

But as it is just a value in system config file, the user may accidentally overwrite/remove it (like you?) in connection of old backup restore, settings copy or similar.

2 Likes

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.