Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
| toh:huawei:hg622u [2018/05/11 12:44] – [Installation] czjaromir | toh:huawei:hg622u [2024/10/05 11:01] – [Installation] danitool | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Huawei EchoLife HG622u ====== | ====== Huawei EchoLife HG622u ====== | ||
| - | The HG622 is an adsl wifi router mainly distributed by [[wp> | ||
| - | |||
| {{: | {{: | ||
| - | Internal xDSL modem NOT supported. | + | The HG622 is an ADSL wifi router mainly distributed by [[wp> |
| + | |||
| + | {{section> | ||
| + | |||
| + | {{section> | ||
| + | |||
| + | |||
| + | ===== Supported Versions ===== | ||
| + | <!-- ToH: { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } --> | ||
| + | |||
| + | <!-- ToH: { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } --> | ||
| ===== Hardware Highlights ===== | ===== Hardware Highlights ===== | ||
| - | ^ SoC ^ Ram ^ Flash ^ Network ^ USB ^ Serial ^ JTag ^ | + | <!-- ToH: { |
| - | | Broadcom 6368 | 32MiB | 8MiB | 4x| Yes | Yes | Yes | | + | " |
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } --> | ||
| ===== Installation ===== | ===== Installation ===== | ||
| - | | + | <!-- ToH: { |
| - | | + | |
| - | | + | " |
| + | " | ||
| + | | ||
| + | " | ||
| + | " | ||
| + | } --> | ||
| - | A [[#serial|serial]] | + | -> [[docs: |
| - | **Available firmwares: | + | ==== Installation using a modded CFE bootloader ==== |
| - | ^ Version ^ link ^ notes ^ | + | It seems the original bootloader doesn' |
| + | <WRAP center round download 60%> | ||
| + | [[https:// | ||
| + | |||
| + | </ | ||
| + | |||
| + | Upgrade the bootloader via TFTP using the serial console: | ||
| + | < | ||
| + | CFE> f 192.168.1.100: | ||
| + | Loading 192.168.1.100: | ||
| + | Finished loading 87360 bytes | ||
| + | |||
| + | Flashing CFE: .. | ||
| + | </ | ||
| + | |||
| + | After upgrading CFE you will have a web server at '' | ||
| + | |||
| + | <WRAP center round tip 60%> | ||
| + | It's recommendable to install an old Openwrt version to avoid running out of memory. But don't install any version between 17.01.5 and 18.06.3 (both included), they likely erase the wifi caldata partition. Version 17.01.4 should run fine: | ||
| + | |||
| + | https:// | ||
| + | </ | ||
| + | |||
| + | Install OpenWrt via new CFE: | ||
| + | - After power power cycling the device, press the reset button when powering on the router and wait some seconds | ||
| + | - Release the reset button | ||
| + | - Browse to '' | ||
| + | - Install OpenWrt binary image. | ||
| ==== OEM installation using the TFTP method ==== | ==== OEM installation using the TFTP method ==== | ||
| + | |||
| + | A [[# | ||
| For installing the Openwrt firmware you will need to use the CFE serial console: | For installing the Openwrt firmware you will need to use the CFE serial console: | ||
| Line 42: | Line 103: | ||
| Resetting board...\0xff | Resetting board...\0xff | ||
| </ | </ | ||
| - | |||
| Line 48: | Line 108: | ||
| Please check out the article [[docs: | Please check out the article [[docs: | ||
| - | ^ partition ^ name ^ filesystem ^ function ^ | + | ^ partition |
| - | | mtd0 | **CFE** | n/a | bootloader | | + | | mtd0 | **CFE** |
| - | | mtd1 | **kernel** | RAM executable | kernel | | + | | mtd1 | **kernel** |
| - | | mtd2 | **rootfs** | squashfs | root | | + | | mtd2 | **rootfs** |
| - | | mtd3 | **rootfs_data** | jffs2 | configuration, | + | | mtd3 | **rootfs_data** |
| - | | mtd4 | **cal_data** | n/a | wifi calibration data **RT3062F eeprom is at 0x0FA0000 offset.** | | + | | mtd4 | **cal_data** |
| - | | mtd5 | **nvram** | n/a | OEM configuration data | | + | | mtd5 | **nvram** |
| - | | mtd6 | **linux** | n/a | OpenWrt upgrade | | + | | mtd6 | **linux** |
| - | ===== Hardware ===== | + | |
| + | |||
| + | ===== Hardware ===== | ||
| ==== Info ==== | ==== Info ==== | ||
| - | | **[[wp> | + | ^ [[wp> |
| - | | **Vendor:** | + | ^ Vendor |
| - | | **[[docs: | + | ^ [[docs: |
| - | | **Board ID:** | + | ^ Board ID |
| - | | **[[docs: | + | ^ [[docs: |
| - | | **[[docs: | + | ^ [[docs: |
| - | | **Flash-Chip:** | + | ^ Flash-Chip |
| - | | **Flash size** | 8 MiB | | + | ^ Flash size |
| - | | **RAM** | 32 MiB / DDR-400 | | + | ^ RAM | 32 MiB / DDR-400 |
| - | | **Wireless** | Ralink RT3062 802.11b/g/n (onboard) | | + | ^ Wireless |
| - | | **Antenna** | 2x PCB | | + | ^ Antenna |
| - | | **Ethernet:** | + | ^ Ethernet |
| - | | **USB** | 1 x USB2.0 | | + | ^ USB | 1 x USB2.0 |
| - | | **ADSL Modem:** | Yes, NOT SUPPORTED | | + | ^ ADSL Modem |
| - | | **Power adapter** | ? | | + | ^ Power adapter |
| - | | **[[docs: | + | ^ [[docs: |
| - | | **[[docs: | + | ^ [[docs: |
| ==== PCB pictures ==== | ==== PCB pictures ==== | ||
| Line 86: | Line 147: | ||
| How to connect to the Serial Port of this specific device: | How to connect to the Serial Port of this specific device: | ||
| - | ^ J4 ^ | + | ^ J4 ^ |
| - | | TX | | + | | TX | |
| - | | GND | | + | | GND |
| - | | VCC | | + | | VCC |
| - | | nc | | + | | nc | |
| - | | RX | | + | | RX | |
| - | Serial works at 3.3V 115200N1, see pin assignments above | + | |
| + | Serial works at 3.3V 115200 8N1, see pin assignments above | ||
| |< | |< | ||
| Data bits - 8 | Data bits - 8 | ||
| Line 99: | Line 161: | ||
| Flow control | Flow control | ||
| - | |||
| - | |||
| - | |||
| - | ==== JTAG ==== | ||
| - | -> [[docs: | ||
| - | |||
| - | How to connect to the JTAG Port of this specific device: | ||
| - | |||
| - | {{media: | ||
| - | |||
| - | ^ J5 ^ | ||
| - | | TDI | | ||
| - | | TMS | | ||
| - | | TDO | | ||
| - | | TRST | | ||
| - | | TCK | | ||
| - | |||
| - | === URJTAG === | ||
| - | |||
| - | Using the urJtag with an FT2232H you can read the flash chip. | ||
| - | |||
| - | urjtag command file used: | ||
| - | |||
| - | < | ||
| - | endian big | ||
| - | detect | ||
| - | |||
| - | register BR 1 | ||
| - | register DIR 32 | ||
| - | register EJIMPCODE 32 | ||
| - | register EJADDRESS 32 | ||
| - | register EJDATA 32 | ||
| - | register EJCONTROL 32 | ||
| - | register EJALL 96 | ||
| - | |||
| - | instruction length 5 | ||
| - | instruction BYPASS 11111 BR | ||
| - | instruction IDCODE 00001 DIR | ||
| - | instruction EJTAG_IMPCODE 00011 EJIMPCODE | ||
| - | instruction EJTAG_ADDRESS 01000 EJADDRESS | ||
| - | instruction EJTAG_DATA 01001 EJDATA | ||
| - | instruction EJTAG_CONTROL 01010 EJCONTROL | ||
| - | instruction EJTAG_ALL 01011 EJALL | ||
| - | |||
| - | instruction IDCODE | ||
| - | shift ir | ||
| - | shift dr | ||
| - | dr | ||
| - | |||
| - | initbus ejtag | ||
| - | |||
| - | detectflash 0x38000000 | ||
| - | |||
| - | readmem 0x38000000 0x020000 hg622-CFE.bin</ | ||
| - | |||
| - | You can use a different JTAG cable, only the first line will be different | ||
| - | ^ JTAG adapter ^ command ^ | ||
| - | | Altera USB Blaster adapter | < | ||
| - | | [[docs: | ||
| - | | [[docs: | ||
| - | |||
| - | |||
| - | === ZJTAG === | ||
| - | |||
| - | and using zjtag(version 1.5) | ||
| - | * to detect flash chip:< | ||
| - | * to backup all flash: < | ||
| ==== GPIOs ==== | ==== GPIOs ==== | ||
| Line 171: | Line 166: | ||
| === LEDs === | === LEDs === | ||
| Read: [[docs: | Read: [[docs: | ||
| - | ^ GPIO | + | ^ GPIO |
| - | | 2 | adsl | Low | + | | 2 | adsl |
| - | | 5 | inet | Low | | + | | 5 | inet |
| - | | 11 | + | | 11 |
| - | | 22 | + | | 22 |
| - | | 6 (PINMUX_EPHY0_ACT_LED) | lan1 | Low | | + | | 6 (PINMUX_EPHY0_ACT_LED) |
| - | | 7 (PINMUX_EPHY1_ACT_LED) | lan2 | Low | | + | | 7 (PINMUX_EPHY1_ACT_LED) |
| - | | 8 (PINMUX_EPHY2_ACT_LED) | lan3 | Low | | + | | 8 (PINMUX_EPHY2_ACT_LED) |
| - | | 9 (PINMUX_EPHY3_ACT_LED) | lan4 | Low | | + | | 9 (PINMUX_EPHY3_ACT_LED) |
| === Buttons === | === Buttons === | ||
| -> [[docs: | -> [[docs: | ||
| - | ^ GPIO ^ Event | + | ^ BUTTON |
| - | | 34 | Reset | Low | | + | | RESET | reset |
| + | | WPS | | ||
| + | | WLAN | ||
| ===== Bootloader mods ===== | ===== Bootloader mods ===== | ||
| - | |||
| ^ bootloader ^ download link ^ description ^ | ^ bootloader ^ download link ^ description ^ | ||
| | CFE | [[https:// | | CFE | [[https:// | ||
| - | |||
| - | ===== OpenWRT bootlog ===== | ||
| - | |||
| - | <WRAP bootlog> | ||
| - | < | ||
| - | [ 0.000000] Detected Broadcom 0x6368 CPU revision b2 | ||
| - | [ 0.000000] CPU frequency is 400 MHz | ||
| - | [ 0.000000] 32MB of RAM installed | ||
| - | [ 0.000000] registering 38 GPIOs | ||
| - | [ 0.000000] board_bcm963xx: | ||
| - | [ 0.000000] board_bcm963xx: | ||
| - | [ 0.000000] bootconsole [early0] enabled | ||
| - | [ 0.000000] CPU revision is: 0002a031 (Broadcom BMIPS4350) | ||
| - | [ 0.000000] board_bcm963xx: | ||
| - | [ 0.000000] Determined physical RAM map: | ||
| - | [ 0.000000] | ||
| - | [ 0.000000] Initrd not found or empty - disabling initrd | ||
| - | [ 0.000000] Zone ranges: | ||
| - | [ 0.000000] | ||
| - | [ 0.000000] Movable zone start for each node | ||
| - | [ 0.000000] Early memory node ranges | ||
| - | [ 0.000000] | ||
| - | [ 0.000000] On node 0 totalpages: 8192 | ||
| - | [ 0.000000] free_area_init_node: | ||
| - | [ 0.000000] | ||
| - | [ 0.000000] | ||
| - | [ 0.000000] | ||
| - | [ 0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 16 bytes. | ||
| - | [ 0.000000] Primary data cache 32kB, 2-way, VIPT, cache aliases, linesize 16 bytes | ||
| - | [ 0.000000] PERCPU: Embedded 7 pages/cpu @81043000 s6144 r8192 d14336 u32768 | ||
| - | [ 0.000000] pcpu-alloc: s6144 r8192 d14336 u32768 alloc=8*4096 | ||
| - | [ 0.000000] pcpu-alloc: [0] 0 [0] 1 | ||
| - | [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128 | ||
| - | [ 0.000000] Kernel command line: root=/ | ||
| - | [ 0.000000] PID hash table entries: 128 (order: -3, 512 bytes) | ||
| - | [ 0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes) | ||
| - | [ 0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes) | ||
| - | [ 0.000000] __ex_table already sorted, skipping sort | ||
| - | [ 0.000000] Memory: 28756k/ | ||
| - | [ 0.000000] Hierarchical RCU implementation. | ||
| - | [ 0.000000] NR_IRQS:128 | ||
| - | [ 0.028000] Calibrating delay loop... 397.82 BogoMIPS (lpj=795648) | ||
| - | [ 0.032000] pid_max: default: 32768 minimum: 301 | ||
| - | [ 0.036000] Mount-cache hash table entries: 512 | ||
| - | [ 0.044000] SMP: Booting CPU1... | ||
| - | [ 0.048000] CPU revision is: 0002a031 (Broadcom BMIPS4350) | ||
| - | [ 0.048000] Primary instruction cache 64kB, VIPT, 4-way, linesize 16 bytes. | ||
| - | [ 0.048000] Primary data cache 32kB, 2-way, VIPT, cache aliases, linesize 16 bytes | ||
| - | [ 0.076000] SMP: CPU1 is running | ||
| - | [ 0.076000] Brought up 2 CPUs | ||
| - | [ 0.108000] NET: Registered protocol family 16 | ||
| - | [ 0.116000] registering PCI controller with io_map_base unset | ||
| - | [ 0.132000] bio: create slab < | ||
| - | [ 0.136000] PCI host bridge to bus 0000:00 | ||
| - | [ 0.140000] pci_bus 0000:00: root bus resource [mem 0x30000000-0x37ffffff] | ||
| - | [ 0.144000] pci_bus 0000:00: root bus resource [io 0x8000000-0x800ffff] | ||
| - | [ 0.148000] pci_bus 0000:00: No busn resource found for root bus, will use [bus 00-ff] | ||
| - | [ 0.152000] pci 0000: | ||
| - | [ 0.152000] pci 0000: | ||
| - | [ 0.164000] pci 0000: | ||
| - | [ 0.164000] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00 | ||
| - | [ 0.164000] pci 0000: | ||
| - | [ 0.168000] Switching to clocksource MIPS | ||
| - | [ 0.180000] NET: Registered protocol family 2 | ||
| - | [ 0.184000] TCP established hash table entries: 512 (order: 0, 4096 bytes) | ||
| - | [ 0.192000] TCP bind hash table entries: 512 (order: 0, 4096 bytes) | ||
| - | [ 0.200000] TCP: Hash tables configured (established 512 bind 512) | ||
| - | [ 0.208000] TCP: reno registered | ||
| - | [ 0.208000] UDP hash table entries: 256 (order: 1, 8192 bytes) | ||
| - | [ 0.216000] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes) | ||
| - | [ 0.224000] NET: Registered protocol family 1 | ||
| - | [ 0.228000] PCI: CLS 0 bytes, default 16 | ||
| - | [ 0.228000] audit: initializing netlink socket (disabled) | ||
| - | [ 0.236000] type=2000 audit(0.232: | ||
| - | [ 0.240000] squashfs: version 4.0 (2009/ | ||
| - | [ 0.248000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc. | ||
| - | [ 0.256000] msgmni has been set to 56 | ||
| - | [ 0.264000] io scheduler noop registered | ||
| - | [ 0.268000] io scheduler deadline registered (default) | ||
| - | [ 0.272000] bcm63xx_uart.0: | ||
| - | [ 0.280000] console [ttyS0] enabled, bootconsole disabled | ||
| - | [ 0.292000] bcm63xx-rng bcm63xx-rng: | ||
| - | [ 0.300000] physmap platform flash device: 08000000 at 18000000 | ||
| - | [ 0.308000] physmap-flash.0: | ||
| - | [ 0.320000] physmap-flash.0: | ||
| - | [ 0.320000] Amd/Fujitsu Extended Query Table at 0x0040 | ||
| - | [ 0.324000] | ||
| - | [ 0.328000] number of CFI chips: 1 | ||
| - | [ 0.332000] bcm63xxpart: | ||
| - | [ 0.340000] bcm63xxpart: | ||
| - | [ 0.348000] bcm63xxpart: | ||
| - | [ 0.356000] bcm63xxpart: | ||
| - | [ 0.364000] bcm63xxpart: | ||
| - | [ 0.372000] bcm63xxpart: | ||
| - | [ 0.376000] bcm63xxpart: | ||
| - | [ 0.384000] bcm63xxpart: | ||
| - | [ 0.392000] 6 bcm63xxpart partitions found on MTD device physmap-flash.0 | ||
| - | [ 0.400000] Creating 6 MTD partitions on " | ||
| - | [ 0.404000] 0x000000000000-0x000000020000 : " | ||
| - | [ 0.412000] 0x000000020100-0x000000140000 : " | ||
| - | [ 0.416000] mtd: partition " | ||
| - | [ 0.432000] 0x000000140000-0x000000fa0000 : " | ||
| - | [ 0.440000] mtd: partition " | ||
| - | [ 0.444000] mtd: partition " | ||
| - | [ 0.452000] 0x000000320000-0x000000fa0000 : " | ||
| - | [ 0.460000] 0x000000fa0000-0x000000fc0000 : " | ||
| - | [ 0.468000] 0x000000fe0000-0x000001000000 : " | ||
| - | [ 0.476000] 0x000000020000-0x000000fa0000 : " | ||
| - | [ 0.484000] bcm63xx-spi bcm63xx-spi: | ||
| - | [ 0.532000] b53_common: found switch: BCM63xx, rev 0 | ||
| - | [ 0.536000] bcm63xx-wdt bcm63xx-wdt: | ||
| - | [ 0.548000] TCP: cubic registered | ||
| - | [ 0.552000] NET: Registered protocol family 17 | ||
| - | [ 0.556000] 8021q: 802.1Q VLAN Support v1.8 | ||
| - | [ 0.568000] VFS: Mounted root (squashfs filesystem) readonly on device 31:2. | ||
| - | [ 0.576000] Freeing unused kernel memory: 200k freed | ||
| - | [ 2.508000] bcm63xx_enetsw bcm63xx_enetsw.0: | ||
| - | [ 2.740000] Button Hotplug driver version 0.4.1 | ||
| - | [ 2.764000] input: gpio-keys-polled as / | ||
| - | [ 6.252000] jffs2: notice: (365) jffs2_build_xattr_subsystem: | ||
| - | [ 7.428000] compat-drivers backport release: compat-drivers-2013-03-28-5 | ||
| - | [ 7.432000] Backport based on wireless-testing.git master-2013-04-16 | ||
| - | [ 7.440000] compat.git: wireless-testing.git | ||
| - | [ 7.488000] cfg80211: Calling CRDA to update world regulatory domain | ||
| - | [ 7.492000] cfg80211: World regulatory domain updated: | ||
| - | [ 7.500000] cfg80211: | ||
| - | [ 7.508000] cfg80211: | ||
| - | [ 7.516000] cfg80211: | ||
| - | [ 7.524000] cfg80211: | ||
| - | [ 7.532000] cfg80211: | ||
| - | [ 7.540000] cfg80211: | ||
| - | [ 7.856000] NET: Registered protocol family 10 | ||
| - | [ 8.176000] SCSI subsystem initialized | ||
| - | [ 8.336000] usbcore: registered new interface driver usbfs | ||
| - | [ 8.344000] usbcore: registered new interface driver hub | ||
| - | [ 8.348000] usbcore: registered new device driver usb | ||
| - | [ 8.848000] PCI: Enabling device 0000: | ||
| - | [ 8.852000] rt2800pci 0000: | ||
| - | [ 8.856000] phy0 -> rt2x00lib_request_eeprom_file: | ||
| - | [ 8.868000] phy0 -> rt2x00_set_rt: | ||
| - | [ 8.876000] phy0 -> rt2x00_set_rf: | ||
| - | [ 8.884000] ieee80211 phy0: Selected rate control algorithm ' | ||
| - | [ 9.452000] PPP generic driver version 2.4.2 | ||
| - | [ 9.732000] ip_tables: (C) 2000-2006 Netfilter Core Team | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | [ | ||
| - | </ | ||
| ===== Tags ===== | ===== Tags ===== | ||
| [[meta: | [[meta: | ||
| - | {{tag> | + | {{tag> |