TP-Link TL-WR703N
The TL-WR703N is marketed as a "3G travel router". It does not include a 3G modem - it simply means that the OEM firmware supports USB 3G modems! Ridiculous, since with OpenWrt ANY router with USB supports 3G hardware…
The device was released in August 2011 in China, and at the time of writing (September 2011) has yet to reach American or European shores. It can however be ordered from a few locations in China for around $22 including shipping.
The device is very similiar to the TL-MR3020.
Supported Versions
| Version/Model | Launch Date | OpenWrt Version Supported | Model Specific Notes |
|---|---|---|---|
| v1.0 | August 2011 | Trunk (r28294) | Confirmed working |
| v1.2 | Trunk (r29330) | Confirmed working | |
| v1.3 | Trunk (29283) | Confirmed working | |
| v1.5 | December 2011 | Trunk | Confirmed working |
Unlike many newer TP-Link devices, there appears to be no hardware differences between the version for the Chinese market and the version for the international market.
It was the first device that utilised the AR9331 chipset to be ported to OpenWRT. Newer TP-Link devices (such as the TL-WR741ND v4.x also use AR9331).
Features
- Atheros AR7240 CPU (400Mhz)
- Atheros AR9331 Chipset (integrated wireless)
- 802.11 b/g/n 150Mbps (130Mbps real)
- wireless power output 20dBm - 100mW
- 4 MB flash memory
- 32 MB RAM
- USB 2.0 port
- Powered via micro-USB socket
- Tiny form factor: 5.7cm x 5.7cm
Power consumption
This router is standardly powered via USB at 5V. The voltage regulator inside is unknown, but its input voltage should be at least between 3.7V - 6V, possibly 8V. Maximum current draw at 5V is 185mA (OpenWrt boot), average current draw with WiFi at 18dBm is 100mA, without WiFi 80mA. Hence the average router power consumption is 0.5W, which is incredibly low.
Power consumption will be higher if a USB device is attached to its USB port!
Serial console
The serial console connector does not utilise the regular TP-Link pinouts. Two pads labelled TP_OUT and TP_IN are the TX and RX signals.
Note that the pads can very easily be lifted. There is slightly more mechanical strength if you can solder to the surface-mount components to which the pads are connected–but this also takes care–your device could easily be destroyed. Make sure that your connection is secured so that tension cannot be applied to the solder points when you connect to an external device.
Flashing
Snapshot image was broken around 18/11/2011, but from 26/11/2011 that was fixed.
Snapshot images are always risky. Check the forum discussion for latest opinions on available images.
Upload the latest snapshot via the web interface (default: 192.168.1.1 / admin / admin).
Download latest squashfs-factory.bin or squashfs-sysupgrade.bin firmware for WR703N.
For systems without a web interface, you can flash a sysupgrade file with mtd (after downloading the file to /tmp and then "cd /tmp"):
mtd write openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.bin firmware
To flash from the Chinese web interface, at the present time you would select the last menu item on the left, and then the third submenu item. This initiates a popup with two buttons–the upper right one allows you to browse to find the file you want to flash on your PC, the lower left one initiates the flash.
When you roll over an item on the Chinese web interface, the rollover text will indicate which item you are selecting.
Internal images
Images sourced from http://www.right.com.cn/forum/thread-52557-1-1.html
Boot log (OpenWrt)
U-Boot 1.1.4 (Aug 27 2011 - 10:39:39)
>
AP121-2MB (ar9330) U-boot
>
DRAM: 32 MB
led turning on for 1s...
id read 0x100000ff
flash size 4194304, sector count = 64
Flash: 4 MB
Using default environment
>
In: serial
Out: serial
Err: serial
Net: ag7240_enet_initialize...
No valid address in Flash. Using fixed address
No valid address in Flash. Using fixed address
: cfg1 0x5 cfg2 0x7114
eth0: 00:03:7f:09:0b:ad
ag7240_phy_setup
eth0 up
: cfg1 0xf cfg2 0x7214
eth1: 00:03:7f:09:0b:ad
athrs26_reg_init_lan
ATHRS26: resetting s26
ATHRS26: s26 reset done
ag7240_phy_setup
eth1 up
eth0, eth1
Autobooting in 1 seconds
## Booting image at 9f020000 ...
Uncompressing Kernel Image ... OK
>
Starting kernel ...
>
Linux version 2.6.39.4 (juhosg@idared) (gcc version 4.5.4 20110808 (prerelease) (Linaro GCC 4.5-2011.08) ) #1 Tue Sep 20 14:44:37 CEST 2011
bootconsole [early0] enabled
CPU revision is: 00019374 (MIPS 24Kc)
SoC: Atheros AR9330 rev 1
Clocks: CPU:400.000MHz, DDR:400.000MHz, AHB:200.000MHz, Ref:25.000MHz
Determined physical RAM map:
memory: 02000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
Normal 0x00000000 -> 0x00002000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0x00000000 -> 0x00002000
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
Kernel command line: board=TL-WR703N console=ttyATH0,115200 rootfstype=squashfs,jffs2 noinitrd
PID hash table entries: 128 (order: -3, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
Writing ErrCtl register=00000000
Readback ErrCtl register=00000000
Memory: 29376k/32768k available (2009k kernel code, 3392k reserved, 386k data, 180k init, 0k highmem)
SLUB: Genslabs=9, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
NR_IRQS:80
Calibrating delay loop... 265.42 BogoMIPS (lpj=1327104)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
NET: Registered protocol family 16
MIPS: machine is TP-LINK TL-WR703N v1
bio: create slab
Boot log (Factory)
U-Boot 1.1.4 (Aug 27 2011 - 10:39:39)
AP121-2MB (ar9330) U-boot
DRAM: 32 MB
led turning on for 1s...
id read 0x100000ff
flash size 4194304, sector count = 64
Flash: 4 MB
Using default environment
In: serial
Out: serial
Err: serial
Net: ag7240_enet_initialize...
No valid address in Flash. Using fixed address
No valid address in Flash. Using fixed address
: cfg1 0x5 cfg2 0x7114
eth0: 00:03:7f:09:0b:ad
ag7240_phy_setup
eth0 up
: cfg1 0xf cfg2 0x7214
eth1: 00:03:7f:09:0b:ad
athrs26_reg_init_lan
ATHRS26: resetting s26
ATHRS26: s26 reset done
ag7240_phy_setup
eth1 up
eth0, eth1
Autobooting in 1 seconds
## Booting image at 9f020000 ...
Uncompressing Kernel Image ... OK
Starting kernel ...
Booting AR9330(Hornet)...
Linux version 2.6.31--LSDK-9.2.0.312 (root@bogon) (gcc version 4.3.3 (GCC) ) #128 Fri Aug 26 14:58:53 CST 2011
flash_size passed from bootloader = 4
CPU revision is: 00019374 (MIPS 24Kc)
Determined physical RAM map:
memory: 02000000 @ 00000000 (usable)
User-defined physical RAM map:
memory: 02000000 @ 00000000 (usable)
Zone PFN ranges:
Normal 0x00000000 -> 0x00002000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
0: 0x00000000 -> 0x00002000
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
Kernel command line: console=ttyS0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=ar7240-nor0:128k(u-boot),1024k(kernel),2816(rootfs),64k(config),64k(ART) mem=32M
PID hash table entries: 128 (order: 7, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
Writing ErrCtl register=00000000
Readback ErrCtl register=00000000
Memory: 29864k/32768k available (1888k kernel code, 2904k reserved, 524k data, 116k init, 0k highmem)
Hierarchical RCU implementation.
NR_IRQS:128
plat_time_init: plat time init done
Calibrating delay loop... 266.24 BogoMIPS (lpj=532480)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
===== ar7240_platform_init: 0
Whoops! This kernel is for product wr703 v1.0!
bio: create slab
MTD
cat /proc/mtd
dev: size erasesize name mtd0: 00020000 00010000 "u-boot" mtd1: 000d9fa8 00010000 "kernel" mtd2: 002f6058 00010000 "rootfs" mtd3: 000f0000 00010000 "rootfs_data" mtd4: 00010000 00010000 "art" mtd5: 003d0000 00010000 "firmware"
Further reading
- TL-WR703N thread: https://forum.openwrt.org/viewtopic.php?id=31729
- High resolution images (Chinese): http://www.right.com.cn/forum/thread-52557-1-1.html
- Blog post about the TL-WR703N (including higher resolution images): http://embeddedtimes.blogspot.com/2011/09/tp-link-tl-wr703n-tiny-linux-capable.html
- Installation instructions at the Village Telco mailing list: https://groups.google.com/forum/#!msg/village-telco-dev/UlGxUTlj9mM/nOMZKmoJmNUJ
- Building a serial port for the TL-WR703N: http://wiki.villagetelco.org/index.php?title=Building_a_Serial_Port_for_TL-WR703N
toh/tp-link/tl-wr703n.txt · Last modified: 2012/02/15 13:26 by valentt

