HooToo HT-TM05

Travel router with internal battery with one USB 2.0 port, one ethernet port and b/g/n wifi capabilities.

OEM CPU Info:

$ cat /proc/cpuinfo
system type        : Ralink SoC
processor        : 0
cpu model        : MIPS 24Kc V5.0
BogoMIPS        : 386.04
wait instruction    : yes
microsecond timers    : yes
tlb_entries        : 32
extra interrupt vector    : yes
hardware watchpoint    : yes, count: 4, address/irw mask: [0x0ffc, 0x0ffc, 0x0b78, 0x0ffb]
ASEs implemented    : mips16 dsp
shadow register sets    : 1
core            : 0
VCED exceptions        : not available
VCEI exceptions        : not available

OEM Meminfo:

$ cat /proc/meminfo
MemTotal:          59548 kB
MemFree:           11728 kB
Buffers:           12232 kB
Cached:            16560 kB
SwapCached:            0 kB
Active:            14416 kB
Inactive:          18948 kB
Active(anon):       2484 kB
Inactive(anon):     2628 kB
Active(file):      11932 kB
Inactive(file):    16320 kB
Unevictable:         540 kB
Mlocked:               0 kB
SwapTotal:             0 kB
SwapFree:              0 kB
Dirty:                80 kB
Writeback:             0 kB
AnonPages:          5140 kB
Mapped:             3184 kB
Shmem:                 0 kB
Slab:              10876 kB
SReclaimable:       5828 kB
SUnreclaim:         5048 kB
KernelStack:         520 kB
PageTables:          400 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:       29772 kB
Committed_AS:      10020 kB
VmallocTotal:    1048372 kB
VmallocUsed:        2360 kB
VmallocChunk:    1044720 kB

OEM flash Layout:

$ cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00800000 00010000 "ALL"
mtd1: 00030000 00010000 "Bootloader"
mtd2: 00010000 00010000 "Config"
mtd3: 00010000 00010000 "Factory"
mtd4: 00180000 00010000 "Kernel_RootFS"
mtd5: 00010000 00010000 "params"
mtd6: 00010000 00010000 "user_backup"
mtd7: 00010000 00010000 "user"
mtd8: 00600000 00010000 "Rootfs"

OpenWrt flash layout:

$ cat /proc/mtd
dev:	size   erasesize  name
mtd0: 00030000 00010000 "u-boot"
mtd1: 00010000 00010000 "u-boot-env"
mtd2: 00010000 00010000 "factory"
mtd3: 007b0000 00010000 "firmware"
mtd4: 00120f6e 00010000 "kernel"
mtd5: 0068f092 00010000 "rootfs"
mtd6: 00440000 00010000 "rootfs_data"
mtd7: 00000000 00000000 "art"

