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.


Saturday, March 3, 2012

OpenWRT Built for TP-Link WR1043ND


What this firmware does

This firmware aims to be an opensource replacement for the stock TP-Link firmware in the Wireless N Gigabit TL-WR1043ND Router.
The firmware aims to provide equivalent or better features compared stock firmware.
The firmware will also leave empty flash sectors for users to install addition packages for special features they require.
Unlike stock openwrt firmware, this is a firmware fully optimized for performance, optimization is targeted at the MIPS24Kc System On Chip, debugging features stripped and scripts are minified, compressed specifically for this Router platform.

It is advised to add a heatsink to the AR9132 SoC, it does get quite hot after flashing my custom OpenWT firmware during intensive processing.

Software Features

  1. Protocol Supported: Static/DHCP/Dual Stack/6in4/6to4/6rd/PPP/PPtP/PPPoE/3G UMTS/L2TP/Relay
  2. LuCI GUI (Bootstrap)
  3. Dynamic DNS (Support HTTPS by skipping SSL Certificate checks)
  4. SQM-Scripts (Quality Of Service) Scripts
  5. TinyProxy
  6. UPnP (Universal Plug & Play)
  7. MultiWAN3
  8. Add User and Delete User accounts (no su function, use ssh root@youripaddress to get root while logged into router via SSH, this saves flash and achieves the same effect )
  9. External Harddisk supporting only EXT2/3/4 FileSystem (NTFS is SLOW and FAT is unreliable, while the EXT Kernel Module allows support for all 3 versions of EXT Filesystem)
  10. Vsftpd with SSL Support
  11. Layer 7 Filtering
  12. Patched Realtek Switch Driver supporting (Port Priority/Port Mirroring/Jumbo Passthrough/BCStormFiltering/VLAN4K)
  13. Reset to Defaults using the Reset Button GPIO
  14. Full Wireless Support 64/128/152-bit WEP / WPA / WPA2,WPA-PSK / WPA2-PSK including Enterprise Radius Authentication
  15. Fdisk Partitioning Tool
  16. Wake On LAN
  17. USB Printer Server
  18. Restore to OpenWRT default feature (just press and hold reset button)

    Additional Optimizations

    1. Expose more LuCI Options than Stock OpenWRT
    2. Additional LuCI patching to improve GUI for touch devices
    3. Optimized sysctl defaults
    4. Compiler flags optimization
    5. Additional packages are optimized for size
    6. All Wireless Channels unlock (if US region is selected)
    7. Max Transmit Power 24dbm
    8. Tested NAT throughput > 250Mbps LAN to WAN using jperf
    9. Minified CSS and Javascript 
    10. Patched Switch Driver for additional functionality 
    11. Remove additional debugging features from firmware
    12. Code Auroa QCA Performance patches
    13. OpenSSL Performance Optimization
    openwrt-ar71xx-tl-wr1043nd-v1-squashfs-factory.bin - For TP-Link WR1043ND that are NOT running OpenWRT

    openwrt-ar71xx-tl-wr1043nd-v1-squashfs-sysupgrade.bin - For  TP-Link WR1043ND currently running OpenWRT

    Before Flashing please read my previous posts about TP-Link WR1043ND to know what you are getting into. Consult the documentation @ OpenWRT Website or ask if you have any queries.

    You can download and install additional packages through the OpenWRT repository (the package installer is built into LuCI) but it will occupy more space on the JJFS partitions.

    Reboot After Disabling Unused Features For Better Performance

    My custom firmware comes with loads of features, however OpenWRT by default enables all features so you might want to disable features you don't need.

    Extra Services are disabled by default for greater performance

    This will boost the performance of services you need to run.
    If you experience low performance due to insufficient memory, you might want to create and mount a swap partition.


    If you cannot access the Router try holding down the reset button this will reset the Router back to default.
    If you still cannot access the Router try serial ttl adapter.
    (This cheap device can debrick all configuration lockups except the bootloader so don't touch the bootloader)


    The image is built using squashfs so it is READ ONLY. If you try to uninstall it only removes the hardlinks, no space is saved. If you don't want a function just disable it.

    -------------------------------Old Firmware & New Firmware Below-------------------------------

    Make sure you have sufficient FREE RAM (Check using LuCI SystemInfo) before you Flash any firmware!

    To free up memory for upgrading firmware, ssh into the router then type
    sysctl -w vm.drop_caches=1
    This will tell the kernel to drop page caches so memory is freed up for you to upgrade firmware. You need to free up memory because before the firmware is flashed to the flash memory, it has to be copied into the DRAM.

    The new files will be available on my github below.
    Barrier Breaker TP-Link WR1043ND
    Addition packages you can download and install into your OpenWRT Router to extend its capabilities.
    Barrier Breaker TP-Link WR1043ND Packages

    If you want to build your own firmware, I have placed the buildscripts in the Git Repo below:

    OpenWRT  TL-WDR4300v1 MIPS74Kc Architecture
    OpenWRT TL-WR1043NDv1 MIPS 24Kc Architecture
    OpenWRT TL-WDR4900v1 (PowerPC Architecture)

    It is recommended to reset the all the wireless client profiles to the router after an upgrade.

    To squeeze additional performance you can overclock the router (check my post on overclocking WR1043NDv1)