I am not responsible if your devices send you back in time, explodes, implodes, bricks or flies into space from the use of any software I put up.


Monday, June 9, 2014

Barrier Breaker Builds For WR1043ND

Please refer to my latest post for the new updates, this post has been deprecated.

  1. Reduce ZRAM to 1/4 of RAM based on system usage observation
  2. Update config and redo optimization flag
I have release a new OpenWRT BB Build and AA for
  1. MR3420v2 (For 8MB Flash only you need to upgrade the flash to 8MB to use it)
  2. WR1043NDv1
  3. WDR3500/WDR3600/WDR43XX/MW4350R
Available here
I added OpenVPN with luci interface and upgraded many packages including miniDLNA.
When I tested I was not able to encounter any wireless issues even when I saturate the Router with torrents with large seeders.
If you are restoring your config please DELETE the old /etc/config/wireless as there are some changes to the wireless config.
rm /etc/config/wireless
wifi detect > /etc/config/wireless
I have completed a working Barrier Breaker build for WR1043ND.
It is complete with firmware and packages in the bin directory.
This time I did it the correct way so you can easily fork and pull the updates from the official openwrt repository.
I also separated the packages and the luci repository.
There are some difference in my luci and package repository.
First the LuCI is minified and I added Multiwan 3 from a OpenWRT forumer and Smart Queue Manager from CeroWRT.
I also removed PPOA from luci and modified packages such as lighttpd from the original repo.
The good part is if you have you own router buildroot and you want to pull from my packages and luci repos you can just add it to the feeds and the buildroot will automatically pull the feeds.

If you want to build your own router firmware:
1)Install the software development packages on your Linux system.
2)Git clone the repos
3)change directory into the repo
- ./scripts/feeds update -a
- ./scripts/feeds install -a
- make menuconfig
4) Choose whatever you want then
- make V=s

It seems like barrier breaker is doomed for a performance regression, actual NAT Speeds I can obtain from jperf is around 130 Mbps with Layer 7 enabled.

You can download the firmware from here.
It uses Multiwan 3 and Smart Queue Manager instead of QoS-Scripts.
It also has ZRAM included that takes up half your memory for swap.

Do not use the attitude adjustment OpenSSL functions!
It is not patched unlike my new barrier breaker builds.


Anonymous said...

Hi Admin,
Can the wr1043nd_sysupgrade_back_to_factory.bin be used to revert from Barrier Breaker build to stock firmware? Thanks!

Admin said...

Yes, it can.

Wilfried Gödert said...

Hi thanks to this build. I did tryto update the packages. and to install some but it did failed.

Downloading http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/Packages.gz.

Collected errors:
* opkg_download: Failed to download http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/Packages.gz, wget returned 255.

I suggest to compile a build for WR1043nd AA with the fixed SSL package. Alot will download directly AA from Git or compile it.

Admin said...

Oh crap, I forgot I replaced wget with curl...
Sry about that...

Wilfried Gödert said...

If its not to much work please compile a binary with the openssl bugfix not to spread security broken builds through the internet. Thanks.

No more work at AA at the moment is ok but security fixes still should be done.

DC said...

Does it work with V2 of WR1043ND?

Is it possible to upgrade from previous attitude adjustment build to this new build? I have tried from LuCI with no luck, it asks for a compatible flash file.

Admin said...

Will fix haven't touch the AA buildroot for a long while

Wilfried Gödert said...

I am glad you will fix the open ssl bug in adituted adjustment. I saw you working at the Multiwan3 and the Cerowrt since months. Both are not installed now and after yours update yesterday still wget ist not working.

I did open a webchat at http://hideme.gotodoc.de/webchat/ i will be happy if you join it and have a short talk. Its a XMPP Jabber behind the Webchat not much traffic there most time i am be allone there. I am user arztde or admin there. Wellcome in Germany ArcticCheetah ;-)

Admin said...

