Solution to mismatched checksums when upgrading from OpenWrt v15.05

I decided it was time to switch from OpenWRT because of the friendly community, good documentation and quick patch cycle :rofl:.

26 AM

During my successful upgrade to LEDE 17.01.4 from OpenWRT 15.05 I learned something about the checksums involved that should be helpful to others following the upgrade path. The directions on this https://lede-project.org/docs/guide-quick-start/verify_firmware_checksum you will verify your download using SHA256. But when verifying the firmware Luci uses MD5 to produce the 32 character string you see on the screen, at least it does on my OpenWRT 15.05 router. To reproduce this value shown by Luci simply use your operating system to find the MD5 checksum for your downloaded system upgrade binary-- they should match.

This information about the MD5 checksum comes from https://wiki.openwrt.org/doc/howto/generic.sysupgrade where in the LuCI web interface upgrade procedure section it states:

LuCI will calculate the MD5 checksum of the file ...

If you were like me, you got stopped in your tracks at step 6 in the Sysupgrading an existing LEDE device from the web admin GUI documentation that says:

Check that the firmware-checksum displayed on the web GUI matches the SHA256 checksum from the LEDE downloaded page. If it does not match, do NOT continue, as it is a corrupt file and will likely brick your device.

So, after confirming the MD5 signature of my downloaded binary did match what Luci was showing, I went ahead and flashed my router and the upgrade went perfectly. Good luck with your router upgrade!

1 Like