U-Boot 1.1.3 (May 7 2014 - 05:35:03) Board: Ralink APSoC DRAM: 64 MB relocate_code Pointer at: 83fac000 enable ephy clock...done. rf reg 29 = 5 SSC disabled. spi_wait_nsec: 29 spi device id: c2 20 17 c2 20 (2017c220) find flash: MX25L6405D raspi_read: from:1d4000 len:1000 *** Warning - bad CRC, using default environment ============================================ Ralink UBoot Version: 4.1.0.0 -------------------------------------------- ASIC 7620_MP (Port5<->None) DRAM component: 512 Mbits DDR, width 16 DRAM bus: 16 bit Total memory: 64 MBytes Flash component: SPI Flash Date:May 7 2014 Time:05:35:03 ============================================ icache: sets:512, ways:4, linesz:32 ,total:65536 dcache: sets:256, ways:4, linesz:32 ,total:32768 ##### The CPU freq = 580 MHZ #### estimate memory size =64 Mbytes raspi_read: from:40028 len:6 Initialize vs configure module raspi_read: from:1d0000 len:1000 Initialize GPIO check: 0 Input i key to enter menu 0 raspi_read: from:50000 len:180000 ## Booting image at 80500000 ... Image Name: Linux Kernel Image Image Type: MIPS Linux Kernel Image (lzma compressed) Data Size: 1555808 Bytes = 1.5 MB Load Address: 80000000 Entry Point: 8000c2f0 Verifying Checksum ... OK Uncompressing Kernel Image ... OK No initrd ## Transferring control to Linux (at address 8000c2f0) ... ## Giving linux memsize in MB, 64 Starting kernel ... LINUX started... THIS IS ASIC [ 0.104000] PROC INIT OK! [ 0.256000] gre: can't add protocol enter init Start rootfs mounted echo 7 > /proc/sys/kernel/printk [ 2.036000] tntfs: module license 'Commercial. For support email ntfs-support@tuxera.com.' taints kernel. [ 2.056000] Disabling lock debugging due to kernel taint [ 2.092000] Tuxera NTFS driver 3014.4.29 [Flags: R/W MODULE]. [ 2.180000] Tuxera FAT driver 3013.2.9 [Flags: R/W MODULE]. init dev files mounted end Sun Jan 1 01:10:35 UTC 2012 Get time information first tz_minuteswest=0 Set time information offset=0 tz.tz_minuteswest=0 Get time information again tz_minuteswest=0 GMT-00:00 Finish the check crc SSID_PREFIX:TripMateSith wireless port last two bytes:-2bac! str_buf=2BAC SSID:TripMateSith-2BAC init net /etc/initnet: line 29: wanMode_restore: not found [ 7.372000] Raeth v3.0 (Tasklet,SkbRecycle) [ 7.384000] [ 7.384000] phy_tx_ring = 0x035e0000, tx_ring = 0xa35e0000 [ 7.384000] [ 7.384000] phy_rx_ring0 = 0x035e1000, rx_ring0 = 0xa35e1000 [ 7.384000] SMACCR1 -- : 0x0000001c [ 7.384000] SMACCR0 -- : 0xc2202bac [ 7.428000] CDMA_CSG_CFG = 81000000 [ 7.432000] GDMA1_FWD_CFG = 20710000 [ 7.496000] RX DESC a3e3c000 size = 2048 [ 7.508000] RTMP_TimerListAdd: add timer obj c00e3798! [ 7.520000] RTMP_TimerListAdd: add timer obj c00a58e8! [ 7.528000] RTMP_TimerListAdd: add timer obj c00a58bc! [ 7.540000] RTMP_TimerListAdd: add timer obj c00a5890! [ 7.548000] RTMP_TimerListAdd: add timer obj c004d018! [ 7.560000] RTMP_TimerListAdd: add timer obj c004cc0c! [ 7.572000] RTMP_TimerListAdd: add timer obj c004cfe8! [ 7.580000] RTMP_TimerListAdd: add timer obj c004d324! [ 7.592000] RTMP_TimerListAdd: add timer obj c004d264! [ 7.600000] RTMP_TimerListAdd: add timer obj c004d294! [ 7.612000] RTMP_TimerListAdd: add timer obj c00501e4! [ 7.620000] RTMP_TimerListAdd: add timer obj c004fdd8! [ 7.632000] RTMP_TimerListAdd: add timer obj c00501b4! [ 7.644000] RTMP_TimerListAdd: add timer obj c00504f0! [ 7.652000] RTMP_TimerListAdd: add timer obj c0050430! [ 7.664000] RTMP_TimerListAdd: add timer obj c0050460! [ 7.672000] RTMP_TimerListAdd: add timer obj c00533b0! [ 7.684000] RTMP_TimerListAdd: add timer obj c0052fa4! [ 7.692000] RTMP_TimerListAdd: add timer obj c0053380! [ 7.704000] RTMP_TimerListAdd: add timer obj c00536bc! [ 7.712000] RTMP_TimerListAdd: add timer obj c00535fc! [ 7.724000] RTMP_TimerListAdd: add timer obj c005362c! [ 7.736000] RTMP_TimerListAdd: add timer obj c005657c! [ 7.744000] RTMP_TimerListAdd: add timer obj c0056170! [ 7.756000] RTMP_TimerListAdd: add timer obj c005654c! [ 7.764000] RTMP_TimerListAdd: add timer obj c0056888! [ 7.776000] RTMP_TimerListAdd: add timer obj c00567c8! [ 7.784000] RTMP_TimerListAdd: add timer obj c00567f8! [ 7.796000] RTMP_TimerListAdd: add timer obj c0059748! [ 7.808000] RTMP_TimerListAdd: add timer obj c005933c! [ 7.816000] RTMP_TimerListAdd: add timer obj c0059718! [ 7.828000] RTMP_TimerListAdd: add timer obj c0059a54! [ 7.836000] RTMP_TimerListAdd: add timer obj c0059994! [ 7.848000] RTMP_TimerListAdd: add timer obj c00599c4! [ 7.856000] RTMP_TimerListAdd: add timer obj c005c914! [ 7.868000] RTMP_TimerListAdd: add timer obj c005c508! [ 7.876000] RTMP_TimerListAdd: add timer obj c005c8e4! [ 7.888000] RTMP_TimerListAdd: add timer obj c005cc20! [ 7.900000] RTMP_TimerListAdd: add timer obj c005cb60! [ 7.908000] RTMP_TimerListAdd: add timer obj c005cb90! [ 7.920000] RTMP_TimerListAdd: add timer obj c005fae0! [ 7.928000] RTMP_TimerListAdd: add timer obj c005f6d4! [ 7.940000] RTMP_TimerListAdd: add timer obj c005fab0! [ 7.948000] RTMP_TimerListAdd: add timer obj c005fdec! [ 7.960000] RTMP_TimerListAdd: add timer obj c005fd2c! [ 7.968000] RTMP_TimerListAdd: add timer obj c005fd5c! [ 7.980000] RTMP_TimerListAdd: add timer obj c0062cac! [ 7.992000] RTMP_TimerListAdd: add timer obj c00628a0! [ 8.000000] RTMP_TimerListAdd: add timer obj c0062c7c! [ 8.012000] RTMP_TimerListAdd: add timer obj c0062fb8! [ 8.020000] RTMP_TimerListAdd: add timer obj c0062ef8! [ 8.032000] RTMP_TimerListAdd: add timer obj c0062f28! [ 8.040000] RTMP_TimerListAdd: add timer obj c00a7cf0! [ 8.052000] RTMP_TimerListAdd: add timer obj c00a78e4! [ 8.064000] RTMP_TimerListAdd: add timer obj c00a7cc0! [ 8.072000] RTMP_TimerListAdd: add timer obj c00a7ffc! [ 8.084000] RTMP_TimerListAdd: add timer obj c00a7d20! [ 8.092000] RTMP_TimerListAdd: add timer obj c00a7d50! [ 8.104000] RTMP_TimerListAdd: add timer obj c00a7d80! [ 8.112000] RTMP_TimerListAdd: add timer obj c00ba104! [ 8.124000] RTMP_TimerListAdd: add timer obj c00ba220! [ 8.132000] RTMP_TimerListAdd: add timer obj c00ba130! [ 8.144000] RTMP_TimerListAdd: add timer obj c00a83ac! [ 8.156000] RTMP_TimerListAdd: add timer obj c004a4d8! [ 8.168000] RTMP_TimerListAdd: add timer obj c004d6a4! [ 8.176000] RTMP_TimerListAdd: add timer obj c0050870! [ 8.188000] RTMP_TimerListAdd: add timer obj c0053a3c! [ 8.196000] RTMP_TimerListAdd: add timer obj c0056c08! [ 8.208000] RTMP_TimerListAdd: add timer obj c0059dd4! [ 8.216000] RTMP_TimerListAdd: add timer obj c005cfa0! [ 8.228000] RTMP_TimerListAdd: add timer obj c006016c! [ 8.240000] RTMP_TimerListAdd: add timer obj c00a80bc! [ 8.356000] RT_CfgSetMacAddress : invalid length (0) [ 8.372000] APSDCapable[0]=0 [ 8.380000] APSDCapable[1]=0 [ 8.384000] APSDCapable[2]=0 [ 8.388000] APSDCapable[3]=0 [ 8.396000] APSDCapable[4]=0 [ 8.400000] APSDCapable[5]=0 [ 8.408000] APSDCapable[6]=0 [ 8.412000] APSDCapable[7]=0 [ 8.420000] APSDCapable[8]=0 [ 8.424000] APSDCapable[9]=0 [ 8.428000] APSDCapable[10]=0 [ 8.436000] APSDCapable[11]=0 [ 8.440000] APSDCapable[12]=0 [ 8.448000] APSDCapable[13]=0 [ 8.452000] APSDCapable[14]=0 [ 8.460000] APSDCapable[15]=0 [ 8.464000] default ApCliAPSDCapable[0]=0 [ 8.672000] Key1Str is Invalid key length(0) or Type(1) [ 8.680000] Key2Str is Invalid key length(0) or Type(0) [ 8.692000] Key3Str is Invalid key length(0) or Type(0) [ 8.704000] Key4Str is Invalid key length(0) or Type(0) [ 8.720000] APCli_WPAPSK_KEY, key string required 8 ~ 64 characters!!! [ 8.732000] I/F(apcli0) Key1Str is Invalid key length! [ 8.744000] I/F(apcli0) Key2Str is Invalid key length! [ 8.756000] I/F(apcli0) Key3Str is Invalid key length! [ 8.764000] I/F(apcli0) Key4Str is Invalid key length! [ 8.788000] Wrong OBSSScanParamtetrs format in dat file!!!!! Use default value. [ 8.816000] EntryLifeCheck=1024 [ 8.824000] 1. Phy Mode = 9 [ 8.828000] 2. Phy Mode = 9 [ 8.836000] E2PROM: D0 target power=0xffff [ 8.844000] E2PROM: 40 MW Power Delta= 0 [ 8.852000] 3. Phy Mode = 9 [ 8.856000] AntCfgInit: primary/secondary ant 0/1 [ 8.856000] Initialize RF Central Registers for E2 !!! [ 8.876000] Initialize RF Central Registers for E3 !!! [ 8.888000] Initialize RF Channel Registers for E2 !!! [ 8.900000] Initialize RF Channel Registers for E3 !!! [ 8.908000] Initialize RF DCCal Registers for E2 !!! [ 8.920000] Initialize RF DCCal Registers for E3 !!! [ 8.928000] D1 = -1, D2 = 6, CalCode = 16 !!! [ 8.940000] RT6352_Temperature_Init : BBPR49 = 0xffffffff [ 8.952000] RT6352_Temperature_Init : TemperatureRef25C = 0xfffffff5 [ 8.964000] Current Temperature from BBP_R49=0xffffffee [ 8.976000] TX BW Filter Calibration !!! [ 9.104000] RX BW Filter Calibration !!! [ 9.340000] LOFT Calibration Done! [ 9.348000] IQCalibration Start! [ 9.368000] IQCalibration Done! CH = 0, (gain= 3, phase=3d) [ 9.380000] IQCalibration Start! [ 9.396000] IQCalibration Done! CH = 1, (gain= e, phase= 1) [ 9.408000] TX IQ Calibration Done! [ 9.420000] VGA Code idx overflow(19), AM_63(0) !!! [ 9.432000] VGA Code idx overflow(19), AM_63(0) !!! [ 9.472000] RXIQ Sigma_i=0, Sigma_q=0, R_iq=0 [ 9.480000] RXIQ calibration FAIL [ 9.484000] internal ALC is not enabled in NVM ! [ 9.496000] RTMPSetPhyMode: channel is out of range, use first channel=0 [ 9.508000] MCS Set = ff ff 00 00 01 [ 9.520000] VGA Code idx overflow(19), AM_63(0) !!! [ 9.532000] VGA Code idx overflow(19), AM_63(0) !!! [ 9.572000] SYNC - BBP R4 to 20MHz.l [ 14.024000] ===================================================== [ 14.036000] Channel 1 : Dirty = 0, False CCA = 159, Busy Time = 9287, Skip Channel = FALSE [ 14.052000] Channel 2 : Dirty = 0, False CCA = 5, Busy Time = 2423, Skip Channel = FALSE [ 14.068000] Channel 3 : Dirty = 0, False CCA = 37, Busy Time = 1592, Skip Channel = FALSE [ 14.084000] Channel 4 : Dirty = 0, False CCA = 2636, Busy Time = 51140, Skip Channel = FALSE [ 14.100000] Channel 5 : Dirty = 0, False CCA = 1091, Busy Time = 7211, Skip Channel = FALSE [ 14.116000] Channel 6 : Dirty = 0, False CCA = 627, Busy Time = 24360, Skip Channel = FALSE [ 14.132000] Channel 7 : Dirty = 0, False CCA = 133, Busy Time = 2987, Skip Channel = FALSE [ 14.148000] Channel 8 : Dirty = 0, False CCA = 111, Busy Time = 1696, Skip Channel = FALSE [ 14.168000] Channel 9 : Dirty = 0, False CCA = 3, Busy Time = 4842, Skip Channel = FALSE [ 14.184000] Channel 10 : Dirty = 0, False CCA = 75, Busy Time = 2557, Skip Channel = FALSE [ 14.200000] Channel 11 : Dirty = 0, False CCA = 236, Busy Time = 18448, Skip Channel = FALSE [ 14.216000] ===================================================== [ 14.228000] Rule 2 CCA value : Min False CCA value ==> Select Channel 3, min falsecca = 1629 [ 14.244000] RTMP_TimerListAdd: add timer obj c00b19e0! [ 14.264000] VGA Code idx overflow(19), AM_63(0) !!! [ 14.276000] VGA Code idx overflow(19), AM_63(0) !!! [ 14.316000] Main bssid = 00:1c:c2:20:2b:ac [ 14.324000] <==== rt28xx_init, Status=0 [ 14.336000] 0x1300 = 00064380 ifconfig: SIOCGIFFLAGS: No such device brctl: bridge br0: No such device or address vconfig: ioctl error for rem: No such device vconfig: ioctl error for rem: No such device [ 15.016000] device eth2 entered promiscuous mode restore RT6855 ESW to dump switch mode switch reg write offset=2004, value=ff0000 switch reg write offset=2104, value=ff0000 switch reg write offset=2204, value=ff0000 switch reg write offset=2304, value=ff0000 switch reg write offset=2404, value=ff0000 switch reg write offset=2504, value=ff0000 switch reg write offset=2604, value=ff0000 switch reg write offset=2704, value=ff0000 switch reg write offset=2010, value=810000c0 switch reg write offset=2110, value=810000c0 switch reg write[ 15.224000] device ra0 entered promiscuous mode offset=2210, value=810000c0 switch reg write offset=2310, value=810000c0 switch reg write offset=2410, value=810000c0 switch reg write offset=2510, value=810000c0 switch reg write offset=2610, value=810000c0 switch reg write offset=2710, value=810000c0 REG_ESW_WT_MAC_ATC is 0x7ff0002 done. /sbin/netinit.sh: line 269: addRax2Br0: not found [ 15.404000] br0: port 1(ra0) entering learning state [ 15.412000] br0: port 1(ra0) entering learning state Set: phy[0].reg[0] = 3900 [ 16.412000] br0: port 1(ra0) entering forwarding state Set: phy[4].reg[0] = 3900 Set: phy[0].reg[0] = 3100 Set: phy[4].reg[0] = 3100 udhcpc (v1.12.1) started [ 18.308000] udevd version 125 started /etc/rc.d/rc1.d/S34ntp start [ 18.572000] hao: input argv = 1 /etc/rc.d/rc1.d/S75fileserv start (ntp.c,main,224)/bin/ntpclient -s -c 0 -h 0.asia.pool.ntp.org -i 86400 & (ntp.c,main,236)SYNC:date "+%Y.%m.%d-%H:%M:%S" > /etc/timedate 0.asia.pool.ntp.org: Unknown host /etc/rc.d/rc1.d/S77qos start /etc/rc.d/rc: line 37: /etc/rc.d/rc1.d/S77qos: not found /etc/rc.d/rc1.d/S80webd start /etc/rc.d/rc1.d/S82upnpd start /etc/rc.d/rc1.d/S99local start /usr/sbin/listen_sleep & /etc/rc.d/rc: line 105: /usr/sbin/listen_sleep: not found ddddddddddddd HT-TM05 login: [ 25.184000] enable send the SIGUSR2


