Using new image custom-built from trunk last week, I have been testing it since then. No lucy, opkg, etc. Seems to be quite usable now. Fancy things not tested, but basic functions work quite well. Neither linux-based laptop nor android cell phone got stuck as before.
Openwrt 18.06.2 builds just released, its looking more stable, but I need to test a bit more.
openwrt-18.06.2-ramips-mt76x8-tl-wr841n-v13-squashfs-tftp-recovery.bin (release date Thu Jan 31 02:55:15 2019)
openwrt-18.06.2-ramips-mt76x8-tl-wr841n-v13-squashfs-sysupgrade.bin (release date Thu Jan 31 02:55:15 2019)
@ralaud
I just installed
And my dell laptop can connect easily to the router. All my device can connect successfully. Also I can browse from my rooftop with my android. Now lets see how is it working with my devices.
Thanks to the developers.
Has this been fixed by TP-Link now, or is it still the only possibility to install LEDE?
Also, could one circumvent this with using a device specific image that contains more than one header?
Hey! Can you help me, I want to delete header of original tp link firmware as you did for TL-WR841N, but I want RU version, which can be downloaded here TL-WR841N v13 RU I dont know how to make STRIPPED version...
By the way, i think you use dd if=orig.bin of=stripped.bin skip=1 bs=512
is it correct?
I compare two files, the original
TL-WR841Nv13_EU_0.9.1_4.16_up_boot[180119-rel65243].bin
and yours
tp_recovery(TL-WR841N(EU)_V13_STRIPPED).bin
the only difference is first 512 bytes (from the beginning of the original file till 0x00200).
So that makes sense: for new releases of firmware for WR841N V13 we should use next command for wiping the header of the original firmware
dd if=orig.bin of=stripped.bin skip=1 bs=512
and thanks mk24 for pointing out my mistake with the code
P.S. after using OpenWRT on my WR841NV13 for about 2 weeks I realized that wifi is so unstable, sometimes it just shut down...
P.S2. so I back to original firmware with TFTP method with the STRIPPED firmware by ralaud and the device works fine.
P.S3 I've found out how many bytes have to be removed from the original file for flashing using TFTP method (remember, if you use tftp method with original tplink firmware you get loop boot). And i remove that 512 bytes from original RU firmware for this router, but i'm scared for trying it. Can that be hardly bricked if I was not right about that 512 bytes?
Input File is if=
not in=
.
Also i've found a discussion here about revert to stock firmware
openwrt_forum
Install Kali Linux. Easiest to do on Windows 10 Microsoft Store. From Windows command line enter 'kali' this will take you to Kali Linux shell. Windows C drive is mounted as C. Type cd /mnt/C and you will be in Windows C drive. Enter binwalk firmware.bin and this will give you the partition layout. Then look for the value next to 0x20400 LZMA. This will be the number you need for skip. Divide this by 512 and that will be your skip value.
This will be the likely trim:
The following method applies for the V1, V3, V5, V7, V8, V9 and V10 since the bootloader is the same size.
An example of an image file with the word “boot” in it is
wr841nv9_en_3_14_4_up_boot(131129).bin
.Cut the first 0x20200 (that is 131,584 = 257*512) Bytes from original firmware:
dd if=orig.bin of=tplink.bin skip=257 bs=512
Here is what i get with binwalk of firmware i needed to edit:
binwalk TL-WR841Nv13_RU_0.9.1_4.16_up_boot[191015-rel65109].bin
DECIMAL HEXADECIMAL DESCRIPTION
--------------------------------------------------------------------------------
82592 0x142A0 U-Boot version string, "U-Boot 1.1.3 (Oct 15 2019 - 17:55:20)"
132096 0x20400 LZMA compressed data, properties: 0x5D, dictionary size: 8388608 bytes, uncompressed size: 3286220 bytes
1442304 0x160200 Squashfs filesystem, little endian, version 4.0, compression:xz, size: 4544848 bytes, 685 inodes, blocksize: 131072 bytes, created: 2019-10-15 10:05:11
meaning that i have to skip 256 * 512 bytes?
so the code will be:
dd if=orig.bin of=stripped.bin skip=256 bs=512
but then the next question. I used STRIPPED version of V13 (tp_recovery(TL-WR841N(EU)_V13_STRIPPED).bin) firmware for my router that i grabbed from this thread and that works fine! And I checked for sure that the difference between the original EU firmware and stripped version is just 512 bytes, here is what i get with binwalk
binwalk TL-WR841Nv13_EU_0.9.1_4.16_up_boot[180119-rel65243].bin
DECIMAL HEXADECIMAL DESCRIPTION
--------------------------------------------------------------------------------
82464 0x14220 U-Boot version string, "U-Boot 1.1.3 (Jan 19 2018 - 17:59:01)"
132096 0x20400 LZMA compressed data, properties: 0x5D, dictionary size: 8388608 bytes, uncompressed size: 3101556 bytes
1442304 0x160200 Squashfs filesystem, little endian, version 4.0, compression:xz, size: 3435831 bytes, 651 inodes, blocksize: 131072 bytes, created: 2018-01-19 10:07:34
so compare that with the stripped firmware I got from this thread
binwalk tp_recovery(TL-WR841N(EU)_V13_STRIPPED).bin
DECIMAL HEXADECIMAL DESCRIPTION
--------------------------------------------------------------------------------
81952 0x14020 U-Boot version string, "U-Boot 1.1.3 (Jan 19 2018 - 17:59:01)"
131584 0x20200 LZMA compressed data, properties: 0x5D, dictionary size: 8388608 bytes, uncompressed size: 3101556 bytes
1441792 0x160000 Squashfs filesystem, little endian, version 4.0, compression:xz, size: 3435831 bytes, 651 inodes, blocksize: 131072 bytes, created: 2018-01-19 10:07:34
the stripped version is just without first 512 bytes from the beginning. Its not cut until LZMA compressed data as you said...
Be aware if the original firmware does not include the word "boot" it does not require stripping:
in case the file name of this firmware file does not contain the word “boot” in it, you can simply revert back to original firmware
in case the file name of this firmware file does contain the word “boot” in it, you need to cut off parts of the image file before flashing it:
It does contain the word "boot", all of them..
that means that all of them have to be modified with dd command