OpenWrt Forum Archive

Topic: Logitech Harmony Hub

The content of this topic has been archived on 22 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Inside the Logitech Harmony Ultimate Hub:

SoC: AR9331  (802.11n 150Mbit WLAN)
Memory: 32MB DDR (EtronTech EM6AA160)
Flash: 16MB SPI flash (MX25Lsomething)
Additional peripherals:
6 infrared transmitting LEDs
1 infrared receiver.
2 additional radios:
TI CC2544 (2.4GHz custom protocol)
CSR8811 (Tiny bluetooth chip)

Partial serial bootlog (J2 pad 4 is TXD, RXD TBD, likely pad 6).

DRAM:  32 MB
Top of RAM usable for U-Boot at: 82000000
Reserving 137k for U-Boot at: 81fdc000
Reserving 192k for malloc() at: 81fac000
Reserving 44 Bytes for Board Info at: 81fabfd4
Reserving 36 Bytes for Global Data at: 81fabfb0
Reserving 128k for boot params() at: 81f8bfb0
Stack Pointer at: 81f8bf98
Now running in RAM - U-Boot at: 81fdc000
id read 0x100000ff
flash size 16777216, sector count = 256
Flash: 16 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   ag7240_enet_initialize...
No valid address in Flash. Using fixed address
Fetching MAC Address from 0x81ff36b8
: cfg1 0x5 cfg2 0x7114
eth0: re:da:ct:ed:fo:oo
eth0 up
EIM<C9>6: resetting s26
ATHRS26: s26 reset done
eth1 up
eth0, eth1
Hit any key to stop autoboot:  0 
## Booting image at 9f010000 ...
   Image Name:   Pimento Kernel Image
   Created:      2013-04-26   4:10:42 UTC
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    980444 Bytes = 957.5 kB
   Load Address: 80002000
   Entry Point:  801dd200
   Verifying Checksum at 0x9f010040 ...

(Last edited by moroboshi on 4 Jan 2014, 20:13)

After connecting a proper serial adapter, a better boot log:

U-Boot 1.1.4-g4fe3722 (Apr 26 2013 - 00:14:18)

AP121 (ar9331) U-boot

DRAM:  32 MB
Top of RAM usable for U-Boot at: 82000000
Reserving 137k for U-Boot at: 81fdc000
Reserving 192k for malloc() at: 81fac000
Reserving 44 Bytes for Board Info at: 81fabfd4
Reserving 36 Bytes for Global Data at: 81fabfb0
Reserving 128k for boot params() at: 81f8bfb0
Stack Pointer at: 81f8bf98
Now running in RAM - U-Boot at: 81fdc000
id read 0x100000ff
flash size 16777216, sector count = 256
Flash: 16 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   ag7240_enet_initialize...
No valid address in Flash. Using fixed address
Fetching MAC Address from 0x81ff36b8
: cfg1 0x5 cfg2 0x7114
eth0: 00:03:7f:09:0b:ad
eth0 up
: cfg1 0xf cfg2 0x7214
eth1: 00:00:b6:ff:79:51
athrs26_reg_init_lan
ATHRS26: resetting s26
ATHRS26: s26 reset done
eth1 up
eth0, eth1
Hit any key to stop autoboot:  0
ar7240>printenv
bootargs=console=none init=/sbin/init
bootcmd=bootm 0x9f010000 ; bootm 0x9f100000
bootdelay=0
baudrate=115200
ethaddr=0x00:0xaa:0xbb:0xcc:0xdd:0xee
ipaddr=192.168.1.2
serverip=192.168.1.10
stdin=serial
stdout=serial
stderr=serial
ethact=eth0

Environment size: 242/65532 bytes
ar7240> setenv bootargs "console=ttyS0,115200 init=/sbin/init"
ar7240> bootm 0x9f010000 ; bootm 0x9f100000
## Booting image at 9f010000 ...
   Image Name:   Pimento Kernel Image
   Created:      2013-04-26   4:10:42 UTC
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    980444 Bytes = 957.5 kB
   Load Address: 80002000
   Entry Point:  801dd200
   Verifying Checksum at 0x9f010040 ...OK
   Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 801dd200) ...
## Giving linux memsize in bytes, 33554432

Starting kernel ...

Booting AR9330(Hornet)...
Linux version 2.6.31-g797da55 (parabuild@vdc01b01ubuntu11) (gcc version 4.5.0 20100729 (prerelease) (GCC) ) #1 Fri Apr 26 00:10:15 EDT 2013
flash_size passed from bootloader = 16
CPU revision is: 00019374 (MIPS 24Kc)
Determined physical RAM map:
 memory: 02000000 @ 00000000 (usable)