[ 0.000000] Linux version 3.18.27 (alzhao@alzhao-ubuntu) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r47065) ) #1 Mon May 30 11:42:22 HKT 2016 [ 0.000000] Board has DDR2 [ 0.000000] Analog PMU set to hw control [ 0.000000] Digital PMU set to hw control [ 0.000000] SoC Type: MediaTek MT7620N ver:2 eco:6 [ 0.000000] bootconsole [early0] enabled [ 0.000000] CPU0 revision is: 00019650 (MIPS 24KEc) [ 0.000000] MIPS: machine is GL-MT300N [ 0.000000] Determined physical RAM map: [ 0.000000] memory: 04000000 @ 00000000 (usable) [ 0.000000] Initrd not found or empty - disabling initrd [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x00000000-0x03ffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x00000000-0x03ffffff] [ 0.000000] Initmem setup node 0 [mem 0x00000000-0x03ffffff] [ 0.000000] On node 0 totalpages: 16384 [ 0.000000] free_area_init_node: node 0, pgdat 80320290, node_mem_map 81000000 [ 0.000000] Normal zone: 128 pages used for memmap [ 0.000000] Normal zone: 0 pages reserved [ 0.000000] Normal zone: 16384 pages, LIFO batch:3 [ 0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes. [ 0.000000] Primary data cache 32kB, 4-way, PIPT, no aliases, linesize 32 bytes [ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 [ 0.000000] pcpu-alloc: [0] 0 [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256 [ 0.000000] Kernel command line: console=ttyS0,115200 rootfstype=squashfs,jffs2 [ 0.000000] PID hash table entries: 256 (order: -2, 1024 bytes) [ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) [ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes) [ 0.000000] Writing ErrCtl register=0007f00b [ 0.000000] Readback ErrCtl register=0007f00b [ 0.000000] Memory: 61240K/65536K available (2633K kernel code, 134K rwdata, 528K rodata, 152K init, 190K bss, 4296K reserved) [ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 [ 0.000000] NR_IRQS:256 [ 0.000000] CPU Clock: 580MHz [ 0.000000] systick: running - mult: 214748, shift: 32 [ 0.010000] Calibrating delay loop... 385.84 BogoMIPS (lpj=1929216) [ 0.070000] pid_max: default: 32768 minimum: 301 [ 0.070000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.080000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.090000] pinctrl core: initialized pinctrl subsystem [ 0.100000] NET: Registered protocol family 16 [ 0.110000] rt2880-pinmux pinctrl: try to register 73 pins ... [ 0.110000] pinctrl core: registered pin 0 (io0) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 1 (io1) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 2 (io2) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 3 (io3) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 4 (io4) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 5 (io5) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 6 (io6) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 7 (io7) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 8 (io8) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 9 (io9) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 10 (io10) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 11 (io11) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 12 (io12) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 13 (io13) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 14 (io14) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 15 (io15) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 16 (io16) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 17 (io17) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 18 (io18) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 19 (io19) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 20 (io20) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 21 (io21) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 22 (io22) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 23 (io23) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 24 (io24) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 25 (io25) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 26 (io26) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 27 (io27) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 28 (io28) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 29 (io29) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 30 (io30) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 31 (io31) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 32 (io32) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 33 (io33) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 34 (io34) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 35 (io35) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 36 (io36) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 37 (io37) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 38 (io38) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 39 (io39) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 40 (io40) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 41 (io41) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 42 (io42) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 43 (io43) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 44 (io44) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 45 (io45) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 46 (io46) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 47 (io47) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 48 (io48) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 49 (io49) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 50 (io50) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 51 (io51) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 52 (io52) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 53 (io53) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 54 (io54) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 55 (io55) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 56 (io56) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 57 (io57) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 58 (io58) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 59 (io59) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 60 (io60) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 61 (io61) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 62 (io62) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 63 (io63) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 64 (io64) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 65 (io65) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 66 (io66) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 67 (io67) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 68 (io68) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 69 (io69) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 70 (io70) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 71 (io71) on rt2880-pinmux [ 0.110000] pinctrl core: registered pin 72 (io72) on rt2880-pinmux [ 0.110000] pinctrl core: add 3 pinmux maps [ 0.110000] rt2880-pinmux pinctrl: found group selector 11 for wled [ 0.110000] rt2880-pinmux pinctrl: found group selector 12 for ephy [ 0.110000] rt2880-pinmux pinctrl: found group selector 0 for i2c [ 0.110000] rt2880-pinmux pinctrl: request pin 72 (io72) for pinctrl [ 0.110000] rt2880-pinmux pinctrl: request pin 40 (io40) for pinctrl [ 0.110000] rt2880-pinmux pinctrl: request pin 41 (io41) for pinctrl [ 0.110000] rt2880-pinmux pinctrl: request pin 42 (io42) for pinctrl [ 0.110000] rt2880-pinmux pinctrl: request pin 43 (io43) for pinctrl [ 0.110000] rt2880-pinmux pinctrl: request pin 44 (io44) for pinctrl [ 0.110000] rt2880-pinmux pinctrl: request pin 1 (io1) for pinctrl [ 0.110000] rt2880-pinmux pinctrl: request pin 2 (io2) for pinctrl [ 0.110000] rt2880-pinmux pinctrl: failed to lookup the sleep state [ 0.120000] rt2880_gpio 10000600.gpio: registering 24 gpios [ 0.130000] rt2880_gpio 10000600.gpio: registering 24 irq handlers [ 0.140000] rt2880_gpio 10000638.gpio: registering 16 gpios [ 0.150000] rt2880_gpio 10000638.gpio: registering 16 irq handlers [ 0.160000] rt2880_gpio 10000660.gpio: registering 32 gpios [ 0.170000] rt2880_gpio 10000660.gpio: registering 32 irq handlers [ 0.180000] rt2880_gpio 10000688.gpio: registering 1 gpios [ 0.190000] rt2880_gpio 10000688.gpio: registering 1 irq handlers [ 0.200000] Switched to clocksource systick [ 0.210000] NET: Registered protocol family 2 [ 0.210000] TCP established hash table entries: 1024 (order: 0, 4096 bytes) [ 0.230000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes) [ 0.240000] TCP: Hash tables configured (established 1024 bind 1024) [ 0.250000] TCP: reno registered [ 0.260000] UDP hash table entries: 256 (order: 0, 4096 bytes) [ 0.270000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes) [ 0.280000] NET: Registered protocol family 1 [ 0.290000] PCI: CLS 0 bytes, default 32 [ 0.290000] rt-timer 10000100.timer: maximum frequency is 2441Hz [ 0.310000] alarmtimer alarmtimer: no of_node; not parsing pinctrl DT [ 0.310000] futex hash table entries: 256 (order: -1, 3072 bytes) [ 0.340000] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 0.350000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) © 2001-2006 Red Hat, Inc. [ 0.380000] msgmni has been set to 119 [ 0.380000] io scheduler noop registered [ 0.390000] io scheduler deadline registered (default) [ 0.400000] ralink-usb-phy usbphy: invalid resource [ 0.410000] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled [ 0.430000] serial8250 serial8250: no of_node; not parsing pinctrl DT [ 0.430000] pinctrl core: add 1 pinmux maps [ 0.430000] rt2880-pinmux pinctrl: found group selector 3 for uartlite [ 0.430000] rt2880-pinmux pinctrl: request pin 15 (io15) for 10000c00.uartlite [ 0.430000] rt2880-pinmux pinctrl: request pin 16 (io16) for 10000c00.uartlite [ 0.430000] console [ttyS0] disabled [ 0.430000] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20, base_baud = 2500000) is a 16550A [ 0.450000] console [ttyS0] enabled [ 0.460000] bootconsole [early0] disabled [ 0.470000] pinctrl core: add 1 pinmux maps [ 0.470000] rt2880-pinmux pinctrl: found group selector 2 for spi [ 0.470000] rt2880-pinmux pinctrl: request pin 3 (io3) for 10000b00.spi [ 0.470000] rt2880-pinmux pinctrl: request pin 4 (io4) for 10000b00.spi [ 0.470000] rt2880-pinmux pinctrl: request pin 5 (io5) for 10000b00.spi [ 0.470000] rt2880-pinmux pinctrl: request pin 6 (io6) for 10000b00.spi [ 0.480000] m25p80 spi32766.0: found mx25l6405d, expected w25q128 [ 0.480000] m25p80 spi32766.0: mx25l6405d (8192 Kbytes) [ 0.490000] 5 ofpart partitions found on MTD device spi32766.0 [ 0.490000] Creating 5 MTD partitions on “spi32766.0”: [ 0.500000] 0x000000000000-0x000000030000 : “u-boot” [ 0.500000] 0x000000030000-0x000000040000 : “u-boot-env” [ 0.510000] 0x000000040000-0x000000050000 : “factory” [ 0.520000] 0x000000050000-0x000000fd0000 : “firmware” [ 0.520000] mtd: partition “firmware” extends beyond the end of device “spi32766.0” -- size truncated to 0x7b0000 [ 0.590000] 2 uimage-fw partitions found on MTD device firmware [ 0.600000] 0x000000050000-0x000000170f6e : “kernel” [ 0.610000] 0x000000170f6e-0x000000800000 : “rootfs” [ 0.610000] mtd: device 5 (rootfs) set to be root filesystem [ 0.620000] 1 squashfs-split partitions found on MTD device rootfs [ 0.620000] 0x0000003c0000-0x000000800000 : “rootfs_data” [ 0.630000] 0x000000ff0000-0x000001000000 : “art” [ 0.640000] mtd: partition “art” is out of reach -- disabled [ 0.640000] ralink_soc_eth 10100000.ethernet: generated random MAC address 92:5a:ec:09:22:a9 [ 0.650000] ralink_soc_eth 10100000.ethernet: loaded mt7620 driver [ 0.660000] ralink_soc_eth 10100000.ethernet eth0: ralink at 0xb0100000, irq 5 [ 0.670000] rt2880_wdt 10000120.watchdog: Initialized [ 0.670000] TCP: cubic registered [ 0.680000] NET: Registered protocol family 17 [ 0.680000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this. [ 0.700000] Bridge firewalling registered [ 0.700000] 8021q: 802.1Q VLAN Support v1.8 [ 0.720000] VFS: Mounted root (squashfs filesystem) readonly on device 31:5. [ 0.730000] Freeing unused kernel memory: 152K (8033a000 - 80360000) [ 3.330000] init: Console is alive [ 3.330000] init: - watchdog - [ 6.030000] usbcore: registered new interface driver usbfs [ 6.040000] usbcore: registered new interface driver hub [ 6.040000] usbcore: registered new device driver usb [ 6.050000] rt2880-pinmux pinctrl: request pin 1 (io1) for pio:1 [ 6.050000] rt2880-pinmux pinctrl: request pin 42 (io42) for pio:42 [ 6.050000] rt2880-pinmux pinctrl: request pin 43 (io43) for pio:43 [ 6.050000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 6.060000] ehci-platform: EHCI generic platform driver [ 6.080000] phy phy-usbphy.0: remote usb device wakeup disabled [ 6.080000] phy phy-usbphy.0: UTMI 16bit 30MHz [ 6.090000] ehci-platform 101c0000.ehci: EHCI Host Controller [ 6.090000] ehci-platform 101c0000.ehci: new USB bus registered, assigned bus number 1 [ 6.100000] ehci-platform 101c0000.ehci: irq 26, io mem 0x101c0000 [ 6.130000] ehci-platform 101c0000.ehci: USB 2.0 started, EHCI 1.00 [ 6.130000] usb usb1: no of_node; not parsing pinctrl DT [ 6.130000] hub 1-0:1.0: no of_node; not parsing pinctrl DT [ 6.130000] hub 1-0:1.0: USB hub found [ 6.140000] hub 1-0:1.0: 1 port detected [ 6.140000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 6.150000] ohci-platform: OHCI generic platform driver [ 6.160000] ohci-platform 101c1000.ohci: Generic Platform OHCI controller [ 6.160000] ohci-platform 101c1000.ohci: new USB bus registered, assigned bus number 2 [ 6.170000] ohci-platform 101c1000.ohci: irq 26, io mem 0x101c1000 [ 6.240000] usb usb2: no of_node; not parsing pinctrl DT [ 6.240000] hub 2-0:1.0: no of_node; not parsing pinctrl DT [ 6.240000] hub 2-0:1.0: USB hub found [ 6.240000] hub 2-0:1.0: 1 port detected [ 6.260000] rt2880-pinmux pinctrl: request pin 40 (io40) for pio:40 [ 6.260000] rt2880-pinmux pinctrl: request pin 41 (io41) for pio:41 [ 6.260000] rt2880-pinmux pinctrl: request pin 72 (io72) for pio:72 [ 6.340000] init: - preinit - [ 6.990000] 8021q: adding VLAN 0 to HW filter on device eth0 [ 7.040000] random: mktemp urandom read with 11 bits of entropy available [ 10.350000] jffs2: notice: (328) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found. [ 10.370000] mount_root: switching to jffs2 overlay [ 10.410000] procd: - early - [ 10.410000] procd: - watchdog - [ 11.250000] procd: - ubus - [ 12.270000] procd: - init - [ 13.020000] NET: Registered protocol family 10 [ 13.040000] ip6_tables: (C) 2000-2006 Netfilter Core Team [ 13.050000] Loading modules backported from Linux version v4.4-rc5-1913-gc8fdf68 [ 13.060000] Backport generated by backports.git backports-20151218-0-g2f58d9d [ 13.150000] ip_tables: (C) 2000-2006 Netfilter Core Team [ 13.170000] nf_conntrack version 0.5.0 (959 buckets, 3836 max) [ 13.220000] xt_time: kernel timezone is -0000 [ 13.240000] PPP generic driver version 2.4.2 [ 13.250000] NET: Registered protocol family 24 [ 13.270000] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 5390, rev 0500 detected [ 13.280000] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 7620 detected [ 13.290000] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht' [ 19.220000] 8021q: adding VLAN 0 to HW filter on device eth0 [ 19.240000] device eth0.1 entered promiscuous mode [ 19.240000] device eth0 entered promiscuous mode [ 19.250000] br-lan: port 1(eth0.1) entered forwarding state [ 19.260000] br-lan: port 1(eth0.1) entered forwarding state [ 21.260000] br-lan: port 1(eth0.1) entered forwarding state [ 80.210000] random: nonblocking pool is initialized [92877.950000] br-lan: port 1(eth0.1) entered disabled state [93449.530000] br-lan: port 1(eth0.1) entered forwarding state [93449.540000] br-lan: port 1(eth0.1) entered forwarding state [93451.540000] br-lan: port 1(eth0.1) entered forwarding state [93481.510000] br-lan: port 1(eth0.1) entered disabled state [93507.070000] br-lan: port 1(eth0.1) entered forwarding state [93507.080000] br-lan: port 1(eth0.1) entered forwarding state [93509.080000] br-lan: port 1(eth0.1) entered forwarding state [93753.370000] br-lan: port 1(eth0.1) entered disabled state [93753.380000] device eth0.1 left promiscuous mode [93753.380000] br-lan: port 1(eth0.1) entered disabled state [93753.390000] IPv6: ADDRCONF(NETDEV_UP): eth0.1: link is not ready [93753.400000] device eth0.1 entered promiscuous mode [93753.450000] br-lan: port 1(eth0.1) entered forwarding state [93753.450000] br-lan: port 1(eth0.1) entered forwarding state [93755.450000] br-lan: port 1(eth0.1) entered forwarding state [93769.920000] br-lan: port 1(eth0.1) entered disabled state [93812.950000] br-lan: port 1(eth0.1) entered forwarding state [93812.960000] br-lan: port 1(eth0.1) entered forwarding state [93814.960000] br-lan: port 1(eth0.1) entered forwarding state


