Differences

This shows you the differences between two versions of the page.

toh:tp-link:tl-mr3040 [2013/02/25 18:20]
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 nice portable router powered through battery 2000mAh or included USB power adapter for micro-USB B socket. +A nice portable router powered through included 2000mAh li-ion battery or included USB power adapter for micro-USB socket.
-Although it is marketed as a "3G router", the TL-MR3040 does not include a 3G modem. It simply means that the OEM firmware and GUI support a certain range of USB 3G modems, but, OpenWRT supports USB 3G modems too. +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]] has very similar hardware and connections, which also has an onboard battery.+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]]. Other TP-Link routers with **only similar hardware** are the [[toh:tp-link:TL-MR3020]] and [[toh:tp-link:TL-WR703N]].
Line 11: Line 11:
===== Supported Versions ===== ===== Supported Versions =====
-^ Version/Model ^ Launch Date ^ OpenWrt Version Supported ^ Model Specific Notes ^ +^ Version/Model ^ Launch Date ^ OpenWrt Version Supported ^ Model Specific Notes ^ Hardware differences
-| v1           | May 2012    | Trunk [[https://dev.openwrt.org/changeset/31845|R31845]] | Confirmed working | +| v1.0          | May 2012    | [[https://dev.openwrt.org/changeset/31845|Trunk R31845]] | Confirmed working |-
-| v2           | January 2013 | -  | ? |+| v2.0          | January 2013| -  | ???  | //added// Mode Switch button | 
===== Hardware Highlights ===== ===== Hardware Highlights =====
-^ CPU ^ Ram ^ Flash ^ Network ^ USB ^ Serial ^ JTag ^ +^ CPU                 ^ Ram   ^ Flash ^ Network   ^ USB   ^ Serial ^ JTag
-| AR9331@400MHz |32 MiB |4 MiB | 1x 100MBit | 1x 2.0 | YES | NO |+| Atheros AR7240 @ 400MHz | 32 MiB | 4 MiB   | 1x 100MBit | 1x 2.0 | YES     | NO     |
-  * SoC: Atheros AR9331+  * SoC: Atheros AR9331 rev1
  * 802.11 b/g/n 150Mbps   * 802.11 b/g/n 150Mbps
-  * Powered via mini-USB (5V) or Battery included (4-5 hours) +  * Powered via mini-USB (5V) or Li-ion Battery included (4-5 hours) 
-  * Only 94g+  * Only 94g\\ 
 + 
 + 
 +===== TL-MR3040 and TL-MR11U differences ===== 
 + 
 +Althought MR3040 and MR11U seems similar on the outside, inside isn´t that similar. Here are the diffrences: 
 + 
 +  * 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]]\\ 
-===== Installation =====+===== Installation (only for v1.0) =====
So you can either download a daily-built snapshot or build your own from sources. So you can either download a daily-built snapshot or build your own from sources.
Line 40: Line 54:
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. 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 and TFTP (Experts)====+==== 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.   * To install OpenWrt from the U-Boot console, you need to install a TFTP server on your computer.
Line 85: Line 99:
==== Upgrading OpenWrt ==== ==== Upgrading OpenWrt ====
-->[[doc:howto:generic.sysupgrade]] +->[[doc:howto:generic.sysupgrade]]\\
==== Failsafe Mode ==== ==== Failsafe Mode ====
- 
  - Switch on the router   - Switch on the router
  - Wait almost 5 sec   - Wait almost 5 sec
Line 97: Line 109:
  - You may access it by using telnet 192.168.1.1/24 or serial   - You may access it by using telnet 192.168.1.1/24 or serial
-**The LEDs won't flash in Failsafe Mode**+**The LEDs won't flash in Failsafe Mode**\\
===== Restoring Original Firmware ===== ===== Restoring Original Firmware =====
-{{:meta:icons:tango:48px-emblem-progress.svg.png?nolink}}+  * 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"
-Work in Progress+<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>
-===== Hardware ===== 
 +===== 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 ==== ==== 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. 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 ==== ==== Info ====