User-defined physical RAM map:
 memory: 02000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
  Normal   0x00000000 -> 0x00002000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00002000
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
Kernel command line: console=ttyS0,115200 init=/sbin/init mem=32M mtdparts=ar7240-nor0:64k(u-boot),960k(kernel),960k(kernel2),4096k(root),5120k(data),5120k(cache),64k(mfg)
PID hash table entries: 128 (order: 7, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
Writing ErrCtl register=00000000
Readback ErrCtl register=00000000
Memory: 29708k/32768k available (1913k kernel code, 3060k reserved, 543k data, 232k init, 0k highmem)
NR_IRQS:128
plat_time_init: plat time init done
Calibrating delay loop... 266.24 BogoMIPS (lpj=532480)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
===== ar7240_platform_init: 0
******* USBDCP 1
bio: create slab <bio-0> at 0
SCSI subsystem initialized
Bluetooth: Core ver 2.16
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
Bluetooth: L2CAP socket layer initialized
Bluetooth: SCO socket layer initialized
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
NET: Registered protocol family 1
AR7240 GPIOC major 0
squashfs: version 4.0 (2009/01/31) Phillip Lougher
Registering unionfs 2.5.9.2 (for 2.6.31.14)
JFFS2 version 2.2 (NAND) (ZLIB) (RTIME) (c) 2001-2006 Red Hat, Inc.
msgmni has been set to 58
alg: No test for lzma (lzma-generic)
alg: No test for stdrng (krng)
io scheduler noop registered (default)
Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
ttyS0: detected caps 00000000 should be 00000100
serial8250.0: ttyS0 at MMIO 0xb8020000 (irq = 19) is a 16550A
console [ttyS0] enabled
brd: module loaded
input: Pimento as /devices/virtual/input/input0
7 cmdlinepart partitions found on MTD device ar7240-nor0
Creating 7 MTD partitions on "ar7240-nor0":
0x000000000000-0x000000010000 : "u-boot"
0x000000010000-0x000000100000 : "kernel"
0x000000100000-0x0000001f0000 : "kernel2"
0x0000001f0000-0x0000005f0000 : "root"
0x0000005f0000-0x000000af0000 : "data"
0x000000af0000-0x000000ff0000 : "cache"
0x000000ff0000-0x000001000000 : "mfg"
Bluetooth: HCI UART driver ver 2.2
Bluetooth: HCI BCSP protocol initialized
TCP cubic registered
NET: Registered protocol family 17
Bluetooth: RFCOMM socket layer initialized
Bluetooth: RFCOMM ver 1.11
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
Freeing unused kernel memory: 232k freed
init started: BusyBox v1.13.4 (2013-04-26 00:13:03 EDT)
starting pid 22, tty '': '/etc/init.d/rcS'
mount: mounting rootfs on / failed: No such file or directory
mount: mounting tmpfs on /media/ram failed: No such file or directory
Loading module athrs_gmac
ATHR_GMAC: Length per segment 1536
ATHR_GMAC: fifo cfg 3 01f00140
ATHR_GMAC: Mac address for unit 0:bf7f0000
ATHR_GMAC: 19:85:20:03:00:00 
ATHR_GMAC: Max segments per packet :   1
ATHR_GMAC: Max tx descriptor count :   40
ATHR_GMAC: Max rx descriptor count :   252
ATHR_GMAC: Mac capability flags    :   4401
ATHR_GMAC: Mac address for unit 1:bf7f0006
ATHR_GMAC: 00:0c:f0:60:dc:98 
ATHR_GMAC: Max segments per packet :   1
ATHR_GMAC: Max tx descriptor count :   40
ATHR_GMAC: Max rx descriptor count :   96
ATHR_GMAC: Mac capability flags    :   4D81
Loading module ath_i2s
Loading module cc2544
cc2544 chipid 0x4411
Loading module kernel/drivers/usb/gadget/ath_udc
ath_usb_init: id: 111
queue head a1e07000 1e07000 Allocated
Loading module kernel/drivers/usb/gadget/gadgetfs
gadgetfs: USB Gadget filesystem, version 24 Aug 2004
Loading module asf
athr_gmac_ring_alloc Allocated 640 at 0x81e05400
athr_gmac_ring_alloc Allocated 1536 at 0x81c55000
Setting Drop CRC Errors, Pause Frames and Length Error frames 
ATHRS26: resetting s26
ATHRS26: s26 reset done
Setting PHY...
asf: module license 'Proprietary' taints kernel.
Disabling lock debugging due to kernel taint
Loading module adf
Loading module ath_hal
ath_hal: 0.9.17.1 (AR9380, REGOPS_FUNC, WRITE_EEPROM, 11D)
Loading module ath_rate_atheros
ath_rate_atheros: Copyright (c) 2001-2005 Atheros Communications, Inc, All Rights Reserved
Loading module ath_dev
ath_dev: Copyright (c) 2001-2007 Atheros Communications, Inc, All Rights Reserved
Loading module umac
ath_ahb: 9.2.0_U10.5.13 (Atheros/multi-bss)
__ath_attach: Set global_scn[0]
ACBKMinfree = 48
ACBEMinfree = 32
ACVIMinfree = 16
ACVOMinfree = 0
CABMinfree = 48
UAPSDMinfree = 0
Restoring Cal data from Flash
ath_get_caps[5123] rx chainmask mismatch actual 1 sc_chainmak 0
ath_get_caps[5098] tx chainmask mismatch actual 1 sc_chainmak 0
wifi0: Atheros 9380: mem=0xb8100000, irq=2
wlan_vap_create : enter. devhandle=0x814642c0, opmode=IEEE80211_M_STA, flags=0x1
wlan_vap_create : exit. devhandle=0x814642c0, opmode=IEEE80211_M_STA, flags=0x1.
VAP device ath0 created 
ath0
 ieee80211_ioctl_siwmode: imr.ifm_active=131200, new mode=2, valid=1 
udhcpc (v1.13.4) started
Sending discover...
unionfs: new lower inode mtime (bindex=1, name=ttyS0)
Loading PSKEY_RX_MR_SAMP_CONFIG ... done
Loading 0x212c ... done
Loading 0x212d ... done
Loading 0x212e ... done
Loading 0x212f ... done
Loading 0x2130 ... done
Loading 0x2131 ... done
Loading 0x2139 ... done
Loading 0x213a ... done
Loading 0x213b ... done
Loading 0x2200 ... done
Loading PSKEY_ANA_FREQ ... done
Loading PSKEY_HOST_INTERFACE ... done
Loading 0x01ea ... done
Loading 0x2578 ... done
Loading PSKEY_CLOCK_REQUEST_ENABLE ... done
Loading PSKEY_LC_DEFAULT_TX_POWER ... done
Loading PSKEY_LC_MAX_TX_POWER ... done
Loading PSKEY_ANA_FTRIM ... done
Loading PSKEY_BDADDR ... done
unionfs: new lower inode mtime (bindex=1, name=ttyS0)
Bluetooth: Out-of-order packet arrived, got 1 expected 0

Great stuff!

Are you able to clarify which pads of J2 correspond to which UART pins? I have also identified uart_sout as p4 but the others are taking some time.


Cheers!

spegoraro wrote:

Great stuff!

Are you able to clarify which pads of J2 correspond to which UART pins? I have also identified uart_sout as p4 but the others are taking some time.


Cheers!

I'm using pads 2 (rx), 4 (tx) and 8 (gnd) on J2:

2 4 6 8 10

1 3 5 7 9

Pad 6 is 5V, could be used as power for the usb converter, but mine is bus-powered, 3.3v nominal but 5v tolerant.
Presumably it's 3.3V logic levels, but I haven't checked yet.

1/3 and 7/9 are ethernet tx/rx pairs.
5 is ethernet 2.1V reference voltage for the magnetics.
I think you just need to add the magnetics bits and a plug and should be good to go, but didn't try yet.

(Last edited by moroboshi on 4 Jan 2014, 20:07)

/ # cat /proc/mounts 
rootfs / rootfs rw 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
/dev/mtdblock5 /cache jffs2 rw,relatime 0 0
/dev/mtdblock3 /mnt/root squashfs ro,relatime 0 0
/dev/mtdblock4 /mnt/data jffs2 rw,relatime 0 0
none / unionfs rw,relatime,dirs=/mnt/data=rw:/mnt/root=ro 0 0
/ # cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 00010000 00010000 "u-boot"
mtd1: 000f0000 00010000 "kernel"
mtd2: 000f0000 00010000 "kernel2"
mtd3: 00400000 00010000 "root"
mtd4: 00500000 00010000 "data"
mtd5: 00500000 00010000 "cache"
mtd6: 00010000 00010000 "mfg"

/etc/issue: Yocto Linux (Built by Poky 4.0) 0.9 \n \l
/etc/version: 3.1.78

Main initscript /etc/init.d/rcS:

#!/bin/sh

# initialize the system
mount -a

# set hostname
hostname -F /etc/hostname

# populate volatile
for dir in cache lock log run tmp watchdog dbus; do
    if [ ! -d /var/volatile/$dir ]; then
    mkdir /var/volatile/$dir
    fi
done

# logging
/sbin/syslogd -C256
/sbin/klogd

# load kernel modules
load_modules () {
    libmodules=/lib/modules/$(uname -r)
    (cat $1; echo; ) |
    while read module args
    do
            case "$module" in
            \#*|"") continue ;;
        esac
        echo "Loading module $module"
        /sbin/insmod $libmodules/${module}.ko $args
    done
}

if [ -e /etc/modules ]; then
    load_modules /etc/modules
fi

# bring up loopback interface
ifup lo

# product specific configuration
if [ -x /etc/init.d/rcS.local ]; then
    source /etc/init.d/rcS.local
fi

# ssh (dropbear for development)
if [ -r /etc/tdeenable -a -x /usr/sbin/dropbear ]; then
    if [ ! -r /etc/dropbear/dropbear_rsa_host_key ]; then
    /usr/sbin/dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key
    fi

    /usr/sbin/dropbear
fi

# following processes include crash reporting
export LD_PRELOAD=/lib/libcrashlog.so

# Watchdog
if [ -x /usr/bin/watchdog -a ! -e /etc/nowatchdog ]; then
    /usr/bin/watchdog
fi

# DBUS
if [ -x /usr/bin/dbus-daemon ]; then
    mkdir /var/run/dbus
    /usr/bin/dbus-uuidgen --ensure
    /usr/bin/dbus-daemon --system
fi

# Bluetooth
if [ -e /sys/class/bluetooth/hci0 ]; then
    /usr/sbin/hciconfig hci0 up
    # enable simple secure pairing
    /usr/sbin/hciconfig hci0 sspmode 1
    # enable extended features
    /usr/bin/hcitool -i hci0 cmd 0x03 0x0056 1
    /usr/bin/hcitool -i hci0 cmd 0x03 0x006D 1 1
    /usr/bin/hcitool -i hci0 cmd 0x04 0x0004 1
    /usr/sbin/bluetoothd
    /bin/sleep 1
fi

# HAL
if [ "$DEMO_MODE" != 1 -a -x /usr/bin/hal ]; then
    /usr/bin/hal -f -s
fi

# bring up other networks (in background)
ifup -a &

# usbhid
if [ -x /usr/bin/usbhid ]; then
    /usr/bin/usbhid -s &
fi

# luaworks (share common /data folder)
if [ -x /opt/luaworks/luaworks ]; then
    (cd /opt/luaworks && ./luaworks --syslog --datadir=/data &)
fi

# luadraws (share common /data folder)
if [ -x /opt/luadraws/luadraws ]; then
    (cd /opt/luadraws && ./luadraws --syslog --datadir=/data &)
fi

# remove ota.zip
if [ -e /cache/ota-update-complete.zip ]; then
    echo "Remove ota image"
    rm /cache/ota-update-complete.zip
fi

# TODO
# - ldconfig (refresh cache if needed)
# - urandom state

Unionfs contents:

.
./opt
./opt/lib
./opt/lib/luaworks.so.0
./opt/lib/luaworks.so.0.0.0
./opt/lib/luaworks.so
./opt/luaworks
./opt/luaworks/main.lua
./opt/luaworks/luaworks
./opt/luaworks/works
./opt/luaworks/works/sandbox.lua
./opt/luaworks/works/log.lua
./opt/luaworks/works/io.lua
./opt/luaworks/works/table.lua
./opt/luaworks/works/runtests.lua
./opt/luaworks/works/dumper.lua
./opt/luaworks/works/system.lua
./opt/luaworks/works/socket.lua
./opt/luaworks/works/base.lua
./opt/luaworks/works/ssl.lua
./opt/luaworks/works/simple.lua
./opt/luaworks/works/lunit-console.lua
./opt/luaworks/works/lunit.lua
./opt/luaworks/works/ObjectCache.lua
./opt/luaworks/tasks
./opt/luaworks/tasks/harmonywebservices
./opt/luaworks/tasks/harmonywebservices/core
./opt/luaworks/tasks/harmonywebservices/core/session.lua
./opt/luaworks/tasks/harmonywebservices/core/resourcemanager.lua
./opt/luaworks/tasks/harmonywebservices/core/statedigest.lua
./opt/luaworks/tasks/harmonywebservices/core/common.lua
./opt/luaworks/tasks/harmonywebservices/core/preferencemanager.lua
./opt/luaworks/tasks/harmonywebservices/main.lua
./opt/luaworks/tasks/harmonywebservices/apihandler
./opt/luaworks/tasks/harmonywebservices/apihandler/proxy.lua
./opt/luaworks/tasks/harmonywebservices/apihandler/response.lua
./opt/luaworks/tasks/harmonywebservices/apihandler/resource.lua
./opt/luaworks/tasks/harmonywebservices/apihandler/request.lua
./opt/luaworks/tasks/harmonywebservices/apilistener.lua
./opt/luaworks/tasks/harmonywebservices/proxy
./opt/luaworks/tasks/harmonywebservices/proxy/softwareupdate.lua
./opt/luaworks/tasks/harmonywebservices/proxy/accountmanager.lua
./opt/luaworks/tasks/harmonywebservices/proxy/sync.lua
./opt/luaworks/tasks/harmonywebservices/proxy/discovery.lua
./opt/luaworks/tasks/mfg
./opt/luaworks/tasks/mfg/core
./opt/luaworks/tasks/mfg/core/mfgdata.lua
./opt/luaworks/tasks/mfg/main.lua
./opt/luaworks/tasks/mfg/data
./opt/luaworks/tasks/mfg/data/pimento-20111201145455-000000.mfg
./opt/luaworks/tasks/crashlog
./opt/luaworks/tasks/crashlog/main.lua
./opt/luaworks/tasks/harmonyengine
./opt/luaworks/tasks/harmonyengine/core
./opt/luaworks/tasks/harmonyengine/core/irmanager2.lua
./opt/luaworks/tasks/harmonyengine/core/irsender.lua
./opt/luaworks/tasks/harmonyengine/core/utility.lua
./opt/luaworks/tasks/harmonyengine/core/irmanager.lua
./opt/luaworks/tasks/harmonyengine/core/backwardcompatibility.lua
./opt/luaworks/tasks/harmonyengine/core/bthidmanager.lua
./opt/luaworks/tasks/harmonyengine/main.lua
./opt/luaworks/tasks/harmonyengine/apihandler
./opt/luaworks/tasks/harmonyengine/apihandler/hue.lua
./opt/luaworks/tasks/harmonyengine/apihandler/harmonyengine.lua
./opt/luaworks/tasks/harmonyengine/apihandler/device.lua
./opt/luaworks/tasks/harmonyengine/apihandler/manualsync.lua
./opt/luaworks/tasks/harmonyengine/apihandler/button.lua
./opt/luaworks/tasks/harmonyengine/apihandler/config.lua
./opt/luaworks/tasks/harmonyengine/apihandler/activity.lua
./opt/luaworks/tasks/harmonyengine/loader
./opt/luaworks/tasks/harmonyengine/loader/userconfigreader.lua
./opt/luaworks/tasks/harmonyengine/apilistener.lua
./opt/luaworks/tasks/harmonyengine/model
./opt/luaworks/tasks/harmonyengine/model/state.lua
./opt/luaworks/tasks/harmonyengine/model/action.lua
./opt/luaworks/tasks/harmonyengine/model/buttonmap.lua
./opt/luaworks/tasks/harmonyengine/model/account.lua
./opt/luaworks/tasks/harmonyengine/model/command.lua
./opt/luaworks/tasks/harmonyengine/model/device.lua
./opt/luaworks/tasks/harmonyengine/model/protocol.lua
./opt/luaworks/tasks/harmonyengine/model/button.lua
./opt/luaworks/tasks/harmonyengine/model/activity.lua
./opt/luaworks/tasks/eventlogger
./opt/luaworks/tasks/eventlogger/main.lua
./opt/luaworks/tasks/setup
./opt/luaworks/tasks/setup/main.lua
./opt/luaworks/tasks/setup/apihandler
./opt/luaworks/tasks/setup/apihandler/sync.lua
./opt/luaworks/tasks/setup/apihandler/account.lua
./opt/luaworks/tasks/setup/apihandler/setlanguage.lua
./opt/luaworks/tasks/setup/apihandler/firmware.lua
./opt/luaworks/tasks/setup/apilistener.lua
./opt/luaworks/tasks/watchdog
./opt/luaworks/tasks/watchdog/main.lua
./opt/luaworks/tasks/connectserver
./opt/luaworks/tasks/connectserver/core
./opt/luaworks/tasks/connectserver/core/engine.lua
./opt/luaworks/tasks/connectserver/core/xmppconnection.lua
./opt/luaworks/tasks/connectserver/core/utils.lua
./opt/luaworks/tasks/connectserver/core/hubInfo.lua
./opt/luaworks/tasks/connectserver/core/clientconnections.lua
./opt/luaworks/tasks/connectserver/xmppclient
./opt/luaworks/tasks/connectserver/xmppclient/logitechconnect.lua
./opt/luaworks/tasks/connectserver/xmppclient/xmppclient.lua
./opt/luaworks/tasks/connectserver/main.lua
./opt/luaworks/tasks/connectserver/apihandler
./opt/luaworks/tasks/connectserver/apihandler/deviceinfo.lua
./opt/luaworks/tasks/connectserver/apihandler/system.lua
./opt/luaworks/tasks/connectserver/apihandler/pair.lua
./opt/luaworks/tasks/connectserver/apihandler/statedigest.lua
./opt/luaworks/tasks/connectserver/apihandler/sysinfo.lua
./opt/luaworks/tasks/connectserver/apihandler/rf.lua
./opt/luaworks/tasks/connectserver/apihandler/ping.lua
./opt/luaworks/tasks/connectserver/apihandler/resync.lua
./opt/luaworks/tasks/connectserver/xmppclientconnector.lua
./opt/luaworks/tasks/connectserver/apilistener.lua
./opt/luaworks/tasks/connectserver/transport
./opt/luaworks/tasks/connectserver/transport/httpserverconnector.lua
./opt/luaworks/tasks/connectserver/transport/downloadtest.lua
./opt/luaworks/tasks/connectserver/transport/ltcpserverconnector.lua
./opt/luaworks/tasks/connectserver/transport/firmwarecheck.lua
./opt/luaworks/tasks/connectserver/transport/xmppserverconnector.lua
./opt/luaworks/tasks/connectserver/transport/discovery.lua
./opt/luaworks/tasks/connectserver/transport/hbushttpserverconnector.lua
./opt/luaworks/tasks/connectserver/netservicestarter.lua
./opt/luaworks/tasks/eventqueue
./opt/luaworks/tasks/eventqueue/core
./opt/luaworks/tasks/eventqueue/core/offlinequeue.lua
./opt/luaworks/tasks/eventqueue/core/actionqueue.lua
./opt/luaworks/tasks/eventqueue/queuehandler.lua
./opt/luaworks/tasks/eventqueue/model
./opt/luaworks/tasks/eventqueue/model/offlinerequest.lua
./opt/luaworks/tasks/eventqueue/model/event.lua
./opt/luaworks/tasks/hal
./opt/luaworks/tasks/hal/core
./opt/luaworks/tasks/hal/core/utils.lua
./opt/luaworks/tasks/hal/core/hbus.lua
./opt/luaworks/tasks/hal/core/ltcp.lua
./opt/luaworks/tasks/hal/main.lua
./opt/luaworks/common
./opt/luaworks/common/preferences.lua
./opt/luaworks/common/haltest
./opt/luaworks/common/haltest/testhal-hw.lua
./opt/luaworks/common/utils.lua
./opt/luaworks/common/hal
./opt/luaworks/common/hal/irsender.lua
./opt/luaworks/common/hal/irproxy.lua
./opt/luaworks/common/hal/ltcp.lua
./opt/share
./opt/share/lua
./opt/share/lua/5.1
./opt/share/lua/5.1/socket
./opt/share/lua/5.1/socket/smtp.lua
./opt/share/lua/5.1/socket/ftp.lua
./opt/share/lua/5.1/socket/url.lua
./opt/share/lua/5.1/socket/http.lua
./opt/share/lua/5.1/socket/tp.lua
./opt/share/lua/5.1/mime.lua
./opt/share/lua/5.1/lxp
./opt/share/lua/5.1/lxp/lom.lua
./opt/share/lua/5.1/ltn12.lua
./opt/share/lua/5.1/socket.lua
./opt/share/lua/5.1/LuaXml.lua
./sbin
./sbin/udhcpc
./sbin/syslogd
./sbin/makedevs
./sbin/wlanconfig
./sbin/depmod
./sbin/ifconfig
./sbin/iwspy
./sbin/iwgetid
./sbin/depmod.26
./sbin/klogd
./sbin/insmod
./sbin/ifup
./sbin/iwpriv
./sbin/lsmod
./sbin/rmmod
./sbin/modprobe
./sbin/zcav
./sbin/iwlist
./sbin/iwconfig
./sbin/reboot
./sbin/route
./sbin/init
./sbin/logread
./sbin/getty
./sbin/ifdown
./sbin/bonnie++
./sbin/halt
./sbin/poweroff
./sbin/ldconfig
./etc
./etc/passwd
./etc/skel
./etc/skel/.profile
./etc/skel/.bashrc
./etc/dropbear
./etc/dropbear/dropbear_rsa_host_key
./etc/network
./etc/network/if-pre-up.d
./etc/network/if-post-down.d
./etc/network/if-down.d
./etc/network/interfaces
./etc/network/if-up.d
./etc/timestamp
./etc/issue.net
./etc/modules.wlan
./etc/wpa_supplicant.conf
./etc/sysctl.conf
./etc/fstab
./etc/modules.tde
./etc/rc0.d
./etc/rc0.d/K20syslog
./etc/rc0.d/K10dropbear
./etc/motd
./etc/shadow
./etc/rpc
./etc/rc3.d
./etc/rc3.d/S10dropbear
./etc/rc3.d/S20syslog
./etc/tdeenable
./etc/version
./etc/inittab
./etc/rc6.d
./etc/rc6.d/K20syslog
./etc/rc6.d/K10dropbear
./etc/inputrc
./etc/default
./etc/default/usbd
./etc/dbus-1
./etc/dbus-1/session.conf
./etc/dbus-1/session.d
./etc/dbus-1/system.conf
./etc/dbus-1/system.d
./etc/dbus-1/system.d/bluetooth.conf
./etc/hostname
./etc/host.conf
./etc/init.d
./etc/init.d/dropbear
./etc/init.d/rcS.local
./etc/init.d/syslog
./etc/init.d/rcS
./etc/shells
./etc/mtab
./etc/hosts
./etc/issue
./etc/rc4.d
./etc/rc4.d/S10dropbear
./etc/rc4.d/S20syslog
./etc/nsswitch.conf
./etc/busybox.links
./etc/services
./etc/bluetooth
./etc/bluetooth/main.conf
./etc/bluetooth/rfcomm.conf
./etc/profile
./etc/filesystems
./etc/syslog.conf
./etc/modules
./etc/protocols
./etc/rc1.d
./etc/rc1.d/K20syslog
./etc/rc1.d/K10dropbear
./etc/rc2.d
./etc/rc2.d/S10dropbear
./etc/rc2.d/S20syslog
./etc/rc5.d
./etc/rc5.d/S10dropbear
./etc/rc5.d/S20syslog
./etc/group
./data
./data/luaworks
./data/luaworks/tasks
./data/luaworks/tasks/connectserver
./data/luaworks/tasks/connectserver/main
./data/luaworks/tasks/connectserver/main/preferences
./dev
./dev/input
./dev/gadget
./dev/pts
./lib
./lib/librt-0.9.30.1.so
./lib/libc.so.0
./lib/firmware
./lib/firmware/csr8811-a06.psr
./lib/firmware/csr8811-a08.psr
./lib/firmware/cc2544.bin
./lib/firmware/cc2544.version
./lib/firmware/csr8811-a08-pb1.psr
./lib/libnsl.so.0
./lib/libnsl-0.9.30.1.so
./lib/libcrashlog.so
./lib/libutil-0.9.30.1.so
./lib/libresolv-0.9.30.1.so
./lib/libcrypt.so.0
./lib/libutil.so.0
./lib/libuClibc-0.9.30.1.so
./lib/libpthread.so.0
./lib/ld-uClibc-0.9.30.1.so
./lib/libm.so.0
./lib/libm-0.9.30.1.so
./lib/libdl-0.9.30.1.so
./lib/librt.so.0
./lib/libresolv.so.0
./lib/ld-uClibc.so.0
./lib/libdl.so.0
./lib/libcrypt-0.9.30.1.so
./lib/libgcc_s.so.1
./lib/modules
./lib/modules/2.6.31-g797da55
./lib/modules/2.6.31-g797da55/ath_i2s.ko
./lib/modules/2.6.31-g797da55/modules.inputmap
./lib/modules/2.6.31-g797da55/ath_rate_atheros.ko
./lib/modules/2.6.31-g797da55/modules.ccwmap
./lib/modules/2.6.31-g797da55/modules.symbols.bin
./lib/modules/2.6.31-g797da55/modules.alias
./lib/modules/2.6.31-g797da55/modules.ofmap
./lib/modules/2.6.31-g797da55/kernel
./lib/modules/2.6.31-g797da55/kernel/drivers
./lib/modules/2.6.31-g797da55/kernel/drivers/usb
./lib/modules/2.6.31-g797da55/kernel/drivers/usb/gadget
./lib/modules/2.6.31-g797da55/kernel/drivers/usb/gadget/ath_udc.ko
./lib/modules/2.6.31-g797da55/kernel/drivers/usb/gadget/gadgetfs.ko
./lib/modules/2.6.31-g797da55/adf.ko
./lib/modules/2.6.31-g797da55/ath_hal.ko
./lib/modules/2.6.31-g797da55/modules.dep.bin
./lib/modules/2.6.31-g797da55/athrs_gmac.ko
./lib/modules/2.6.31-g797da55/modules.isapnpmap
./lib/modules/2.6.31-g797da55/modules.alias.bin
./lib/modules/2.6.31-g797da55/ath_dev.ko
./lib/modules/2.6.31-g797da55/modules.devname
./lib/modules/2.6.31-g797da55/asf.ko
./lib/modules/2.6.31-g797da55/modules.pcimap
./lib/modules/2.6.31-g797da55/modules.seriomap
./lib/modules/2.6.31-g797da55/cc2544.ko
./lib/modules/2.6.31-g797da55/modules.symbols
./lib/modules/2.6.31-g797da55/modules.usbmap
./lib/modules/2.6.31-g797da55/modules.softdep
./lib/modules/2.6.31-g797da55/modules.ieee1394map
./lib/modules/2.6.31-g797da55/modules.dep
./lib/modules/2.6.31-g797da55/umac.ko
./lib/libpthread-0.9.30.1.so
./cache
./cache/crashlog-000000620000000d.json
./cache/crashlog-000000790000001f.json
./home
./home/root
./linuxrc
./var
./var/local
./var/volatile
./var/volatile/lock
./var/volatile/lock/subsys
./var/volatile/run
./var/volatile/run/dropbear.pid
./var/volatile/run/wpa_supplicant
./var/volatile/cache
./var/volatile/dbus
./var/volatile/watchdog
./var/volatile/tmp
./var/volatile/tmp/busybox-mips
./var/volatile/tmp/rootfs.tar.gz
./var/volatile/log
./var/spool
./var/lib
./var/lib/misc
./var/lib/dbus
./var/lib/dbus/machine-id
./var/lib/opkg
./var/lib/bluetooth
./var/lib/bluetooth/00:04:20:E8:AF:1D
./var/lib/bluetooth/00:04:20:E8:AF:1D/config
./var/lock
./var/run
./var/cache
./var/dbus
./var/watchdog
./var/tmp
./var/backups
./var/log
./bin
./bin/pidof
./bin/ls
./bin/mount
./bin/mv
./bin/busybox
./bin/mkdir
./bin/cat
./bin/umount
./bin/kill
./bin/ps
./bin/touch
./bin/sh
./bin/grep
./bin/chmod
./bin/login
./bin/uname
./bin/date
./bin/sleep
./bin/hostname
./bin/dmesg
./bin/echo
./bin/cp
./bin/vi
./bin/rm
./bin/sed
./bin/ln
./bin/ash
./bin/run-parts
./usr
./usr/sbin
./usr/sbin/dropbear
./usr/sbin/update-passwd
./usr/sbin/hciconfig
./usr/sbin/dropbearkey
./usr/sbin/hciattach
./usr/sbin/bccmd
./usr/sbin/update-rc.d
./usr/sbin/wpa_cli
./usr/sbin/bluetoothd
./usr/sbin/dropbearconvert
./usr/sbin/dropbearmulti
./usr/sbin/update-modules
./usr/sbin/wpa_supplicant
./usr/lib
./usr/lib/libdbus-1.so.3.7.2
./usr/lib/libgio-2.0.so.0
./usr/lib/libbluetooth.so.3.13.0
./usr/lib/libgmodule-2.0.so.0.2800.7
./usr/lib/libgobject-2.0.so.0.2800.7
./usr/lib/libz.so.1.2.5
./usr/lib/libglib-2.0.so.0
./usr/lib/libglib-2.0.so.0.2800.7
./usr/lib/libgmodule-2.0.so.0
./usr/lib/libgthread-2.0.so.0
./usr/lib/libjansson.so.4.4.0
./usr/lib/libgthread-2.0.so.0.2800.7
./usr/lib/libexpat.so.1
./usr/lib/libgio-2.0.so.0.2800.7
./usr/lib/lua
./usr/lib/lua/5.1
./usr/lib/libdbus-1.so.3
./usr/lib/libgobject-2.0.so.0
./usr/lib/libz.so.1
./usr/lib/libexpat.so.1.5.2
./usr/lib/libjansson.so.4
./usr/lib/libbluetooth.so.3
./usr/include
./usr/src
./usr/libexec
./usr/libexec/dbus-daemon-launch-helper
./usr/bin
./usr/bin/mkimage
./usr/bin/dbus-cleanup-sockets
./usr/bin/usbhid
./usr/bin/dbus-monitor
./usr/bin/iperf
./usr/bin/id
./usr/bin/time
./usr/bin/[[
./usr/bin/tr
./usr/bin/[
./usr/bin/test
./usr/bin/watchdog
./usr/bin/killall
./usr/bin/luac
./usr/bin/update-alternatives
./usr/bin/expr
./usr/bin/dbus-uuidgen
./usr/bin/md5sum
./usr/bin/cut
./usr/bin/awk
./usr/bin/memtester
./usr/bin/lua
./usr/bin/dbus-daemon
./usr/bin/hal
./usr/bin/dbus-send
./usr/bin/hcitool
./usr/bin/which
./usr/bin/dirname
./usr/bin/dbus-launch
./usr/bin/scp
./usr/bin/dbclient
./usr/bin/top
./usr/bin/ssh
./usr/share
./usr/share/udhcpc
./usr/share/udhcpc/default.script
./usr/share/man
./usr/share/man/man8
./usr/share/dict
./usr/share/info
./usr/share/base-passwd
./usr/share/base-passwd/passwd.master
./usr/share/base-passwd/group.master
./usr/share/misc
./usr/share/dbus-1
./usr/share/dbus-1/system-services
./usr/share/dbus-1/services
./usr/share/lua
./usr/share/lua/5.1

(Last edited by moroboshi on 4 Jan 2014, 20:00)

what serial options did you use to connect to the hub?

thanks!

edit: i did try 115200 8n1 and other speeds but i mostly get garbage. 115200 was the best with a little bit legible text. any ideas and hints?

(Last edited by justme on 11 Nov 2014, 11:11)

bump...

How would you flash the device using the contacts on the bottom?

If anyone's willing to help me:

- Where can I get a copy of the firmware

- What device are you using to connect to the terminals on the bottom (usb to ttl?)

- What are the contacts labelled?

- What's the process?

ANY HELP IS GREAT! THANK-YOU! big_smile

Here's the latest firmware:

dhg-prod-sus-suss3bucket-1d3ewoswtrcur.s3.amazonaws.com/sus/images/97/4.12.36.4397175.hfw2

(Last edited by mitmproxy on 15 Jun 2017, 21:19)

mitmproxy wrote:

Here's the latest firmware:

dhg-prod-sus-suss3bucket-1d3ewoswtrcur.s3.amazonaws.com/sus/images/97/4.12.36.4397175.hfw2

Thank-you so much! I saw this and found my Harmony Hub again to try and flash it, but I don't really know the steps to flash over serial. I read OpenWrt's tutorial for OpenWrt firmware, but this is slightly different.

What option should I be using? Is it TFTP for the firmware above?

U-Boot 1.1.4-g4fe3722 (Dec 17 2013 - 19:46:43)

AP121 (ar9331) U-boot

DRAM:  32 MB
Top of RAM usable for U-Boot at: 82000000
Reserving 137k for U-Boot at: 81fdc000
Reserving 192k for malloc() at: 81fac000
Reserving 44 Bytes for Board Info at: 81fabfd4
Reserving 36 Bytes for Global Data at: 81fabfb0
Reserving 128k for boot params() at: 81f8bfb0
Stack Pointer at: 81f8bf98
Now running in RAM - U-Boot at: 81fdc000
id read 0x100000ff
flash size 16777216, sector count = 256
Flash: 16 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   ag7240_enet_initialize...
Fetching MAC Address from 0x81ff36b8
Fetching MAC Address from 0x81ff36b8
: cfg1 0x5 cfg2 0x7114
eth0: 00:03:71:11:00:00
eth0 up
: cfg1 0xf cfg2 0x7214
eth1: 00:00:0d:11:00:00
athrs26_reg_init_lan
ATHRS26: resetting s26
ATHRS26: s26 reset done
eth1 up
eth0, eth1
Hit any key to stop autoboot:  0 ... 0
ar7240> <INTERRUPT>
ar7240> help

?       - alias for 'help'
boot    - boot default, i.e., run 'bootcmd'
bootd   - boot default, i.e., run 'bootcmd'
bootm   - boot application image from memory
cp      - memory copy
erase   - erase FLASH memory
help    - print online help
md      - memory display
mm      - memory modify (auto-incrementing)
mtest   - simple RAM test
mw      - memory write (fill)
nm      - memory modify (constant address)
ping.- send ICMP ECHO_REQUEST to network host
printenv- print environment variables
progmac - Set ethernet MAC addresses
reset   - Perform RESET of the CPU
run     - run commands in an environment variable
setenv  - set environment variables
tftpboot- boot image via network using TFTP protocol
version - print monitor version
ar7240> 

(Last edited by polarbear_ed on 4 Feb 2018, 02:58)

The discussion might have continued from here.