I just updated the image now opkg update should be working =)

Wilfried Gödert said...

I saw it was 3 hours ago.Iwill test some and will report you tomorrow. There is a V-Server service irent and there is a location in Signapore to Those V-Servers running KVM and its perfect in my opinion to test developement. Setup is less in a Minute for a CentOS for example Maybee you like it. Was the reason i did offer youthe chat.

Wilfried Gödert said...

Works :-) this mistake appears allways but german runs perfect.

Installing luci-i18n-german (svn-r9964-1) to root...
Downloading http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/luci-i18n-german_svn-r9964-1_ar71xx.ipk.
Configuring luci-i18n-german.

Collected errors:
* pkg_run_script: package "luci-i18n-german" postinst script returned status 255.
* opkg_configure: luci-i18n-german.postinst returned 255.

Wilfried Gödert said...

I intermediate did install old openvpn installation

Installing openvpn-openssl (2.3.2-3) to root...
Downloading http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/openvpn-openssl_2.3.2-3_ar71xx.ipk.
Configuring luci-i18n-german.

Collected errors:
* satisfy_dependencies_for: Cannot satisfy the following dependencies for openvpn-openssl:
* kernel (= 3.10.36-1-0839f991138461479a364e867bb72685) *
* opkg_install_cmd: Cannot install package openvpn-openssl.

Admin said...

You can try downloading from here

Daniel said...

Anyone tried with WR1043ND V2?

Wilfried Gödert said...

@Daniel i bought a V2 for tests. But its very clear Admins builds will not work because there is complete different hardware. For V3 you need to use the official builds from OpenWRT and adobt them. Be careful, they use no browser Interface.

Wilfried Gödert said...

Still the same error. Is it possible to integrade OpenVPN including The Luci Package in yours build. If you like i look you get a test accound by a VPN Provider.
The Router works perfect and stabile before and PPTP is not a solutionbecause much more unsecure.
Here are some instructions how to install.


Installing openvpn-openssl (2.3.2-3) to root...
Downloading http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/openvpn-openssl_2.3.2-3_ar71xx.ipk.
Configuring luci-i18n-german.

Collected errors:
* satisfy_dependencies_for: Cannot satisfy the following dependencies for openvpn-openssl:
* kernel (= 3.10.36-1-0839f991138461479a364e867bb72685) *
* opkg_install_cmd: Cannot install package openvpn-openssl.

Admin said...

Sorry what I mean is

ssh root@ip-address

cd /tmp/

wget --no-check-certificate https://github.com/gwlim/barrier-breaker-wr1043nd/blob/master/bin/ar71xx/packages/liblzo_2.06-1_ar71xx.ipk?raw=true

wget --no-check-certificate https://github.com/gwlim/barrier-breaker-wr1043nd/blob/master/bin/ar71xx/packages/kmod-tun_3.10.36-1_ar71xx.ipk?raw=true

wget --no-check-certificate https://github.com/gwlim/barrier-breaker-wr1043nd/blob/master/bin/ar71xx/packages/openvpn-openssl_2.3.2-3_ar71xx.ipk?raw=true

mv liblzo_2.06-1_ar71xx.ipk?raw=true liblzo_2.06-1_ar71xx.ipk

mv kmod-tun_3.10.36-1_ar71xx.ipk?raw=true

mv openvpn-openssl_2.3.2-3_ar71xx.ipk?raw=true openvpn-openssl_2.3.2-3_ar71xx.ipk

opkg install liblzo_2.06-1_ar71xx.ipk
opkg install kmod-tun_3.10.36-1_ar71xx.ipk
opkg install openvpn-openssl_2.3.2-3_ar71xx.ipk

The problem is that the openwrt repository is not in sync with the latest source because the buildbots are not rebuilding the packages everyday.

Wilfried Gödert said...