Warning!
This section describes actions that might damage your device or firmware. Proceed with care!

From this forum post about the HT-TM06; works on the HT-TM05 as well.

WARNING: We haven't found a way to revert back to HooToo's stock firmware yet! If you follow this process, it's permanent! In order to revert back, you will have to send it in for service. Although HooToo Support has been very gracious with a few people about this, this will void your warranty and HooToo will have no responsibility to replace it.

WARNING: (July 2020) The latest builds use a two step lzma loader process, to get around the 1.5 MB kernel limit on this device. However, one of the consequences of this is that modifying U-Boot variables will cause an error in the rootfs (as U-Boot will overwrite a portion of this partition). The device can be recovered, by re-flashing via the process below, using the factory.bin image.


Latest Firmware (21.02.0-22.03.0) (October 2022)

Now that there is a release specific for the HT-TM05, this is the method for installing:

  1. Download KERNEL-SQUASHFS and ROOTFS from here Link.
  2. Rename the KERNEL-SQUASHFS file to kernel (no extension)
  3. Rename the ROOTFS file to rootfs (no extension)
  4. Place kernel and rootfs files in the root folder of the TFPT folder. For best results on Windows, use tftp64.
  5. Connect HT-TM05 to computer via ethernet cable.
  6. Set computer IP to 10.10.10.254 subnet 255.255.255.0
  7. Start the TFTP server. (If using Tftpd64, click Show Dir to make sure kernel/rootfs are shown. Then go to log viewer to see output from the process)
  8. With your TM-HT05 turned off, hold the power button until you see lights then immediately release the power button and hold the reset button.
  9. Continue holding reset until the files start transferring from the TFTP server.
  10. The TM-HT05 will grab the kernel file and then the rootfs file and start flashing them. This takes some time 2-3 mins.
  11. After the TM-HT05 installs OpenWRT, it will reboot on it's own and when ready the indicator light will turn green.
  12. Change your computer's IP back to Automatic IP Assignment/DHCP. (If that does not work, you can assign it 192.168.1.20, subnet 255.255.255.0)
  13. OpenWRT defaults to 192.168.1.1, go to this address in your browser to access OpenWRT/Luci

