http://wiki.openwrt.org/toh/tp-link/tl-wr1043nd
OEM mass flashing
Flashing hundreds of devices using the web interface can be a real pain. You can use this shell script to automate it:
#!/bin/bash
# Pass the firmware image file to be flashed as the first and only
# command line argument.
#
# The second curl call will time out, but it is expected. Once the
# script exits, you can unplug the ethernet cable and proceed to the
# next router, but do KEEP each router ON POWER until the new image is
# fully written! When flashing is done the router reboots
# automatically (as shown by all the leds flashing once).
curl
--user admin:admin
--user-agent 'Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:12.0) Gecko/20100101 Firefox/12.0'
--referer 'http://192.168.1.1/userRpm/SoftwareUpgradeRpm.htm'
--form "Filename=@$1" -F 'Upgrade=Upgrade'
http://192.168.1.1/incoming/Firmware.htm > /dev/null
sleep 1
curl
--max-time 2
--user admin:admin
--user-agent 'Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:12.0) Gecko/20100101 Firefox/12.0'
--referer 'http://192.168.1.1/incoming/Firmware.htm'
http://192.168.1.1/userRpm/FirmwareUpdateTemp.htm > /dev/null