Differences
This shows you the differences between two versions of the page.
|
toh:tp-link:tl-mr3040 [2013/02/12 21:38] doiga |
toh:tp-link:tl-mr3040 [2013/03/10 12:32] (current) doiga USB |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== TP-Link TL-MR3040 ====== | ====== TP-Link TL-MR3040 ====== | ||
| - | A portable router with very similar hardware to the [[toh:tp-link:TL-MR11U]], which also has an onboard 2000mAh battery. | + | A nice portable router powered through included 2000mAh li-ion battery or included USB power adapter for micro-USB socket. |
| - | Other TP-Link routers with similar hardware are the [[toh:tp-link:TL-MR3020]] and [[toh:tp-link:TL-WR703N]]. | + | |
| + | Although it is marketed as a "3G/4G router", the TL-MR3040 does not include a 3G/4G modem. It simply means that the OEM firmware and GUI support a certain range of USB 3G/4G modems, but, OpenWRT supports USB modems too.\\ | ||
| + | |||
| + | The [[toh:tp-link:TL-MR11U]] is hardware similar with very equal connections, which also has an onboard battery. | ||
| + | Other TP-Link routers with **only similar hardware** are the [[toh:tp-link:TL-MR3020]] and [[toh:tp-link:TL-WR703N]]. | ||
| - | This router also does not include a 3G modem. | ||
| ===== Supported Versions ===== | ===== Supported Versions ===== | ||
| - | ^ Version/Model ^ Launch Date ^ S/N ^ OpenWrt Version Supported ^ Model Specific Notes ^ | ||
| - | | v1 | 2012-05 | - | {{:meta:icons:tango:48px-dialog-warning.svg.png?nolink&24 |Stability warning }} Trunk [[https://dev.openwrt.org/changeset/31845|R31845]] | ethernet link detection bugged - fixed in [[https://dev.openwrt.org/changeset/32336|R32336]] | | ||
| - | | v2 | 2013-01 | - | ? | ? | | ||
| + | ^ Version/Model ^ Launch Date ^ OpenWrt Version Supported ^ Model Specific Notes ^ Hardware differences ^ | ||
| + | | v1.0 | May 2012 | [[https://dev.openwrt.org/changeset/31845|Trunk R31845]] | Confirmed working |-| | ||
| + | | v2.0 | January 2013| - | ??? | //added// Mode Switch button | | ||
| - | {{:meta:icons:tango:48px-dialog-warning.svg.png?nolink&24 |Stability warning }} Snapshot images are always risky. Check the forum discussion for latest opinions on available images. | ||
| + | ===== Hardware Highlights ===== | ||
| + | ^ CPU ^ Ram ^ Flash ^ Network ^ USB ^ Serial ^ JTag ^ | ||
| + | | Atheros AR7240 @ 400MHz | 32 MiB | 4 MiB | 1x 100MBit | 1x 2.0 | YES | NO | | ||
| + | * SoC: Atheros AR9331 rev1 | ||
| + | * 802.11 b/g/n 150Mbps | ||
| + | * Powered via mini-USB (5V) or Li-ion Battery included (4-5 hours) | ||
| + | * Only 94g\\ | ||
| - | ===== Hardware Highlights ===== | + | ===== TL-MR3040 and TL-MR11U differences ===== |
| - | ^ CPU ^ Ram ^ Flash ^ Network ^ USB ^ Serial ^ JTag ^ | + | |
| - | | AR9331@400MHz |32 MiB |4 MiB | 1x 100MBit | 2.0 x1 | YES | NO | | + | |
| + | Althought MR3040 and MR11U seems similar on the outside, inside isn´t that similar. Here are the diffrences: | ||
| - | ===== Installation ===== | + | * MR11U is chinese only |
| + | * MR3040(v1.0/v2.0) doesn´t has QSS button | ||
| + | * USP_POWER GPIO is diferrent | ||
| + | * Some buttons are in different sides with different looks | ||
| + | * Also the layers printed on the PCB is different as also some connections | ||
| + | * [[http://wiki.openwrt.org/_media/media/mr3040.mr11u.jpg|MR3040 compared to MR11U photo]]\\ | ||
| - | As with most TP-Link Routers this one can be flashed using the TP-Link Webinterface. The webinterface is chinese, but [[http://192.168.1.1/userRpm/SoftwareUpgradeRpm.htm]] is the firmware upgrade page, just flash [[http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-mr3040-v1-squashfs-factory.bin|this firmware file]]. | ||
| - | Please consult ->[[doc:howto:generic.flashing]] and also [[toh:tp-link:TL-MR11U]] and [[toh:tp-link:TL-MR3020]]. | + | ===== Installation (only for v1.0) ===== |
| + | So you can either download a daily-built snapshot or build your own from sources. | ||
| - | ==== Flash under U-Boot ==== | + | * Download the latest Attitude Adjustment RC1 snapshot from [[http://downloads.openwrt.org/attitude_adjustment/12.09-rc1/ar71xx/generic/openwrt-ar71xx-generic-tl-mr3040-v1-squashfs-factory.bin|here]] (recommended) |
| - | * The serial is **p1** layout: **__p1 |VCC|GND|RX|TX|__** NOTE: Seems like **GND** pin isn't connected properly. It could be worked around by just using **RX**|**TX** and attaching the **USB-Power** to the same USB-Host as the USB-to-TTL Adapter.. | + | * Download the lastest trunk snapshot [[http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-mr3040-v1-squashfs-factory.bin|here]] (risky) |
| + | |||
| + | {{:meta:icons:tango:48px-dialog-warning.svg.png?nolink}} **WARNING**: Snapshot images are always risky. Check the forum discussion for latest opinions on available images. | ||
| + | |||
| + | ==== Method Using Web GUI (Recommended)==== | ||
| + | |||
| + | As with most TP-Link Routers this one can be flashed using the TP-Link Webinterface. | ||
| + | Connect to the TL-MR3040 router via Ethernet cable at IP address 192.168.0.1, login to the router's web GUI (default login/password: admin / admin), and overwrite the factory firmware by installing the **openwrt-ar71xx-generic-tl-mr3040-v1-squashfs-factory.bin** like a regular firmware update. | ||
| + | |||
| + | Wait for the progress bar to finish twice (the device will reset itself in the process), and proceed with basic configuration as with any fresh OpenWRT install. | ||
| + | |||
| + | ==== Manual Flash under U-Boot Serial Console ==== | ||
| + | |||
| + | * To install OpenWrt from the U-Boot console, you need to install a TFTP server on your computer. | ||
| + | * By default the server is set to 192.168.0.100, you can check detail by 'printenv' | ||
| + | * The serial layout is **p1**: ->[[toh:tp-link:tl-mr3040#serial.console]] | ||
| * Setup serial console 115200 8n1, for example: **screen /dev/ttyUSB0 115200 ixoff** | * Setup serial console 115200 8n1, for example: **screen /dev/ttyUSB0 115200 ixoff** | ||
| - | * Enter "tpl" as soon as U-Boot announces "Autobooting in 1 seconds" | ||
| - | * Setup your eth0 to 192.168.1.100, you can check detail by 'printenv' | ||
| - | * Run blow command under U-Boot: | ||
| - | tftpboot 0x81000000 openwrt-ar71xx-generic-tl-mr3040-v1-squashfs-factory.bin | + | Power up the TL-MR3040, after a 1-2 seconds U-Boot announces "Autobooting in 1 seconds", when displaying this enter tpl immediately. |
| - | erase 0x9f020000 +0x3c0000 | + | |
| - | cp.b 0x81000000 0x9f020000 0x3c0000 | + | <code>Autobooting in 1 seconds |
| - | bootm 9f020000 | + | [type tpl here]</code> |
| + | |||
| + | You will get a U-Boot-console, it shows as **hornet>**, and you must enter the following commands: | ||
| + | |||
| + | <code>hornet> tftpboot 0x81000000 openwrt-ar71xx-generic-tl-mr3040-v1-squashfs-factory.bin | ||
| + | Using eth0 device | ||
| + | TFTP from server 192.168.0.100; our IP address is 192.168.0.1 | ||
| + | Filename 'openwrt-ar71xx-generic-tl-mr3040-v1-squashfs-factory.bin'. | ||
| + | Load address: 0x81000000 | ||
| + | Loading: ################################################################# | ||
| + | ################################################################# | ||
| + | ################################################################# | ||
| + | ################################################################# | ||
| + | ################################################################# | ||
| + | ################################################################# | ||
| + | ################################################################# | ||
| + | ################################################################# | ||
| + | ################################################################# | ||
| + | ################################################################# | ||
| + | ################################################################# | ||
| + | ###################################################### | ||
| + | done | ||
| + | Bytes transferred = 3932160 (3c0000 hex) | ||
| + | hornet> erase 0x9f020000 +0x3c0000 | ||
| + | |||
| + | First 0x2 last 0x3d sector size 0x10000 61 | ||
| + | Erased 60 sectors | ||
| + | hornet> cp.b 0x81000000 0x9f020000 0x3c0000 | ||
| + | Copy to Flash... write addr: 9f020000 | ||
| + | |||
| + | done | ||
| + | hornet> bootm 9f020000 | ||
| + | </code> | ||
| ==== Upgrading OpenWrt ==== | ==== Upgrading OpenWrt ==== | ||
| - | ->[[doc:howto:generic.sysupgrade]] | + | ->[[doc:howto:generic.sysupgrade]]\\ |
| - | ==== Failsafe Mode ==== | ||
| - | //(currently unconfirmed)// | ||
| + | ==== Failsafe Mode ==== | ||
| - Switch on the router | - Switch on the router | ||
| - Wait almost 5 sec | - Wait almost 5 sec | ||
| - | - Press the "Reset" | + | - Press the "Reset" for ~3sec |
| + | - The device is now in Failsafe-Mode | ||
| + | - You may access it by using telnet 192.168.1.1/24 or serial | ||
| + | |||
| + | **The LEDs won't flash in Failsafe Mode**\\ | ||
| + | |||
| + | |||
| + | ===== Restoring Original Firmware ===== | ||
| + | |||
| + | * The process is similar to flash OpenWRT with U-boot serial console | ||
| + | * Download the original image [[http://www.tp-link.com/Resources/software/TL-MR3040_V1_120328.zip]] | ||
| + | * Don´t forget to enter "tpl" as soon as U-Boot announces "Autobooting in 1 seconds" | ||
| + | |||
| + | <code>hornet> tftpboot 0x81000000 mr3040v1_en_3_12_11_up(120328).bin | ||
| + | ... | ||
| + | hornet> erase 0x9f020000 +0x3c0000 | ||
| + | ... | ||
| + | hornet> cp.b 0x81000000 0x9f020000 0x3c0000 | ||
| + | ... | ||
| + | hornet> bootm 9f020000 | ||
| + | </code> | ||
| + | |||
| + | |||
| + | |||
| + | ===== Basic Configuration ===== | ||
| + | |||
| + | Since this part is identical to generic devices, see [[doc:howto:basic.config|Basic configuration]].\\ | ||
| + | |||
| + | ===== Original Flash Layout ===== | ||
| + | Please read the article [[doc:techref:Flash Layout]] for a better understanding. It contains a couple of explanations. Then let's have a view at flash layout of this particular device: | ||
| + | |||
| + | ^ TP-Link MR3040 Flash Layout stock firmware ^^^^^^ | ||
| + | ^ Layer0 | spi0.0: 4096KiB ||||| | ||
| + | ^ Layer1 | mtd0 | mtd1 | mtd2 | mtd3 | mtd4 | | ||
| + | ^ Size in KiB | 128KiB | 1024KiB | 2816 KiB | 64KiB | 64KiB | | ||
| + | ^ Name | **//u-boot//** | **//kernel//** | **//rootfs//** | **//config//** | **//art//** | | ||
| + | ^ mountpoint | none | none | / | none | none | | ||
| + | ^ filesystem | none | none | SquashFS | none | none | | ||
| + | |||
| + | ART = Atheros Radio Test - it contains RF calibration data for the wifi. If it is missing or corrupt, wireless won't come up anymore.\\ | ||
| + | |||
| + | |||
| + | ===== Hardware ===== | ||
| + | |||
| + | ==== Opening the device ==== | ||
| + | Remove back cover, remove battery. Unscrew two screws, open case in the corner next to the ethernet port (there is a small triangle here). Push a screwdriver into the hole next to the battery (closest to ethernet port) and pull cover until it snaps open. Next push in the screwdriver in the next corner next to the battery. | ||
| + | |||
| + | ==== Info ==== | ||
| + | |||
| + | |^ ^ IC ^ Datasheet ^| | ||
| + | |Processor| AR7240 | {{:toh:tp-link:atheros.ar7240.pdf}} | | ||
| + | |Flash ROM| Spansion S25FL032P | http://www.spansion.com/Support/Datasheets/S25FL032P_00.pdf | | ||
| + | |SDRAM| Zentel A3S56D40FTP | http://www.kean.com.au/oshw/WR703N/teardown/Zentel%20A3S56D40FTP%20DDR%20256Mb%20SDRAM.pdf | | ||
| + | |Chipset (Wi-Fi controller)| AR9331 | http://see.sl088.com/w/images/6/69/AR9331.pdf | | ||
| + | |||
| + | ==== Serial Console ==== | ||
| + | |||
| + | == Pinout == | ||
| + | |||
| + | ^1 ^2 ^3 ^4| | ||
| + | |TX|RX|GND|VCC||P1| | ||
| + | |||
| + | Pin 1 is clearly marked on the board. | ||
| + | |||
| + | The right settings for accessing the serial console are as follows: | ||
| + | |||
| + | Bits per second: **115200**\\ | ||
| + | Data bits: **8**\\ | ||
| + | Stop bits: **1**\\ | ||
| + | Parity: **None**\\ | ||
| + | Flow control: **None**\\ | ||
| + | |||
| + | |||
| + | === U-Boot Bootloader Console === | ||
| + | |||
| + | The password to get the U-Boot prompt is **tpl**. You must type it quickly while the serial console is displaying: | ||
| + | <code>[...] | ||
| + | ag7240_phy_setup | ||
| + | eth1 up | ||
| + | eth0, eth1 | ||
| + | Autobooting in 1 seconds | ||
| + | [type tpl here]</code> | ||
| + | |||
| + | U-Boot accepts several commands. Type **help** to display the list of available commands. | ||
| + | |||
| + | |||
| + | === Linux Console === | ||
| + | |||
| + | Once the original firmware has booted up completely, you can press **return** to activate the Linux login prompt. | ||
| + | <code>TL-MR3040 login: root | ||
| + | password: 5up</code>\\ | ||
| + | |||
| + | |||
| + | ==== Photos ==== | ||
| + | [[http://imageshack.us/a/img23/9454/mr3040front.jpg|Bigger front image, for better view]]. | ||
| + | |||
| + | {{:toh:tp-link:tl-mr3040-v11_small.jpg?800|Version 1.1 Main board}} | ||
| + | |||
| + | {{:media:mr3040_back.jpg?800|Version 1.1 back}} | ||
| + | |||
| + | {{:media:mr3040_battery.jpg?800}}\\ | ||
| + | |||
| + | |||
| + | ==== TL-MR3040 Reverse Engineering ==== | ||
| + | |||
| + | The TL-MR3040 has been [[https://forum.openwrt.org/viewtopic.php?id=41714|teared down]] by Jarocks, wich was very useful to check the pinout. The investigation was complete thanks to doiga, also check the [[https://forum.openwrt.org/viewtopic.php?id=42466|forum]]\\ | ||
| + | |||
| + | |||
| + | ==== GPIOs ==== | ||
| + | -> [[doc:hardware:port.GPIO]] | ||
| + | |||
| + | The AR933x platform provides 28 GPIOs, some of them are used by the router for status LEDs, buttons and other stuff. | ||
| + | |||
| + | **The TL-MR3040 provides 3 free GPIOs.** | ||
| + | |||
| + | The table below shows the results of the investigation, based on the AR9331 datasheet: | ||
| + | |||
| + | |||
| + | ^ GPIO ^ Available ^ AR9331 Pin ^ Description ^ | ||
| + | | 0 | R8 | A78 | Must have 0 value during bootstrap* | | ||
| + | | 1 | R11 | A77 | Must have 1 value during bootstrap | | ||
| + | | 2 | SPI_CS_0 | B49 | Used by SPI Flash | | ||
| + | | 3 | SPI_CLK | B51 | Used by SPI Flash | | ||
| + | | 4 | SPI_MOSI | B50 | Used by SPI Flash | | ||
| + | | 5 | SPI_MISO | A57 | Used by SPI Flash | | ||
| + | | 6 | NC | | | | ||
| + | | 7 | NC | | | | ||
| + | | 8 | NC | | | | ||
| + | | 9 | SIN | B68 | Serial INPUT (Rx) | | ||
| + | | 10 | SOUT | A79 | Serial OUTPUT (Tx) | | ||
| + | | 11 | RESET SW | B48 | Soft Reset Switch | | ||
| + | | 12 | R84 | A56 | Must have 0 value during bootstrap | | ||
| + | | 13 | R12 | B66 | Must have 1 value during bootstrap | | ||
| + | | 14 | R9 | A76 | **unused** Pulled to ground | | ||
| + | | 15 | R10 | B65 | **unused** Pulled to ground | | ||
| + | | 16 | R13 | A75 | Must have 0 value during bootstrap | | ||
| + | | 17 | LED2 | B64 | LAN LED | | ||
| + | | 18 | USB_POWER | A28 | Control USB Host Power | | ||
| + | | 19 | NC | | | | ||
| + | | 20 | R15 | A27 | **unused** Pulled to ground | | ||
| + | | 21 | NC | | | | ||
| + | | 22 | NC | | | | ||
| + | | 23 | NC | | | | ||
| + | | 24 | NC | | | | ||
| + | | 26 | LED3 | A51 | Wireless LAN LED | | ||
| + | | 27 | LED1 | B44 | 3G LED | | ||
| + | | 28 | N/A | A74 | Must have 0 value during bootstrap | | ||
| + | |||
| + | *GPIO_0 can be floating (i.e. resistors removed) during boostrap and the router still boots! //TESTED!!!// | ||
| + | |||
| + | To make the GPIOs available via sysfs, the required ones have to be exported to userspace, as it is explained on a page of the [[http://squidge.sourceforge.net/gpio/|Squidge-Project]]. | ||
| + | \\ | ||
| + | |||
| + | |||
| + | ==== LEDs ==== | ||
| + | How to configure LEDs in general, see the LED section in the [[doc/uci/system]]. | ||
| + | |||
| + | The TL-MR3040 has 5 LEDs: | ||
| + | |||
| + | ^ LED name ^ LED color ^ LED print ^ Internal name ^ Trigger ^ | ||
| + | | Power (2 LEDs) | Green/Red | Power/Charge symbol | N/A (fixed supply) | N/A | | ||
| + | | LAN | Green | LAN symbol | tp-link:green:lan | ''netdev:eth0'' | | ||
| + | | Wireless LAN | Green | WLAN symbol | tp-link:green:wlan | ''phy0tpt'' | | ||
| + | | 3G | Green | Internet symbol| tp-link:green:3g | ''USB:1-1'' |\\ | ||
| + | |||
| + | |||
| + | ==== USB Port ==== | ||
| + | Like other **devices using the ar933x platform**, this model suffers from problems when directly connecting USB 1.1 devices (specified for low speed or full speed; normally serial adapters). These problems can be circumvented by using a (passive) hub between the router and the USB devices. More information in the [[https://forum.openwrt.org/viewtopic.php?id=39956|forum]]. | ||
| - | Now you are in failsafe mode. The LEDs won't flash in Failsafe Mode | + | **This problem can also be circumvented** by using an external powered USB HUB 2.0 //HIGH-SPEED//. |
| + | \\ | ||
| - | ===== Boot log ===== | + | ===== Bootlog ===== |
| - | ==== Factory Boot Log ==== | + | ==== Factory BootLog ==== |
| - | <code>U-Boot 1.1.4 (Mar 28 2012 - 17:31:23) | + | <HTML> |
| + | <div style="height:600px;font:10px/14px Georgia, Garamond, Serif;overflow:Auto;background-color:#FFFFFF"> | ||
| + | <p style="margin: 5px;padding:5px"> | ||
| + | <code> | ||
| + | U-Boot 1.1.4 (Mar 28 2012 - 17:31:23) | ||
| AP121 (ar9330) U-boot | AP121 (ar9330) U-boot | ||
| Line 252: | Line 480: | ||
| br0: port 2(ath0) entering disabled state | br0: port 2(ath0) entering disabled state | ||
| - | TL-MR3040 login:</code> | + | TL-MR3040 login: |
| + | </code> | ||
| + | </p> | ||
| + | </div> | ||
| + | </HTML>\\ | ||
| - | ===== Hardware ===== | ||
| - | ==== Opening the device ==== | + | ===== Resources ===== |
| - | Remove back cover, remove battery. Unscrew two screws, open case in the corner next to the ethernet port (there is a small triangle here). Push a screwdriver into the hole next to the battery (closest to ethernet port) and pull cover until it snaps open. Next push in the screwdriver in the next corner next to the battery. | + | * Official TP-Link TL-MR3040 [[http://www.tp-link.com/en/products/details/?model=TL-MR3040|Website]] |
| - | ==== USB Issue ==== | + | * The latest official firmware is available [[http://www.tp-link.com/en/support/download/?model=TL-MR3040|here]] |
| - | A problem has been detected with the USB interface on the device. When connected to different models of serial adaptor, it functions for a few minutes then fails. This can be resolved by putting a passive hub in-line with the device. Voltage and current testing will be performed to identify why this behaviour occurs. | + | |
| - | **Edit**: Hi, I also tried with a webcam and make the router reset and even with a passive hub<-webcam also reset. But, then I remember to try with the battery on it(full charged) and doesn't reset, works perfectly, but if I remove the battery it resets again. Also with the USB cable removed and battery on it charged works good! | + | * [[http://www.disk91.com/2012/technology/systems/installation-of-a-piratebox-on-t-link-mr3040/|Installation of piratebox on T-Link MR3040]] |
| - | Maybe a power restrictions from USB only? | + | |
| - | ==== Photos ==== | + | * [[http://www.minipwner.com/|MiniPwner]] [[http://www.minipwner.com/index.php/forum/4-community-edition-installation/833-minipwner-based-on-tl-mr3040|confirmed working]] |
| + | |||
| + | * Althought [[toh:tp-link:TL-MR3020]] and [[toh:tp-link:TL-WR703N]] are ONLY hardware similar, most probably some modifications work, like External Antenna Hack!!!\\ | ||
| - | {{:toh:tp-link:tl-mr3040-v11_small.jpg?700|Version 1.1 Main board}} | ||
| ===== Tags ===== | ===== Tags ===== | ||
| ---- | ---- | ||
| {{tag>FastEthernet 1Port Serial integrated 802.11bgn 1Radio AR9331 ath9k 1Ant 32RAM 4Flash MIPS MIPS32 24k AP121}} | {{tag>FastEthernet 1Port Serial integrated 802.11bgn 1Radio AR9331 ath9k 1Ant 32RAM 4Flash MIPS MIPS32 24k AP121}} | ||
toh/tp-link/tl-mr3040.1360701482.txt.bz2 · Last modified: 2013/02/12 21:38 by doiga