Notes:

  • If using the serial connection from the PCB, the baudrate is now 57600
  • After this you will be able to update the firmware from the Luci/OpenWRT update page using the SYSUPGRADE file when the next OpenWRT firmware becomes available

Chaos Calmer 15 Method Make sure you read through the entire list of steps before beginning. Video instructions are also available here: External Link

  1. Download this OpenWrt firmware: Link
  2. Place it in the root of a clean TFTP server running on your computer.
  3. Rename the image to kernel — be sure there is no file extension, and that there are no other files on the TFTP server.
  4. Plug the HT-TM05 into your computer via ethernet.
  5. Set your computer to use 10.10.10.254 as its IP address.
  6. With your HT-TM05 shut down, hold down the power button until the first white LED lights up.
  7. Push and hold the reset button and release the power button. Continue holding the reset button for 30 seconds or until it begins searching for files on your TFTP server, whichever comes first.
  8. The HT-TM05 will look for your computer at 10.10.10.254 and install the kernel file. Once it has finished installation of the kernel file, it will search for a (nonexistent) rootfs file — when it begins searching for this file, shut down the HT-TM05 by holding the power button normally.
  9. Start up your HT-TM05 normally. When the Wi-Fi indicator turns green, OpenWrt has booted successfully.

OpenWrt uses 192.168.1.1 as the default router IP address, so you will need to switch your computer back to a dynamic IP address, or change your static IP address to 192.168.1.X to configure OpenWrt.

