TP-Link MR200 Ver5.30 - available storage

Hi, I had a TP-Link MR200 V5.30 laying around. Wanted to use it as a LTE/3G/4G openvpn tunnel.

Found here that it’s the same HW as V5 Installed openwrt MR200 V5 recovery.bin then upgraded with sysupgrade.bin. After flashing openwrt i faced a memory size mismatch.

HW table says it has 8MB, but when I tried to install uqmi was faced with not enough space opkg error.

MR200 V5 Techdata

root@OpenWrt:~# df -h
Filesystem                Size      Used Available Use% Mounted on
/dev/root                 4.0M      4.0M         0 100% /rom
tmpfs                    28.5M    188.0K     28.3M   1% /tmp
tmpfs                    28.5M     52.0K     28.4M   0% /tmp/root
tmpfs                   512.0K         0    512.0K   0% /dev
/dev/mtdblock4            2.1M    228.0K      1.9M  10% /overlay
overlayfs:/overlay        2.1M    228.0K      1.9M  10% /

Could anyboy enlighten me what happens here?

flash chip size <> available flash space ?

you have almost 2MB free, what exactly were you installing, for me uqmi + dependencies require 670kb.

Have you tried creating your own custom image with the packages you want installed (exceeding the limit will result in an error):

https://firmware-selector.openwrt.org/?version=24.10.4&target=ramips%2Fmt76x8&id=tplink_archer-mr200-v5

You can specify the version at the top right.

Sorry, uqmi is preinstalled in the openwrt sysupgrade image. I was searching for tools for the modem to show up in luci and found luci-proto-qmi. The question still holds.

flash chip size <> available flash space ?

Was this a rethoric question, where I have to understand that the two are not the same?

Here is an openvpn-openssl install, after a fresh openwrt image flash, same problem:

root@OpenWrt:~# opkg install openvpn-openssl
Installing openvpn-openssl (2.6.14-r2) to root...
Downloading https://downloads.openwrt.org/releases/24.10.5/packages/mipsel_24kc/packages/openvpn-openssl_2.6.14-r2_mipsel_24kc.ipk
Installing kmod-tun (6.6.119-r1) to root...
Downloading https://downloads.openwrt.org/releases/24.10.5/targets/ramips/mt76x8/kmods/6.6.119-1-83277e73d11a8435301cf48afe8779ec/kmod-tun_6.6.119-r1_mipsel_24kc.ipk
Installing libcap-ng (0.8.4-r1) to root...
Downloading https://downloads.openwrt.org/releases/24.10.5/packages/mipsel_24kc/packages/libcap-ng_0.8.4-r1_mipsel_24kc.ipk
Installing liblzo2 (2.10-r4) to root...
Downloading https://downloads.openwrt.org/releases/24.10.5/packages/mipsel_24kc/packages/liblzo2_2.10-r4_mipsel_24kc.ipk
Installing liblz4-1 (1.10.0-r1) to root...
Downloading https://downloads.openwrt.org/releases/24.10.5/packages/mipsel_24kc/packages/liblz4-1_1.10.0-r1_mipsel_24kc.ipk
Installing libnl-core200 (3.10.0-r1) to root...
Downloading https://downloads.openwrt.org/releases/24.10.5/packages/mipsel_24kc/base/libnl-core200_3.10.0-r1_mipsel_24kc.ipk
Installing libnl-genl200 (3.10.0-r1) to root...
Downloading https://downloads.openwrt.org/releases/24.10.5/packages/mipsel_24kc/base/libnl-genl200_3.10.0-r1_mipsel_24kc.ipk
Installing libatomic1 (13.3.0-r4) to root...
Downloading https://downloads.openwrt.org/releases/24.10.5/targets/ramips/mt76x8/packages/libatomic1_13.3.0-r4_mipsel_24kc.ipk
Installing libopenssl3 (3.0.19-r1) to root...
Configuring kmod-tun.
Configuring liblzo2.
Configuring libcap-ng.
Configuring liblz4-1.
Configuring libnl-core200.
Configuring libatomic1.
Configuring libnl-genl200.
Collected errors:
 * verify_pkg_installable: Only have 1752kb available on filesystem /overlay, pkg libopenssl3 needs 3630
 * opkg_install_cmd: Cannot install package openvpn-openssl.

if you have a 128GB disk drive and install Windows, do you still have 128GB free disk space ?

openvpn <> uqmi
use wireguard instead

you're device is ancient, yes it works, but flash space is insufficient, by today's standards.

you could try to downgrade.

This is a nice tip, didn’t knew about the image configurator., thanks.

I was fiddling with it, as I haven’t worked with LTE modems before and I dont know how to set up simply in a single try.

That is about 2MB, certainly larger than your flash. Just install openvpn mbedtls.
It is up to you to decide if you wish to work around device limitations or complain that 10l of water dont stay in 8l bucket.

1 Like

C’mon guys, I know there is a better answer than posting 8/64 warnings wich show up everywhere already.

In the past I worked with D-Link and Netgear stuff, which had larger Flash and I have’t faced this issue yet.

The 128GB HDD with windows example is’t really good, because there, the OS is installed on a drive where the total size is 128 and the used space by the os appears in the statistics.

What about the apparent and real size mismatch, am I getting something wrong? Can’t that be expanded to the 8MB as shown in the techdata?

I’ll try to answer this myself. It was long time ago when i’ve built kernel for FPGA SoC-s but I remember some things.

The answer would be: The 25.12.0-rc1 release is a small binary image with a linux kernel loaded into RAM by the bootloader which needs : 6912 kB in the flash to work, the remaining 2.1MB space is usable by apps.

For me Openvpn is a must, the provider limit’s me to it. Thanks for suggesting openvpn-mbedtls i'll give a try. If I scucceed i’ll let you know.

if you store the openwrt image off device and still manage to boot it, sure.

not sure I understand how the 864 warning relates to the free/allocated flash space.

1 Like

It is totally expanded, just that OpenWrt kernel has to be there first to do anything with your data partition.

1 Like

Let's take a step back and look at it unscientifically for a moment.

  8'388'608 total flash
- 7'799'105 openwrt-24.10.5-ramips-mt7620-tplink_archer-mr200-squashfs-sysupgrade.bin
-   196'608 bootloader/ wifi calibration
  =========
    392'895 byte

~at most 384 KB free space, yes this is unscientific (it will be less than that), disregarding the exact details for your device (the OEM partitioning, reserved space, etc.), padding requirements, fs overhead, etc., but it works as a first rule of thumb.


EDIT/ DISCLAIMER: this rough-shot approximation only works for SPI-NOR flash, not NAND (ECC && wear leveling reservations, as well as UBI volume sub-partitioning), it does not work with a/b (dual-)firmware slots (~halving the space once again) and depending on your model, the vendor might have reserved additional space for vendor specific partitions. But it nevertheless provides you a rough idea about the best case scenario, which should be fairly accurate for *this* case.
1 Like