Adding USB to Meraki MR18

Hi, would like to add and usb to it, does somone know it there are usb tracers on the board or has 9550 datasheet.

Thanks.

https://wikidevi.com/wiki/Cisco_Meraki_MR18

USB: No

You could try installing the USB drivers and see if it enumerates...it doesn't mean there's available tracers, though.

Where there is a will, there's a way (no, that's not a MR18).

1 Like

This is what I done with my other router but I need datasheet that I can't find...
and aslo I only got this router, but I think my firmware is newer then needed for instalation after couple of resets I could get to busybox... somone knows if anything can be done from this mode because you are basically root. Don't want to play with jtag for now.Thanks.

I didn't find amy mention if you hold reset during boot you get into this mode I attached the output:

[    0.832000] qca955x_GMAC: Length per segment 1536
[    0.836000] 955x_GMAC: qca955x_gmac_attach
[    0.844000] 955x_GMAC: qca955x_set_gmac_caps
[    0.848000] Currently in polling mode unit0
[    0.852000] Registering AR8033 Phy....
[    0.856000] qca955x_GMAC: Mac address for unit 0:bfff1000
[    0.860000] qca955x_GMAC: 00:00:00:00:00:00
[    0.864000] qca955x_GMAC: Max segments per packet :   1
[    0.872000] qca955x_GMAC: Max tx descriptor count :   100
[    0.876000] qca955x_GMAC: Max rx descriptor count :   252
[    0.880000] qca955x_GMAC: Mac capability flags    :   4200
[    0.888000] 955x_GMAC: qca955x_gmac_attach
[    0.892000] 955x_GMAC: qca955x_set_gmac_caps
[    0.896000] Currently in polling mode unit1
[    0.900000] Registering AR8033 Phy....
[    0.904000] qca955x_GMAC: Mac address for unit 1:bfff1006
[    0.908000] qca955x_GMAC: 00:00:00:00:00:00
[    0.916000] qca955x_GMAC: Max segments per packet :   1
[    0.920000] qca955x_GMAC: Max tx descriptor count :   100
[    0.924000] qca955x_GMAC: Max rx descriptor count :   252
[    0.932000] qca955x_GMAC: Mac capability flags    :   4200
[    1.584000] UBIFS: mounted UBI device 0, volume 1, name "storage"
[    1.592000] UBIFS: file system size:   19869696 bytes (19404 KiB, 18 MiB, 154                                                                                         LEBs)
[    1.600000] UBIFS: journal size:       1032193 bytes (1008 KiB, 0 MiB, 8 LEBs                                                                                        )
[    1.604000] UBIFS: media format:       w4/r0 (latest is w4/r0)
[    1.612000] UBIFS: default compressor: lzo
[    1.616000] UBIFS: reserved for root:  938494 bytes (916 KiB)
In manufacturing[    1.624000] /init: FALSE
In rma : mode: FALSE
reading file /storage/config: No such file or directory






[   12.804000] Mapping 8724480 bytes for /dev/mtdblock/diagnostic1
[   12.828000] Ehdr.e_entry = 80211840 Ehdr.e_phoff = 34
[   12.832000] Phdr.p_offset = 2000 phdr.p_vaddr=80002000 phdr.p_filesz=79a6bb p                                                                                        hdr.p_memsz=15be330
[   13.808000] UBIFS: un-mount UBI device 0, volume 1
[   13.812000] Starting new kernel
[   13.816000] Will call new kernel at 80211840
[   13.816000] Bye ...
Booting QCA955x
Linux version 2.6.31--LSDK-9.5.3.15-ga2a05dd-dirty (aacharya@dev104.meraki.com)                                                                                         (gcc version 4.3.3 (GCC) ) #6 Mon Nov 4 21:01:20 PST 2013
flash_size passed from bootloader = -2147434496
CPU revision is: 00019750 (MIPS 74Kc)
cpu apb ddr apb ath_sys_frequency: cpu 720 ddr 600 ahb 200
Determined physical RAM map:
 memory: 02000000 @ 00000000 (usable)
User-defined physical RAM map:
 memory: 08000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Zone PFN ranges:
  Normal   0x00000000 -> 0x00008000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00008000
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
Kernel command line: console=ttyS0,115200 rdinit=/sbin/init mtdparts=ath-nand:13                                                                                        0944k(meraki),128k(caldata) mem=128M
PID hash table entries: 512 (order: 9, 2048 bytes)
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 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: 107492k/131072k available (2127k kernel code, 23404k reserved, 525k data                                                                                        , 5132k init, 0k highmem)
NR_IRQS:128
plat_time_init: plat time init done
Console: colour dummy device 80x25
Calibrating delay loop... 359.42 BogoMIPS (lpj=718848)
Mount-cache hash table entries: 512

