TLDR: OpenWrt is giving me only <4MB usable disk space on a 32MB flash chip
Hi forum, I am in Japan and looking for a <5000Yen option to set up a tailscale server in the local office, and got adventurous and purchased an ELECOM WRC-2533GS2V-B (B for Black). I set it up with OpenWrt and tried to install tailscale, only to see this error message:
Collected errors:
* verify_pkg_installable: Only have 3480kb available on filesystem /overlay, pkg tailscale needs 25470
* opkg_install_cmd: Cannot install package tailscale.
I installed using the WRC-2533GS2 firmware. According to datapage WRC-2533GS2 has "Flash MB: 16". Here is cat /proc/mtd result
cat /proc/mtd seems to show a total of 30MiB (~32MB) flash memory available. That would be 2 times the documented 16MB for WRC-2533GS2, and may be what the "V" means.
But if there are total 32MB available, even if OpenWrt takes up some space, if 16MB is supported, that should leave me with 16MB at least, right?
Thats assuming you boot OpenWrt from floppy disk? It takes 6-7MB for kernel and basic squashfs root. Probably you can add tailscale to imagebuilder/firmware selector and re-compressed package fits 20-some MB space you got.
Thank you for the advice! I downloaded the firmwared I used from Table of Hardware. Let me try using the customization feature in the firmware selector.
I could not generate the firmware. The firmware selector gave the following error:
Pseudo file "dev" exists in source filesystem "/builder/build_dir/target-mipsel_24kc_musl/root-ramips/dev".
Ignoring, exclude it (-e/-ef) to override.
6217+1 records in
6217+1 records out
3183312 bytes (3.2 MB, 3.0 MiB) copied, 0.00746991 s, 426 MB/s
21347+1 records in
21347+1 records out
10929996 bytes (11 MB, 10 MiB) copied, 0.025122 s, 435 MB/s
padding image to 00d80000
WARNING: Image file /builder/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/tmp/openwrt-24.10.1-a6ee4e000ebf-ramips-mt7621-elecom_wrc-2533gs2-squashfs-sysupgrade.bin is too big: 14155780 > 11534336
Failed to open firmware file
sha256sum: /builder/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/tmp/openwrt-24.10.1-a6ee4e000ebf-ramips-mt7621-elecom_wrc-2533gs2-squashfs-sysupgrade.bin: No such file or directory
cp: cannot stat '/builder/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/tmp/openwrt-24.10.1-a6ee4e000ebf-ramips-mt7621-elecom_wrc-2533gs2-squashfs-sysupgrade.bin': No such file or directory
Notably:
WARNING: Image file ...elecom_wrc-2533gs2-squashfs-sysupgrade.bin is too big: 14155780 > 11534336
It seems that the original wrc-2533gs2 image is set to be contained within 11MiB to leave about 4MB of usable space on the 16MB flash. This might explain why I also get about 4MB of usable space, but it's only a guess. This is wrong per musashino's reply.
I am a bit scared to start changing the partitions without a proper understanding and plan.
WRC-2533GS2(V) has a 16MiB flash storage and only 11MiB is available for OpenWrt. So the tailscale package (> 20MiB) larger than it cannot be installed.
UPDATE: The new plan succeeded in restoring the device back to vendor firmware.
May I also ask you to check my plan for restoring WRC-2533GS2 to vendor firmware? I have downloaded the firmware from the official source.
Per your instruction in the blog article, I need to remove the first 32 bytes and then write to the firmware partition with mtd.
The new plan:
dd if=WRC-2533GS2_v1.69.bin of=WRC-2533GS2_v1.69_modified.bin bs=32 skip=1
# start a webserver serving the modified bin
# open a new terminal window
ssh root@192.168.1.1
cd /tmp/tmp
wget http://192.168.1.184:9800/WRC-2533GS2_v1.69_modified.bin
mtd -r write WRC-2533GS2_v1.69_modified.bin firmware
scp in the old plan does not work due to lack of sftp in OpenWrt.