This can be done using travelmate addon or manually with the instructions below.

To setup the TM-HT05 to use as a wireless repeater (like the tripmate firmware worked) follow these instructions:

  1. Go into Network→Wireless and press Scan on radio0
  2. Select join on the Wifi you want to share
  3. Check the box that says Replace Wireless Configuration
  4. Make sure Name of new network is wwan as well as the firewall-zone
  5. Save/Apply
  6. Once connected to the wifi, select Add in the radio0 row
  7. Towards the bottom on the General Setup tab make sure mode is Access Point
  8. Type the name you want for your wifi in ESSID
  9. Make sure the Network is lan
  10. You can add a passphrase in the Wireless Security tab
  11. Save then Save/Apply

Warning!
This section describes actions that might damage your device or firmware. Proceed with care!

WARNING! This method involves opening the TM-HT05 and unsoldering the flash chip!

  1. Disassembly instructions can be found on the original forum page here Post #18
  2. The 8 pin flash chip below the index finger in this image
  3. Unsolder chip from board. Take care to remember the chip orientation! Pin1 is marked with a faint circle on the top of the chip (This chip is a MX25L6406E which can be bought if a new one is needed)
  4. Use a CH341A Programmer with a SOIC8 adapter socket (Such as this kit)
  5. Place the chip in the socket adapter, making sure pin 1 of the chip is in the correct orientation
  6. The socket adapter goes on the 25xx side of the latch on the CH341A Programmer (There are markings on the board showing the placement)
  7. Install the CH341A drivers from here
  8. Plug CH341A Programmer into computer
  9. Open AsProgrammer, found here
  10. In the IC menu choose SPI→MACRONIX→MX25L6406E
  11. Press the Read button to check if you are able to read from the chip
  12. Open the original tripmate firmware file using the Open button, file found here
  13. Press the arrow down next to the Program IC button and select the Unprotect→erase→program→verify button
  14. The chip will start being flashed. This takes some time, around 10-15mins
  15. If no errors, your chip is flashed
  16. The chip can now be soldered back onto the device and will have the original tripmate firmware
This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2024/02/12 08:58
  • by 127.0.0.1