****************ALLOC***********************
 Packet mem: 807b8160 (0xe00000 bytes)
********************************************

NET: Registered protocol family 16
ath_pcibios_init: bus 0
ath_pcibios_init(232): PCI 0 CMD write: 0x356
registering PCI controller with io_map_base unset
ath_pcibios_init: bus 1
ath_pcibios_init(232): PCI 1 CMD write: 0x356
registering PCI controller with io_map_base unset
bio: create slab <bio-0> at 0
SCSI subsystem initialized
pci 0000:00:00.0: PME# supported from D0 D1 D3hot
pci 0000:00:00.0: PME# disabled
pci 0000:01:00.0: PME# supported from D0 D1 D3hot
pci 0000:01:00.0: PME# disabled
pcibios_map_irq: IRQ 75 for bus 0
pcibios_map_irq: IRQ 76 for bus 1
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
NET: Registered protocol family 1
ATH GPIOC major 0
JFFS2 version 2.2 (NAND) (ZLIB) (RTIME) (c) 2001-2006 Red Hat, Inc.
fuse init (API version 7.12)
msgmni has been set to 210
io scheduler noop registered
io scheduler deadline registered (default)
Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xb8020000 (irq = 19) is a 16550A
console [ttyS0] enabled
brd: module loaded
RedBoot partition parsing not available
No partitions found on flash bank 0
Atheros on-chip NAND FLash Controller Driver, Version 0.1 (c) 2010 Atheros Commu                                                                                        nications, Ltd.
Ath Nand ID[8785259c]: ad:f1:00:1d:ad
Hynix NAND 128MiB 3,3V 8-bit [128MB]
2 cmdlinepart partitions found on MTD device ath-nand
Creating 2 MTD partitions on "ath-nand":
0x000000000000-0x000007fe0000 : "meraki"
0x000007fe0000-0x000008000000 : "caldata"
====== NAND Parameters ======
sc = 0x87852400 bbt = 0x86a857a0 bbt_size = 0x100 nf_ctrl = 0x344
page = 0x800 block = 0x20000 oob = 0x40
TCP cubic registered
NET: Registered protocol family 10
IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
arch/mips/atheros/gpio.c (ath_simple_config_init) JUMPSTART_GPIO: 16
ath_simple_config_invoke_cb: sc 1, irq 0, ignorepb 1, jiffies 4294892658
athwdt_init: Registering WDT success
ath_otp_init: Registering OTP success
Freeing unused kernel memory: 5132k freed
init started:  BusyBox v1.01 (2013.11.05-04:45+0000) multi-call binary
init started:  BusyBox v1.01 (2013.11.05-04:45+0000) multi-call binary
Starting pid 18, console /dev/ttyS0: '/etc/rcqca955x_GMAC: Length per segment 15                                                                                        36
.d/rcS'
955x_GMAC: qca955x_gmac_attach
955x_GMAC: qca955x_set_gmac_caps
Currently in polling mode unit0
mac:0 Registering S17....
qca955x_GMAC: RX TASKLET - Pkts per Intr:100
Reading Flash for Calibraton data from 0x0 and partition name is caldata
qca955x_GMAC: Mac address for unit 0:86b13c60
qca955x_GMAC: ff:ff:ff:ff:ff:ff
qca955x_GMAC: Max segments per packet :   1
qca955x_GMAC: Max tx descriptor count :   128
qca955x_GMAC: Max rx descriptor count :   128
qca955x_GMAC: Mac capability flags    :   2200
955x_GMAC: qca955x_gmac_attach
955x_GMAC: qca955x_set_gmac_caps
Currently in polling mode unit1
mac:1 Registering S17....
qca955x_GMAC: RX TASKLET - Pkts per Intr:100
Reading Flash for Calibraton data from 0x6 and partition name is caldata
qca955x_GMAC: Mac address for unit 1:86b13aa0
qca955x_GMAC: ff:ff:ff:ff:ff:ff
qca955x_GMAC: Max segments per packet :   1
qca955x_GMAC: Max tx descriptor count :   128
qca955x_GMAC: Max rx descriptor count :   128
qca955x_GMAC: Mac capability flags    :   2002200
955x_GMAC: Serdes PLL is not locked. Resetting...
955x_GMAC: Serdes PLL is locked value 0x1a818116




