Unable to boot on a recent snapshoot or custom built firmware for a Linksys 3200ACM

Hello all !

I'm currently facing an issue where I'm trying to get the latest version possible on my router but all current tries failed.

My end goal is to have a firmware were I would be able to use docker at best or lxc as an alternative

I initially tried the latest available build at the snapshot download page (I took the sysupgrade file for the right device wich is named openwrt-mvebu-cortexa9-linksys_wrt3200acm-squashfs-sysupgrade.bin

when applying this update, luci complains that the firmware isn't supported. After a quick look to the codename of my router it appear that the 3200acm is also named rango so I went with that but this brick my routeur and i'm unable to properly boot (cannot recive any ip from the router, cannot ssh to it either). when this happened I booted to the alternative firmware

Reverting to the latest stable sysupgrade version doesn't show the warning and restore my router to a working state.

Because my main goal is to be able to work with containers I know I need to build a firmware with cgroup capabilities so I did that twice:

  • First using the openwrt repo streight from the HEAD of the master branch. This produce the exact same behavior as when I'm trying to upgrade the firmware to the latest available snapshot: I have a warning when applying the firmware in luci and I need to switch the firmware again and revert to a stable firmware.

out of curiosity I tried to build a stable firmware by following the same build steps but instead if building from the HEAD of master branch I switched to the v19.07.3 tag. I also added python2.7 as a dependency to successfully build a firmware. Booting on that custom stable firmware works but I don't have access to docker-ce

Can someone guide me into diggin a bit further and understand what is happening ? :slight_smile:


additionnal notes :

  • I'm building the firmware in a podman container. this doesn't have any effect because it work for the stable firmware so I expect the build process to also work for the latest firmware possible build as well.
  • I'm using the following chain of commands in my container to build a firmware (as said python2.7 is here for the stable version but isn't required by the latest firmware):
# launching a container
podman run -it -v "${HOME}/.openwrt_build:/src" ubuntu
apt-get update &&\
apt-get -qq -y install \
  build-essential flex python3.8 python2.7 \
  libncurses-dev zlib1g-dev libc6-dev \
  unzip gawk subversion wget git curl &&\
cd /tmp &&\
git clone https://github.com/openwrt/openwrt.git &&\
cd openwrt &&\
git checkout 'v19.07.3' &&\
./scripts/feeds update -a &&\
./scripts/feeds install -a
 
# generate config, or copy an already config file (chose one of the 3 next commands)
# I have these files stored in a folder on my host so I avoid going to menuconfig all the time
make menuconfig
cp '/src/.openwrt_build_config_snapshot' ./.config
cp '/src/.openwrt_build_config_v19.07.3' ./.config
 
# build
FORCE_UNSAFE_CONFIGURE=1 make -j8 V=s
# using FORCE_UNSAFE_CONFIGURE as I run everything as root in this container (it's a rootless container so from host perspective it's my user that compile everything)
# I also differ here from the README using *-j8* but building firmware with -J1 or -J8 don't cause firmware to fails or succeed, it just make more jobs running in //

All help appreciated !

Thank you :slight_smile:

It took me the whole day but my issue seemed to be fixed with a manual flash through an ssh connection. I had to flash the sysupgrade binary with the following options : -n -v -F.

a step by step procedure to flash recent firmware would be :

  • download the latest sysupgrade firmware
  • upload it to the router trough ssh using scp, for exemple scp sysupgrade -n -v openwrt-mvebu-cortexa9-linksys_wrt3200acm-squashfs-sysupgrade.bin root@192.168.1.1:/tmp/
  • login to your router and apply the upgrade: with the following command : sysupgrade -n -v /tmp/openwrt-mvebu-cortexa9-linksys_wrt3200acm-squashfs-sysupgrade.bin

The recent builds have some sort of changes caused by this commit which make newer firmware buggy at boot.

Now i'm still not able to install docker but it's because my overlay is too tiny. A whole other issue :slight_smile:

Not really a bug, search the forum on DSA if you need VLAN setup info.

1 Like

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