seems to work in a first test. I did recognize at my server different Attacks from China in my fail2ban installation. All are tring to get access to the ssh. Maybee its worth to have a look to it and include it. Its not a tool to protect for shure but reduces traffic. Its only good as you make the rules

HL Tay said...

Hi, I have a problem with your barrier-breaker-wr1043nd / bin / ar71xx / openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-factory.bin build.

I couldn't access certain websites such as FB. The page didn't load and if it loaded, the page appeared broken.

I tested it twice continuosly just to be sure. (Your build-cannot access FB. Reverted back to stock Tplink-can access FB. Flashed again your build-cannot access FB. Reverted back to stock Tplink then flashed latest snapshot-can access FB.)

My wan is set to pppoe. I have enabled wireless. I have also enabled smart queue manager. I noticed that multiwan 3 didn't work right of the box. Error on WAN gateway metric. So I put a number there, and the status turned green.

I did not install any other packages. I did not touch any other settings. Everything is as it is.

Can you help me out please?Thx.

Veine Monen said...


I'm experiencing wireless loss of connectivity after a few minutes uptime,on a TP-LINK 1043ND v1 :(

Unknown said...

I am getting the same issue as well will look into this.

Wilfried Gödert said...

I can verify the stabillities issues in parts.

And i get crazzy because i can not install openvpn and no chance to get it to run. Its also not possible for me to do it with the terminal based method. Admin did you got my mail?

Admin said...

I recommend you guys to use the attitude adjustment first the vpn packages are available as well.

Admin said...

@Wilfried Gödert
Nope I did not receive any emails from you.
It is alphasparc at gmail.

sm said...


I'm looking to run your custom routerwares, which router do you recommend in this year of '14? Same old wr1043nd (v1)(if I can find it some where!) or the newer version wr1043nd (v2)? Or a different model all together?

Thanks you.

Admin said...

I recommend WDR4300 but I have yet to built for it.

Wilfried Gödert said...
This comment has been removed by a blog administrator.
Admin said...

You have to download the luci-openvpn from github.
opkg only works if there is a package repository setup.
Download the ipk using wget and install
opkg install /tmp/something.ipk.
I did not add OpenVPN as default because it will be too big.

Philipp Glatz said...

Admin I need your help

I download this .ipk und verschiebe es in /tmp/ > openvpn-openssl_2.3.2-3_ar71xx.ipk .

Now I admit with putty " opkg install /tmp/openvpn-openssl_2.3.2-3_ar71xx.ipk "
and there is the error message :

root@OpenWrt:/tmp# opkg install openvpn-openssl_2.3.2-3_ar71xx.ipk
Installing openvpn-openssl (2.3.2-3) to root...
Collected errors:
* satisfy_dependencies_for: Cannot satisfy the following dependencies for openvpn-openssl:
* kmod-tun *
* opkg_install_cmd: Cannot install package openvpn-openssl.

Where is the problem?

@ The Overclocking flash worked :)
But OpenVPN default would be really great!

Admin said...

I think the recent dropbear update messed up the config.
I have generated new binaries which build in kmod-tun by default.
As much as I would like to include OpenVPN as a standard package it will bloat up the base binary so I made it a modular package to be installed as the user deem fit

FL said...

I use your lastest AA build for WR1043ND v1.

Is it value upgarde to BB. Any advantages in BB ??


Admin said...

Mainly ipv6 support and full switch to FQ_CODEL scheduler, Attitude Adjustment has only partial FQ_CODEL in QoS.

FL said...


Wilfried Gödert said...

Hi i did try the June Update AA...

Seems there are some mistackes withthe package manager in Luci and also at the terminal