To set s17 LOOKUP_CTRL_REG registers, flag 0
athr_gmac_ring_alloc Allocated 2048 at 0x86b43000
athr_gmac_ring_alloc Allocated 2048 at 0x86b41800
955x_GMAC: eth0 in RGMII MODE
Scorpion -----> S17 PHY
_athrs17_mac0_intf done
athrs17_reg_init:done
Setting Drop CRC Errors, Pause Frames and Length Error frames
Setting PHY...
Phy setup Complete
To set s17 LOOKUP_CTRL_REG registers, flag 1






ADDRCONF(NETDEV_UP): eth0: link is not ready
To set s17 LOOKUP_CTRL_REG registers, flag 0
athr_gmac_ring_alloc Allocated 2048 at 0x86b41000
athr_gmac_ring_alloc Allocated 2048 at 0x86b6f800
955x_GMAC: eth1 in SGMII MODE
Scorpion -----> S17 PHY
athrs17_reg_init_wan done
955x_SGMIIMax resets limit reached exiting...
955x_SGMII::athr_gmac_sgmii_setup  Done
Setting Drop CRC Errors, Pause Frames and Length Error frames
Setting PHY...
To set s17 LOOKUP_CTRL_REG registers, flag 1

ADDRCONF(NETDEV_UP): eth1: link is not ready




br_add_interfacedevice eth0 entered promiscuous mode
 ptype 0
br_add_interfacedevice eth1 entered promiscuous mode
 ptype 0

Enet:0 port0 up
955x_GMAC: enet unit:0 is up...
eth0  RGMII  1000Mbps  full duplex
955x_GMAC: qca955x_soc_gmac_set_mac_duplex
955x_GMAC: qca955x_soc_gmac_set_link Done
955x_GMAC: done cfg2 0x7215 ifctl 0x0 miictrl
ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
br0: port 1(eth0) entering forwarding state

usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub

usbcore: registered new device driver usb
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
Port Status 0
ath-ehci ath-ehci.0: ATH EHCI
ath-ehci ath-ehci.0: new USB bus registered, assigned bus number 1
ehci_reset Intialize USB CONTROLLER in host mode: 0
ehci_reset Port Status 0
ath-ehci ath-ehci.0: irq 3, io mem 0x1b000000
ehci_reset Intialize USB CONTROLLER in host mode: 0
ehci_reset Port Status 0
ath-ehci ath-ehci.0: USB 2.0 started, EHCI 0.00
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: ATH EHCI
usb usb1: Manufacturer: Linux 2.6.31--LSDK-9.5.3.15-ga2a05dd-dirty ehci_hcd
usb usb1: SerialNumber: platform
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 0 ports detected
Port Status 0
ath-ehci1 ath-ehci1.1: ATH EHCI
ath-ehci1 ath-ehci1.1: new USB bus registered, assigned bus number 2
ehci_reset Intialize USB CONTROLLER in host mode: 0
ehci_reset Port Status 0
ath-ehci1 ath-ehci1.1: irq 3, io mem 0x1b400000
ehci_reset Intialize USB CONTROLLER in host mode: 0
ehci_reset Port Status 0
ath-ehci1 ath-ehci1.1: USB 2.0 started, EHCI 0.00
usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: ATH EHCI
usb usb2: Manufacturer: Linux 2.6.31--LSDK-9.5.3.15-ga2a05dd-dirty ehci_hcd
usb usb2: SerialNumber: platform
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 0 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver cdc_ether
tar: /sbin/debug.tgz: No such file or directory
factoryreset: /dev/freset: N**** drop_caches_sysctl_handler: all done timer adde                                                                                        d ...****
o such file or directory
Starting pid 731, console /dev/ttyS0: '/sbin/autologin'
Jan  1 00:00:06 login[731]: root login  on `ttyS0'



BusyBox v1.01 (2013.11.05-04:45+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

~ #
~ #
~ #
~ #
~ #
~ # odm
-sh: odm: not found
~ #

1 Like

So, now you're aware there's an USB.

Now, you just have to find out where the the USB headers on the CPU are for an Atheros QCA9557-AT4A.

https://www.hkinventory.com/public/requestDataSheet.asp?partNum=QCA9557AT4A

Hope this helps.

I saw some requests but nobody posted any datasheet, but I still didn't get openwrt running on this device...