This is not possible without bootloader modification.
TP-link build a tiny u-boot to fit in one flash block(64kb). Only this commands are compiled in:
erase
cp
setenv
reset
tftpboot
For a fully featured u-boot it is necessary to change the flash layout.
It should be possible to add only bootm cmd if you are willing to flash a modified bootloader.
I upgraded my router to 8M flash memory. RAM left 32M, I did not change this chip. Attached a patch for the current snapshoot. I used unmodified u-boot from Timowi (see up)
$ ssh root@OpenWrt /var/opt/vanessa/router/tp-wr841-v14/timowi/openwrt
root@openwrt's password:
BusyBox v1.31.1 () built-in shell (ash)
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
OpenWrt SNAPSHOT, r15004-4799810745
-----------------------------------------------------
root@OpenWrt:~# cat /proc/cpuinfo
system type : MediaTek MT7628AN ver:1 eco:2
machine : TP-Link TL-WR841N v14 8M
processor : 0
cpu model : MIPS 24KEc V5.5
BogoMIPS : 385.02
wait instruction : yes
microsecond timers : yes
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : yes, count: 4, address/irw mask: [0x0ffc, 0x0ffc, 0x0ffb, 0x0ffb]
isa : mips1 mips2 mips32r1 mips32r2
ASEs implemented : mips16 dsp
Options implemented : tlb 4kex 4k_cache prefetch mcheck ejtag llsc pindexed_dcache userlocal vint perf_cntr_intr_bit perf
shadow register sets : 1
kscratch registers : 0
package : 0
core : 0
VCED exceptions : not available
VCEI exceptions : not available
root@OpenWrt:~# df -hT
Filesystem Type Size Used Available Use% Mounted on
/dev/root squashfs 3.5M 3.5M 0 100% /rom
tmpfs tmpfs 12.9M 304.0K 12.6M 2% /tmp
/dev/mtdblock4 jffs2 2.6M 232.0K 2.4M 9% /overlay
overlayfs:/overlay overlay 2.6M 232.0K 2.4M 9% /
tmpfs tmpfs 512.0K 0 512.0K 0% /dev
root@OpenWrt:~# uname -a
Linux OpenWrt 5.4.77 #0 Mon Nov 23 11:52:11 2020 mips GNU/Linux
root@OpenWrt:~# cat /proc/mtd
dev: size erasesize name
mtd0: 00010000 00010000 "boot"
mtd1: 007e0000 00010000 "firmware"
mtd2: 001daf47 00010000 "kernel"
mtd3: 006050b8 00010000 "rootfs"
mtd4: 002a0000 00010000 "rootfs_data"
mtd5: 00010000 00010000 "factory"
PS The question is not on the topic: what is the factory partition ?
I've been using your firmware for my v14 but the config isn't kept after a reboot. I've tried several compilations from the source but can't find the right modules to activate. Can you share your parameters for the dnscrypt build?
I have seen this thread to support the above router on OpenWrt. I have created my own image (based on official 18.06.9) which includes:
PPPoE
Luci
UPnP
opkg
CONFIG_TARGET_ramips=y
CONFIG_TARGET_ramips_mt76x8=y
CONFIG_TARGET_ramips_mt76x8_DEVICE_tplink_tl-wr841n-v14=y
CONFIG_BUSYBOX_CUSTOM=y
CONFIG_BUSYBOX_CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
# CONFIG_BUSYBOX_CONFIG_FEATURE_IPV6 is not set
# CONFIG_IPV6 is not set
# CONFIG_KERNEL_CRASHLOG is not set
# CONFIG_KERNEL_ELF_CORE is not set
# CONFIG_KERNEL_IPV6 is not set
# CONFIG_KERNEL_PRINTK is not set
CONFIG_LUCI_SRCDIET=y
CONFIG_PACKAGE_cgi-io=y
# CONFIG_PACKAGE_dropbear is not set
CONFIG_PACKAGE_libiwinfo-lua=y
CONFIG_PACKAGE_liblua=y
CONFIG_PACKAGE_liblucihttp=y
CONFIG_PACKAGE_liblucihttp-lua=y
CONFIG_PACKAGE_librt=y
CONFIG_PACKAGE_libubus-lua=y
CONFIG_PACKAGE_libupnp=y
CONFIG_PACKAGE_libuuid=y
CONFIG_PACKAGE_lua=y
CONFIG_PACKAGE_luci=y
CONFIG_PACKAGE_luci-app-firewall=y
CONFIG_PACKAGE_luci-app-upnp=y
CONFIG_PACKAGE_luci-base=y
CONFIG_PACKAGE_luci-lib-ip=y
CONFIG_PACKAGE_luci-lib-jsonc=y
CONFIG_PACKAGE_luci-lib-nixio=y
CONFIG_PACKAGE_luci-mod-admin-full=y
CONFIG_PACKAGE_luci-proto-ppp=y
CONFIG_PACKAGE_luci-theme-bootstrap=y
CONFIG_PACKAGE_miniupnpd=y
CONFIG_PACKAGE_rpcd=y
CONFIG_PACKAGE_rpcd-mod-file=y
CONFIG_PACKAGE_rpcd-mod-iwinfo=y
CONFIG_PACKAGE_rpcd-mod-rrdns=y
CONFIG_PACKAGE_u2pnpd=y
CONFIG_PACKAGE_uhttpd=y
CONFIG_STRIP_KERNEL_EXPORTS=y
CONFIG_USE_MKLIBS=y
CONFIG_PACKAGE_kmod-nf-ipt6=y
CONFIG_PACKAGE_libip6tc=y
In case if anyone is still interested in upgrading their old V14, I've done some modifications here and it can be permanent in some ways. so enjoy modding!
I have installed the official snapshot through TFTP and tested @ulbricht-inr sysupgrade with LuCI but it's not persisting the changes
Not sure if there is a working firmware that persist changes for 14.0 4/32 currently
EDIT:
Here are my builds based on @Shine- 19.07 patch and configs (using latest 19.07 snapshot from github r11431-83b0e20711)
Working great. So far the only ones that have worked for me with persistent memory for v14.0 with a fairly recent openwrt version compared to all those based on 17/18 I've seen on this thread.
Hi, I have an TL-WR841N v14 00000014 with 0.9.1 4.17 v0283.0 Build 200921 Rel.74350n
I have no idea if it has 4/16 or 4/32 as the fw doesn't show it, how can I know?
I want to use it as Access point only, eventually I would like it pay support PPPoE if in this package it is supported L2TP protocol (please tell me thanks). No IPv6. The problem I have is that with latest stock the device start blocking comunication between devices connected on WiFi (but not the ones on etherent), a reboot solves it but for some minutes only, thes is why I want to upgrade
I've read some contraddictions in this topic so I would like to clear them before proceed.
Which image you recomend to flash?
Can I flash it choosing the upgrade inside the web interface of the stock fw? Or do I need tftp?
Does it include the new bootloader? Should I update the bootloader too? (I would not do it)
Can I eventaully reverst to stock by web interface? Or should I TFTP?
In this topic I've found there, d you recomend/tested? Thanks
Support for TL-WR841N v14 - #53 by mpestotnik from snapshots this guy looks to have an a router with 32 flash, how can I know if it fits on mine? also tftp and ssh are disabled, can fw be changed by the web interface after?
Thanks for support