root@OpenWrt:~# opng update
-ash: opng: not found
root@OpenWrt:~# opkg update
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/gene c/packages/Packages.gz.
Updated list of available packages in /var/opkg-lists/attitude_adjustment.
root@OpenWrt:~# opkg update
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/gene c/packages/Packages.gz.
Updated list of available packages in /var/opkg-lists/attitude_adjustment.
root@OpenWrt:~# opkg install luci-i18n-german
Installing luci-i18n-german (0.11.1-1) to root...
Downloading http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/gene c/packages/luci-i18n-german_0.11.1-1_ar71xx.ipk.
Collected errors:
* gz_open: fork: Cannot allocate memory.
* opkg_install_pkg: Failed to unpack control files from /tmp/opkg-DPn1e1/luci 18n-german_0.11.1-1_ar71xx.ipk.
* opkg_install_cmd: Cannot install package luci-i18n-german.

Veine Monen said...


I upgraded to the June Barrier breaker, but it is not working properly. The Luci always crashes, is not available. I had to put back the AA (may).

Sorry for my bad English.

Veine Monen said...

I almost forgot!
My router is 1043nd v1.

Admin said...

Are you using MiniDLNA by any chance?

Veine Monen said...

I don't use anything. The error occurs immediately after the update:(

Anton Ekle said...

it's useless, i don't know what to do with it now. It's unreachable most of the time. Luci - dropes constantly. Even ssh freezes somethimes. I just can't understand what couse this behavior. LAck of RAM? It has at least 8mb. Worst of all I CAN'T download other firmware nor via WinScp nor via ssh with wget either. It drops half way. maybe I need bigger swap? or kill heavy processes?

Anton Ekle said...

ok. So i Stopped wifi(it was working out of the box 0_0), stopped mwan3, stopped bunch of stuff and it gives me ~13mb free ram and 6 mb swap.

Luci starts working fast... really fast, but, unfortunately half of menus caused freezes and drop luci down.
But from this point i can use ssh. Unfortunatly flashing failed this time (weird, but happens) now I need to unbreak, so no testing here for now

Admin said...

If you can reach failsafe this is what you can do.
openwrt# mount_root
openwrt# passwd
Enter your password
openwrt# dropbear
Then SCP will be activated.
You can copy the sysupgrade to /tmp/
Then run
sysupgrade -n /tmp/yoursysupgradeimage.bin

Admin said...

This is weird, do you have any syslog messages?
I am running it on my router and it seems find.
Make sure that you are not using the Attitude Adjustment Backup Config because the developers made a lot of changes since.

Admin said...
This comment has been removed by the author.
Admin said...

can you try ssh/telnet into the router then
openwrt# vi /etc/lighttpd/lighttpd.conf
Then delete the 2 lines.
openwrt#/etc/init.d/lighttpd restart
Does it help?

Admin said...

I think I have isolated the issue.
It is lighttpd.
Somehow it is getting impossible to run this webserver on low ram devices.
I have another unmodded router with 32MB of RAM it is proving impossible to run lighttpd with it.
uhttpd runs fine.
If this is the case next version I am going to replace lighttpd with uhttpd and I have already dropped minidlna for barrier breaker this july image because it is impossible to run it on 64MB barrier breaker...

Admin said...

I updated the firmware to replace lighttpd with uhttpd.

Elizabeth Rimini said...

I contemplate upgrading my TL-WR1043ND Ver 1.8 from Attitude Adjustment to your latest Barrier Breaker. The optional packages I currently use are: Luci-app-ddns, Luci-app-qos, openssh-sftp-server, and openvpn. (With all their dependencies that are automatically loaded with them).
I am not using ht-mode, and only 19dBm (with higher gain antennas) – this is my workaround for the Wi-Fi stability issues. Lately I noticed that the router is sometimes temporarily hanging up on some of the computers in the network. I have not been able to analyze the reason for it, as there are no logs generated when it happens, but I believe that it might be related to throughput and queues issues, as I have recently added two computers to my network.
I do not use the regular snapshot due to the warning published here: http://wiki.openwrt.org/toh/tp-link/tl-wr1043nd#upgrading.openwrt
I would like to ask your advice on the following questions:
1. Does Barrier Breaker perform better than Attitude Adjustment in terms of throughput?
2. Have you tested the firmware published here: https://github.com/gwlim/Openwrt_Firmware/tree/master/TP-Link_TL-WR1043ND/Barrier_Breaker/July-2014-image on TL-WR1043ND Ver 1.8?
3. You advised not to use Attitude Adjustment Backup Config because the developers made a lot of changes since. Does that mean that when I upgrade I have to uncheck the “Keep settings” checkmark when I flash the new firmware, and re-enter the entire config manually?
Many thanks

