Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
inbox:toh:google:onhub_tp-link_tgr1900 [2023/05/31 09:29] – [Installing OpenWrt] details on the ASUS developer mode linusinbox:toh:google:onhub_tp-link_tgr1900 [2024/09/21 04:15] – [Asus / TP-LINK TGR1900 (Google OnHub)] Power jack details. ryanrs
Line 1: Line 1:
-====== TP-LINK TGR1900 (Google OnHub) ======+====== Asus / TP-LINK TGR1900 (Google OnHub) ======
 ~~NOTOC~~ ~~NOTOC~~
 +
 +{{ media:google_onhub_image.jpg?400|TP-LINK OnHub TGR1900}}
 +
 +{{ media:asus:asus_onhub.jpg?150|ASUS Onhub SRT-AC1900}}
  
 /* This template is intended to be used via https://openwrt.org/meta/create_new_device_page . */ /* This template is intended to be used via https://openwrt.org/meta/create_new_device_page . */
  
-{{page>meta:infobox:construction&noheader&nofooter&noeditbtn}} +Asus / TP-LINK OnHub TGR1900 is a 3x3 802.11ac AP with a quad-core Qualcomm IPQ8064 SoC, 1 GiB RAM, and 4 GiB eMMC storage. Its stock firmware is based on ChromeOS, including a bootloader based on [[https://coreboot.org/|Coreboot]] and [[https://libreboot.org/docs/depthcharge/|Depthcharge]], and can be convinced to run non-Google-signed software (such as OpenWrt) by entering Developer Mode.
- +
-TP-LINK OnHub TGR1900 is a 3x3 802.11ac AP with a quad-core Qualcomm IPQ8064 SoC, 1 GiB RAM, and 4 GiB eMMC storage. Its stock firmware is based on ChromeOS, including a bootloader based on [[https://coreboot.org/|Coreboot]] and [[https://libreboot.org/docs/depthcharge/|Depthcharge]], and can be convinced to run non-Google-signed software (such as OpenWrt) by entering Developer Mode.+
  
 ASUS OnHub SRT-AC1900 is a nearly-identical AP, with almost identical hardware specifications, and nearly identical stock firmware. Thus, much of this page applies to it as well. ASUS OnHub SRT-AC1900 is a nearly-identical AP, with almost identical hardware specifications, and nearly identical stock firmware. Thus, much of this page applies to it as well.
  
-/*****/ +The TP-Link uses a standard 12V barrel jackThe ASUS has a weird connector for 19V. Keep this in mind if you're buying on eBay, since many listings won't include the power supply.
-/* How to add images ========> https://openwrt.org/meta/adding_images_to_openwrt_wiki */ +
-/*****/ +
- +
-{{ media:google_onhub_image.jpg?400|TP-LINK OnHub TGR1900}} +
- +
-{{ media:asus:asus_onhub.jpg?150|ASUS Onhub SRT-AC1900}} +
 ===== Supported Versions ===== ===== Supported Versions =====
----- datatable ---- +<!-- ToH: { 
-cols    BrandModelVersionsSupported Current Rel, OEM device homepage URL_url, OWrt Forum Topic URL_url, Device Techdata_pageid +  "source""json", 
-headers BrandModel, Version, Current Release, OEM Info, Forum Topic, Technical Data +  "dom": "t", 
-align   c,c,c,c,c,c,c +  "paging": false
-filter  : Brand=TP-Link +  "rotate"true
-filter  Model=OnHub TGR1900 +  "shownColumns"["brand""model""version""supportedcurrentrel""oemdevicehomepageurl""owrt_forum_topic_url", "deviceid"]
-----+  "filterColumns"{"brand": "^TP-Link$", "model""^OnHub TGR1900$"} 
 +-->
  
----- datatable ---- +<!-- ToH: { 
-cols    BrandModelVersions, Supported Current Rel, OEM device homepage URL_url, OWrt Forum Topic URL_url, Device Techdata_pageid +  "source""json", 
-headers Brand, Model, Version, Current Release, OEM Info, Forum TopicTechnical Data +  "dom": "t"
-align   c,c,c,c,c,c,c +  "paging"false
-filter  : Brand=ASUS +  "shownColumns"["brand""model""version""supportedcurrentrel""oemdevicehomepageurl""owrt_forum_topic_url", "deviceid"]
-filter  Model=OnHub SRT-AC1900 +  "filterColumns": {"brand""^ASUS$", "model""^OnHub SRT-AC1900$"} 
-----+-->
  
  
 ===== Hardware Highlights ===== ===== Hardware Highlights =====
----- datatable ---- +<!-- ToH: { 
-cols    ModelVersionsCPUCPU MHz, Flash MB_mbflashs, RAM MB_mbram, WLAN Hardware, WLAN 2.4GHz, WLAN 5.0GHz, Ethernet 100M ports_, Ethernet Gbit ports_, Modem, USB ports_ +  "source""json", 
-header  : ModelVersion,SoC,CPU MHz,Flash MB,RAM MB,WLAN Hardware,WLAN2.4,WLAN5.0,100M ports,Gbit ports,Modem,USB +  "dom": "t", 
-align   c,c,c,c,c,c,c,c,c,c,c,c,c +  "paging": false
-filter  : Brand=TP-Link +  "rotate"true
-filter  Model=OnHub TGR1900 +  "shownColumns"["model""version""cpu""cpumhz""flashmb""rammb""wlanhardware""wlan24ghz""wlan50ghz""ethernet100mports""ethernet1gports""modem", "usbports"]
-----+  "filterColumns"{"brand": "^TP-Link$", "model""^OnHub TGR1900$"} 
 +-->
  
----- datatable ---- +<!-- ToH: { 
-cols    ModelVersions, CPU, CPU MHz, Flash MB_mbflashs, RAM MB_mbram, WLAN Hardware, WLAN 2.4GHz, WLAN 5.0GHz, Ethernet 100M ports_, Ethernet Gbit ports_, ModemUSB ports_ +  "source""json", 
-header  : ModelVersion,SoC,CPU MHz,Flash MB,RAM MB,WLAN Hardware,WLAN2.4,WLAN5.0,100M ports,Gbit ports,Modem,USB +  "dom": "t"
-align   c,c,c,c,c,c,c,c,c,c,c,c,c +  "paging"false
-filter  : Brand=ASUS +  "shownColumns"["model""version""cpu""cpumhz""flashmb""rammb""wlanhardware""wlan24ghz""wlan50ghz""ethernet100mports""ethernet1gports""modem", "usbports"]
-filter  Model=OnHub SRT-AC1900 +  "filterColumns"{"brand": "^ASUS$", "model""^OnHub SRT-AC1900$"} 
-----+-->
  
  
 ===== Installation ===== ===== Installation =====
----- datatable ---- 
-cols    : Model, Versions, Supported Current Rel, Firmware OpenWrt Install URL_url, Firmware OpenWrt Upgrade URL_url, Firmware OEM Stock URL_url 
-headers : Model, Version, Current Release, Firmware OpenWrt Install, Firmware OpenWrt Upgrade, Firmware OEM Stock 
-align   : c,c,c 
-filter  : Brand=TP-Link 
-filter  : Model=OnHub TGR1900 
----- 
- 
----- datatable ---- 
-cols    : Model, Versions, Supported Current Rel, Firmware OpenWrt Install URL_url, Firmware OpenWrt Upgrade URL_url, Firmware OEM Stock URL_url 
-headers : Model, Version, Current Release, Firmware OpenWrt Install, Firmware OpenWrt Upgrade, Firmware OEM Stock 
-align   : c,c,c 
-filter  : Brand=ASUS 
-filter  : Model=OnHub SRT-AC1900 
----- 
- 
-{{page>meta:infobox:attention_trunk&noheader&nofooter&noeditbtn}} 
  
 +Download OpenWRT firmware: [[https://firmware-selector.openwrt.org/?target=ipq806x%2Fchromium&id=tplink_onhub|TP-Link OnHub TGR1900]], [[https://firmware-selector.openwrt.org/?target=ipq806x%2Fchromium&id=asus_onhub|ASUS OnHub SRT-AC1900]]
  
 +For explanation of the different types of images, see [[docs:guide-user:installation:before.installation|FAQ before installation]].
  
 /*** if info available: uncomment and fill in /*** if info available: uncomment and fill in
Line 111: Line 93:
 ==== Installing OpenWrt ==== ==== Installing OpenWrt ====
  
-In the following steps, you will configure Google OnHub for Developer Mode, and boot from a USB image containing OpenWrt. You will again need:+In the following steps, you will configure Google OnHub for Developer Mode, and boot from a USB image containing OpenWrt. You will need:
  
-  * USB drive (flash OpenWrt ''tplink_onhub-squashfs-factory.bin'' to the drive)+  * USB drive that is **4GB or bigger** notice that this size if **not optional**, the device will not boot on smaller USB drives, despite the fact that the boot image is much smaller, only around 20MB
   * 1.5mm hex key (TP-LINK variant) or an ordinary Philips screwdriver (ASUS variant)   * 1.5mm hex key (TP-LINK variant) or an ordinary Philips screwdriver (ASUS variant)
   * Pin to press reset button   * Pin to press reset button
Line 119: Line 101:
 Procedure: Procedure:
  
 +  - Write the right factory image to the USB drive with **dd**. This done by writing the whole squashfs factory image to the entire device, i.e. **dd if=openwrt-ipq806x-chromium-[asus|tplink]_onhub-squashfs-factory.bin of=/dev/sdN**, where **sdN** is the device name of your USB drive. Be certain to unmount any file systems from the drive before you do this. Once the **dd** command is complete, you can remove the USB drive and insert it into the OnHub.
   - TP-LINK variant:   - TP-LINK variant:
 +    * Write the OpenWrt image ''openwrt-ipq806x-chromium-tplink_onhub-squashfs-factory.bin'' to the USB drive using ''dd'' as described above
     * Peel off the rubber feet at the bottom of the device to reveal the hidden switch screw on the TP-LINK variant (see location on picture [[#developer_screw_location|below]])     * Peel off the rubber feet at the bottom of the device to reveal the hidden switch screw on the TP-LINK variant (see location on picture [[#developer_screw_location|below]])
     * Use 1.5mm hex screwdriver to remove the switch screw to unlock access to the developer mode switch     * Use 1.5mm hex screwdriver to remove the switch screw to unlock access to the developer mode switch
   - ASUS variant:   - ASUS variant:
 +    * Write the OpenWrt image ''openwrt-ipq806x-chromium-asus_onhub-squashfs-factory.bin'' to the USB drive using ''dd'' as described above
     * Peel off the rubber feet at the bottom of the device     * Peel off the rubber feet at the bottom of the device
     * Remove all four screws breaking the warranty seal     * Remove all four screws breaking the warranty seal
Line 129: Line 114:
     * Lift up and fold the speaker to the side     * Lift up and fold the speaker to the side
     * Unscrew the developer mode screw as illustrated in the [[#developer_screw_location|image below]]     * Unscrew the developer mode screw as illustrated in the [[#developer_screw_location|image below]]
-  - Plug in USB stick containing OpenWrt+  - Plug in the USB stick containing OpenWrt
   - Hold the Reset button (Near the power jack on the TP-LINK variant, right above the USB port on the ASUS variant)   - Hold the Reset button (Near the power jack on the TP-LINK variant, right above the USB port on the ASUS variant)
   - Connect power to the device while holding Reset button   - Connect power to the device while holding Reset button
Line 174: Line 159:
  
 === Expanding storage (optional) === === Expanding storage (optional) ===
 +
 +<WRAP center round info 650px>
 +OpenWrt 23.05 automatically resizes storage to full 4GB, so it's not necessary to run the commands below manually. Instructions below are for reference only.
 +</WRAP>
 +
 +<hidden>
 You can expand your storage to the full 4GB this device has by executing the following through SSH:\\ You can expand your storage to the full 4GB this device has by executing the following through SSH:\\
 <code bash> <code bash>
Line 194: Line 185:
  
 More information about expanding for squashfs and ext4 is provided here: [[:docs:guide-user:installation:installation_methods:sd_card#expanding_the_filesystem]] More information about expanding for squashfs and ext4 is provided here: [[:docs:guide-user:installation:installation_methods:sd_card#expanding_the_filesystem]]
 +
 +</hidden>
  
 /*** if info available: uncomment and fill in /*** if info available: uncomment and fill in
Line 257: Line 250:
 ***/ ***/
  
 +===== Basic configuration =====
 +-> [[docs:guide-user:base-system:start|Basic configuration]] After flashing, proceed with this.\\
 +Set up your Internet connection, configure wireless, configure USB port, etc.
 +
 +===== Specific Configuration =====
 +==== Network interfaces ====
 +The default network configuration is:
 +^ Interface Name  ^ Description              ^ Default configuration ^
 +| br-lan (eth1.1) | LAN & WiFi bridge        | 192.168.1.1/24        |
 +| br-wan (eth0.2) | WAN bridge               | DHCP client           |
 +| vlan1 (eth1.1)  | LAN port                 | None                  |
 +| vlan2 (eth0.2)  | WAN port                 | None                  |
 +| radio0          | WiFi 2.4G (QCA9880 3x3)  | Disabled              |
 +| radio1          | WiFi 5G (QCA9880 3x3)    | Disabled              |
 +| radio2          | WiFi 2G/5G (QCA9882 1x1) | Disabled              |
 +
 +Note transfer speeds are slow on ''radio2'' as it was designed for monitoring, not for data transfers.
 +
 +==== Switch Ports (for VLANs)  ====
 +
 +OpenWrt Switch port number 1 is the LAN Ethernet port labeled ''<- ->'' on the device, number 2 is the physical network port labeled with a globe icon (WAN) on the device, and number 0 and 6 are internal connections between the switch chip and the CPU (labeled "CPU" in LuCI). Use these //switch// port numbers when specifying a VLAN's ports via the UCI (i.e., in the ''ports'' option of a VLAN's ''config switch_vlan'' section, in ''/etc/config/network'').
 +
 +By default, ''eth0'' is used for traffic to/from the ISP and ''eth1''s for traffic to/from the local network.
  
 +^ Port           ^ Switch port   ^
 +| CPU (eth0)     | 0             |
 +| LAN            | 1             |
 +| WAN            | 2             |
 +| CPU (eth1)     | 6             |
 ===== Hardware ===== ===== Hardware =====
 ==== Info ==== ==== Info ====
Line 274: Line 295:
 ^ Serial          | Yes                             | ^ Serial          | Yes                             |
 ^ JTAG            |                                 | ^ JTAG            |                                 |
 +
  
  
Line 315: Line 337:
  
 ==== Serial ==== ==== Serial ====
--> [[docs:techref:hardware:port.serial]] general information about the serial port, serial port cable, etc. 
  
-How to connect to the Serial Port of this specific device:\\ +{{ :media:tplink:tgr1900_servo_header.jpg?400|}}
-**Insert photo of PCB with markings for serial port**+
  
-<WRAP BOX> +OnHub devices share the [[https://chromium.googlesource.com/chromiumos/third_party/hdctools/+/HEAD/docs/servo_v2.md|Servo debug header]] used on many ChromeOS systems. The debug header has a 50-pin footprint, and provides access to UART pins among many other debug-related signals. Unfortunately, this header is typically populated with a proper connector only for Google-internal boards, and the companion Servo board is only available to Google engineers. 
-FIXME //Replace EXAMPLE by real values.// + 
-</WRAP>+However, you may not be out of luck; it's technically possible to wire up your own connector, as the debug pads are still available on production systems, as highlighted on the board photo. The pinout is well documented in the [[https://www.chromium.org/chromium-os/servo/chromium_os_yoshi_flex.tar.gz|"Yoshi" flex cable schematic]], and particularly its contained ''Schematic/810-10062-00_20130625_yoshi_flex_SCH_0.pdf''. In short, the relevant pins are: 
 + 
 +  15 = GND 
 +  16 = 1P8_UART2_RX 
 +  17 = 1P8_UART2_TX 
 +  18 = PP1800
  
-^ Serial connection parameters\\ for Google Onhub TP-LINK TGR1900 | EXAMPLE 115200, 8N1, 3.3V |+Skillful soldering could theoretically attach wires to these pins to bring out the 1.8V TTL UART port.
  
 +UART console is available in default software for both the stock ChromeOS firmware (once the device is in Developer Mode) and in OpenWrt.
  
 +^ Serial connection parameters\\ for TP-LINK and ASUS OnHub | 115200, 8N1, 1.8V |
 ===== Bootlogs ===== ===== Bootlogs =====
 ==== OEM bootlog ==== ==== OEM bootlog ====
Line 1487: Line 1514:
 Technical information: [[hwinfo>TP-LINK_TGR1900_(Google_OnHub)]]  Technical information: [[hwinfo>TP-LINK_TGR1900_(Google_OnHub)]] 
  
-Information about bootloader: https://chromium.googlesource.com/chromiumos/docs/+/HEAD/developer_mode.md+Information about bootloader: https://www.chromium.org/chromium-os/developer-library/guides/device/developer-mode/
  
 ===== Tags ===== ===== Tags =====
 [[meta:tags|How to add tags]] [[meta:tags|How to add tags]]
 {{tag>ipq806x ipq8064 4096emmc 1024ram 2port gigabitethernet 802.11abgnac 2core arm armv7}} {{tag>ipq806x ipq8064 4096emmc 1024ram 2port gigabitethernet 802.11abgnac 2core arm armv7}}
  • Last modified: 2024/09/25 18:42
  • by ryanrs