Line 121: Line 159:
|SDRAM| Zentel A3S56D40FTP | http://www.kean.com.au/oshw/WR703N/teardown/Zentel%20A3S56D40FTP%20DDR%20256Mb%20SDRAM.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 | |Chipset (Wi-Fi controller)| AR9331 | http://see.sl088.com/w/images/6/69/AR9331.pdf |
- 
==== Serial Console ==== ==== Serial Console ====
Line 158: Line 195:
Once the original firmware has booted up completely, you can press **return** to activate the Linux login prompt. Once the original firmware has booted up completely, you can press **return** to activate the Linux login prompt.
<code>TL-MR3040 login: root <code>TL-MR3040 login: root
-password: 5up</code>+password: 5up</code>\\ 
==== Photos ==== ==== Photos ====
Line 167: Line 205:
{{:media:mr3040_back.jpg?800|Version 1.1 back}} {{:media:mr3040_back.jpg?800|Version 1.1 back}}
-{{:media:mr3040_battery.jpg?800}} +{{:media:mr3040_battery.jpg?800}}\\
==== TL-MR3040 Reverse Engineering ==== ==== TL-MR3040 Reverse Engineering ====
-The TL-MR11U has been [[https://forum.openwrt.org/viewtopic.php?id=41714|teared down]] by Jarocks, since this router is hardware similar to TL-MR3040 was very useful when checking the pinout. At the moment is still in investigation by doiga, also under the [[https://forum.openwrt.org/viewtopic.php?id=42466|forum]]+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]]\\
Line 179: Line 216:
-> [[doc:hardware:port.GPIO]] -> [[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 table below shows the results of the investigation, based on the AR9331 datasheet:+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.**
-^  GPIO  ^ Available ^ AR9331 Pin ^ Description                     +The table below shows the results of the investigation, based on the AR9331 datasheet: 
-|      0 | R8        | A78  | Must have 0 value during bootstrap    | + 
 + 
 +^  GPIO  ^ Available ^ AR9331 Pin ^ Description                  
 +|      0 | R8        | A78  | Must have 0 value during bootstrap*   |
|      1 | R11      | A77  | Must have 1 value during bootstrap    | |      1 | R11      | A77  | Must have 1 value during bootstrap    |
-|      2 |           | B49  | Used by SPI Flash                    | +|      2 | SPI_CS_0  | B49  | Used by SPI Flash                    | 
-|      3 |           | B51  | Used by SPI Flash                    | +|      3 | SPI_CLK  | B51  | Used by SPI Flash                    | 
-|      4 |           | B50  | Used by SPI Flash                    | +|      4 | SPI_MOSI  | B50  | Used by SPI Flash                    | 
-|      5 |           | A57  | Used by SPI Flash                    |+|      5 | SPI_MISO  | A57  | Used by SPI Flash                    |
|      6 | NC        |      |                                      | |      6 | NC        |      |                                      |
|      7 | NC        |      |                                      | |      7 | NC        |      |                                      |
|      8 | NC        |      |                                      | |      8 | NC        |      |                                      |
-|      9 | SIN      | B68  | Serial INPUT                         +|      9 | SIN      | B68  | Serial INPUT (Rx)                   
-|    10 | SOUT      | A79  | Serial OUT                            | +|    10 | SOUT      | A79  | Serial OUTPUT (Tx)                    |
|    11 | RESET SW  | B48  | Soft Reset Switch                    | |    11 | RESET SW  | B48  | Soft Reset Switch                    |
|    12 | R84      | A56  | Must have 0 value during bootstrap    | |    12 | R84      | A56  | Must have 0 value during bootstrap    |
-|    13 | R12      | B66  | Must have 0 value during bootstrap    | +|    13 | R12      | B66  | Must have 1 value during bootstrap    | 
-|    14 | R9        | A76  |   ??                                +|    14 | R9        | A76  | **unused** Pulled to ground         
-|    15 | R10      | B65  |   ??                                |    +|    15 | R10      | B65  | **unused** Pulled to ground          |   
|    16 | R13      | A75  | Must have 0 value during bootstrap    | |    16 | R13      | A75  | Must have 0 value during bootstrap    |
-|    17 | LED2      | B64  |                                       +|    17 | LED2      | B64  | LAN LED                             
-|    18 | (R18?)    | A28  |   ??                                |+|    18 | USB_POWER | A28  | Control USB Host Power                |
|    19 | NC        |      |                                      | |    19 | NC        |      |                                      |
-|    20 | R15      | A27  | working                              |+|    20 | R15      | A27  | **unused** Pulled to ground          |
|    21 | NC        |      |                                      | |    21 | NC        |      |                                      |
|    22 | NC        |      |                                      | |    22 | NC        |      |                                      |
|    23 | NC        |      |                                      | |    23 | NC        |      |                                      |
|    24 | NC        |      |                                      | |    24 | NC        |      |                                      |
-|    26 | LED3      | A51  |                                       +|    26 | LED3      | A51  | Wireless LAN  LED                   
-|    27 | LED1      | B44  |                                       +|    27 | LED1      | B44  | 3G LED                               
-|    28 | (XLNA?)  | A74  | Must have 0 value during bootstrap    |+|    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]]. 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]].
-Kernel modules occupying that resource need to be removed before (e.g. "leds-gpio" and "gpio-buttons"). In output-mode, voltage levels of the GPIOs were measured against GND, after the value 1 or 0 had been written to /sys/class/gpio/gpioX/value. In input-mode, the value of the file /sys/class/gpio/gpioX/value was read when the GPIO was floating (initial state), pulled to GND or pulled to Vcc. +\\ 
==== LEDs ==== ==== LEDs ====
How to configure LEDs in general, see the LED section in the [[doc/uci/system]]. How to configure LEDs in general, see the LED section in the [[doc/uci/system]].
-The TL-MR3040 has 4 LEDs:+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''    |\\
-^ LED name ^ LED print ^ Internal name ^ Trigger ^  
-| Power | Power symbol | N/A (fixed supply) | N/A | 
-| LAN | LAN symbol | tp-link:green:lan | ''netdev:eth0'' | 
-| Wireless LAN | WLAN symbol | tp-link:green:wlan | ''phy0tpt'' | 
-| 3G    | Internet symbol  | tp-link:green:3g| ''USB:1-1'' | 
-==== USB Issue ==== +==== USB Port ==== 
-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.+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]].
-**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! +**This problem can also be circumvented** by using an external powered USB HUB 2.0 //HIGH-SPEED//
-Maybe a power restrictions from USB only?+\\
===== Bootlog ===== ===== Bootlog =====
Line 440: Line 484:
</p> </p>
</div> </div>
-</HTML>+</HTML>\\ 
===== Resources ===== ===== Resources =====
 +  * Official TP-Link TL-MR3040 [[http://www.tp-link.com/en/products/details/?model=TL-MR3040|Website]]
  * The latest official firmware is available [[http://www.tp-link.com/en/support/download/?model=TL-MR3040|here]]   * The latest official firmware is available [[http://www.tp-link.com/en/support/download/?model=TL-MR3040|here]]
- 
  * [[http://www.disk91.com/2012/technology/systems/installation-of-a-piratebox-on-t-link-mr3040/|Installation of piratebox on T-Link MR3040]]   * [[http://www.disk91.com/2012/technology/systems/installation-of-a-piratebox-on-t-link-mr3040/|Installation of piratebox on T-Link MR3040]]
-  * Confirmed [[http://www.minipwner.com/|MiniPwner]] working [[http://www.minipwner.com/index.php/forum/4-community-edition-installation/833-minipwner-based-on-tl-mr3040|INFO]]+  * [[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 hardware similar, most probably some modifications work, like External Antenna Hack!!!+  * 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!!!\\

Back to top

toh/tp-link/tl-mr3040.1361812810.txt.bz2 · Last modified: 2013/02/25 18:20 by doiga