Admin said...

1) No I did performance testing on NAT and it has been degrading since...
Rough gauge
AA: 240Mbps
BB: 180Mbps
But BB has better ipv6 support
2)Yes I have tested it on my modded 64MB TL-WR1043ND
3)The backup files are actually a tar.gz archive meaning if you know which files can be kept you can delete some while keeping others.
I can tell for sure you should not keep the following
/etc/config/wireless because the upstream developers change the HT-Mode config detection.

Anton Ekle said...

hey. So I get arduino cable, flashed brick with your other verison - AA... And I get almost the same result. lighttpd again, but changing config and even disabling it doesn't meter. I mean it works, but obviously RAM is not enough (some sites loads bad as it has wrong MTU or package drop). So I flashed native firmware for now.

I have few questions:
- I tried some OpenWRTs and I can't get even 100M via WiFi. ~70 is max. On native firmware I get ~95(WAN is ~100-103M) I haven't tested WiFi LAN though... It is weird, I read forums about this problem but nothing helped.

- How much does modding to 64mb increasing performance? I know people adding flash-memory too. I don't get it - you can add infinite drive via USB.

- Do you mod Uboot?

I think I should upgrade ram for further testing though ...

Anton Ekle said...

hey. I,ve just installed DDwrt. And it's pretty close to stock in performance. I get something close to 100m setting 20+20 MHz, WPA2 AES,(n only)
so it is pretty cool. Not so expandable from GUI as Openwrt, but for now I'll stick with it... Have to test it out. I would still use stock, but my provider has dickhead support and IT. Their network setup contantly hang up routers with stock. And on WRT I have infinite uptime. Before my ex-provider was sold to this monopolist everything works fine both stock and OpenWRT, but lack of wifi speed on last one bothered me.

Anton Ekle said...

Ok, weird day. Tried bunch of software. OpenWRT is best choise anyway. With RAM I have I'll stick with standart OpenWRT AA build... So I have noscan option, reghack, AES... And it is pretty cool. I have basic stuff,the only package I added was miniupnpd (and I don't know what to do with minidlna< for now. I would play with it when memory upgraded. So for now I go with pure AA. But i will watch your blog and updates. Cool stuff.. and thanks for responding. cheers.

tango said...

HI Admin,
i have tried to make my own build from your sources - but after
make i get following error:

i´d like to add modemsupport from ofmodemsandman.

i have started make without changes, tried make oldconfig, make defconfig - with same results.

WARNING: your configuration is out of sync. Please run make menuconfig, oldconfig or defconfig!
if i let it run make stops with:

make[3]: Entering directory `/mnt/lpool/openwrt-image/tpl/barrier-breaker-wr1043nd/trunk'
make[3]: Nothing to be done for `package/preconfig'.
make[3]: Leaving directory `/mnt/lpool/openwrt-image/tpl/barrier-breaker-wr1043nd/trunk'
rm -f /mnt/lpool/openwrt-image/tpl/barrier-breaker-wr1043nd/trunk/build_dir/target-mips_24kc_uClibc-*.postinst
rm /mnt/lpool/openwrt-image/tpl/barrier-breaker-wr1043nd/trunk/build_dir/target-mips_24kc_uClibc-
rm: cannot remove '/mnt/lpool/openwrt-image/tpl/barrier-breaker-wr1043nd/trunk/build_dir/target-mips_24kc_uClibc-': No such file or directory
make[2]: *** [package/install] Error 1
make[2]: Leaving directory `/mnt/lpool/openwrt-image/tpl/barrier-breaker-wr1043nd/trunk'
make[1]: *** [/mnt/lpool/openwrt-image/tpl/barrier-breaker-wr1043nd/trunk/staging_dir/target-mips_24kc_uClibc-] Error 2
make[1]: Leaving directory `/mnt/lpool/openwrt-image/tpl/barrier-breaker-wr1043nd/trunk'
make: *** [world] Fehler 2

Admin said...

The error comes from the customisation I made.
Inside package/Makefile directory there is a line which says
rm $(TARGET_DIR)/etc/rc.d/S50hd-idle
rm $(TARGET_DIR)/etc/rc.d/S50p910nd
rm $(TARGET_DIR)/etc/rc.d/S50qos
rm $(TARGET_DIR)/etc/rc.d/S50tinyproxy
rm $(TARGET_DIR)/etc/rc.d/S50vsftpd
rm $(TARGET_DIR)/etc/rc.d/S60etherwake
rm $(TARGET_DIR)/etc/rc.d/S60samba
rm $(TARGET_DIR)/etc/rc.d/S60xl2tpd
rm $(TARGET_DIR)/etc/rc.d/S82freifunk-p2pblock
rm $(TARGET_DIR)/etc/rc.d/S95ddns
rm $(TARGET_DIR)/etc/rc.d/S95miniupnpd
rm $(TARGET_DIR)/etc/rc.d/S99igmpproxy
What this is suppose to do is remove these services from startup by deleting the symlinks from rc.d.
The thing is that you did not install hd-idle so the symlinks cannot be found and it errors.
There are two solution either you install hd-idle via menuconfig (if you need it) or you remove the offending line
rm $(TARGET_DIR)/etc/rc.d/S50hd-idle
if you face any similar errors resolve it the same way.

benny wong said...

HI~ADMIN, i am using your 3 Jul version of 1043nd openwrt firmware, but now when i want to flash to original firmware, it show 413 - Request Entity Too Large , and i cant flash any other firmware as well, how can i reduce the memory use and flash to other firmware. thx

Admin said...

It is a browser issue.
Change browser.
Sry took so long to reply because I usually check the side bar for new comments and yours did not show up.

RPC5JHG said...

Do you mean any specific browser? I also get error "Request Entity Too Large" when try to flash WR1043N. I tried IE 11, FF 37.0.2, Iron 41.0.2200.0 even old Opera 9.51. The last showed 2 errors:

417 - Expectation Failed
413 - Request Entity Too Large

Any idea why that happens?

Admin said...

There is a back to factory file.
You do not use the factory files with uboot.

Admin said...

Hi, as said before the reason was that July Firmware included ZRAM.
All my modded WR1043ND are upgraded to 64MB RAM so they had no issues.
For those with unmodded 32MB RAM you will face crashing issue because it quickly runs out of memory.
The solution is to telnet/SSH inside then do sysctl -w vm.drop_caches=1
then /etc/init.d/zram stop
then either scp the latest firmware into the router or use the web interface.
ZRAM has been removed in the few latest firmware version for all routers so it should work great.

RPC5JHG said...

Thanks for pointing the RAM issue. Your solution didn't work for me however I was able to flash it by adding SWAP file from a pendrive. In case someone would find it useful what I did was:

1. Create ext3 partition on USB disk with size of 200MB and plug it to the router. It was mounted as sda5 (/mnt/sda5).

2. SSH to router and create 10MB swap file with commands:

dd if=/dev/zero of=/mnt/sda5/swapfile bs=1024 count=10048
mkswap /mnt/sda5/swapfile

3. Enable swap file:
swapon /mnt/sda5/swapfile

After that it flashed new firmware using web interface with no problems.