Google Wifi flashing - help

What USB hub are you using Craic? You seem to be getting further along that I am …

I've tried 2 separate hubs. 1 apple hub that came with my MacBook and another generic one I've had laying around. Says it's a Dadocool model DC30 USB-C to 3 Port USB 3.0 Hub. I had to try 5 different USB flash drives before I could find one that seemed to work with the recovery image. Both hubs worked for me.

Thanks, I’ve got my hands on an alternative hub, I’ll try that. My 5 USB disks were varied & included pretty old school 2.0 ones so I’m not convinced that’s where the prob is.

All the best with it, cheers

Let me know if you are able to get it running. I'm not sure how to get it to boot openwrt from the USB unfortunately. Never able to ping the device and it eventually reboots and flashes purple.

Okay, three of mine are ac1304, one is the gj2cq, and only one is a nl1304...

I'm curious why only the 2016 is supported.

Trying at present to get Openwrt working

The simple and natural answer would always be, because that's the only version the original porter had available…

If you want support for new/ different devices, 'someone' will have to do the necessary leg-work - if in doubt, that 'someone' will end to be you, yourself, because you're the only one with a) the hardware and b) the motivation to get it supported.

1 Like

I also wanna step in and say it doesn't seem like he's the only one. At least I have already 3 devices running one of them is an AC-1304 and 2 NLS1304. All worked with the wiki procedure, but I needed a USB splitter. No luck with hubs so far.

Unfortunately now I got another ac-1304, but can't get it to load factory image. In my case the same stick worked already on 3 devices. So I guess there has to be something else wrong.

@MightyCraic You need to burn the openwrt.bin to a stick, that means you need to extract it. I used the image writer of Ubuntu and it worked to get openwrt running.

I also ordered now a USB-c breakout board to build an own debug cable that is described.

But I would need help to step up. I guess there is a newer version of Google software installed that prevents the old factory reset...

Would appreciate if there is still development ongoing

2 Likes

@hecatae did you manage to get gj2cq with the round power jack running?

The one I had was proper dead, got it from eBay for next to nothing so took it apart but apart from that no joy.

Did you use a serial log to debug?

Hey guys,

there are news! - I get this in my console:

T510:~$ lsusb
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 0a5c:217f Broadcom Corp. BCM2045B (BDC-2.1)
Bus 001 Device 009: ID 18d1:500f Google Inc. 
Bus 001 Device 003: ID 1ea7:0064 SHARKOON Technologies GmbH 
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

So there is something in my console. - How could I proceed?

If I try to connect via

sudo screen /dev/ttyUSB1 115200

coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 verstage starti

there were two devices which means with

sudo screen /dev/ttyUSB0 115200

RXERR0 Preamble

but now I can't get via lsusb the device "google..." I don't know how I started the device to see it...

I got further.

With the "defective" device I got this messages:

coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 verstage startiPhase 4
FMAP: area FW_MAIN_A found @ 402000 (1367808 bytes)
VB2:vb2api_init_hash() HW crypto for hash_alg 2 not supported, using SW
TPM: command 0x14 returned 0x0
TPM: command 0x14 returned 0x0
TPM: Set global lock
TPM: tlcl_write(0x0, 0)
TPM: command 0xcd returned 0x0
Slot A is selected
CBFS: 'VBOOT' located CBFS at [402000:42f240)
CBFS: Locating 'fallback/romstage'
CBFS: Found @ offset 0 size 469b


coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 romstage starting...
SF: Detected W25Q64 with sector size 0x1000, total 0x800000
CBFS: 'VBOOT' located CBFS at [402000:42f240)
CBFS: Locating 'cdt.mbn'
CBFS: Found @ offset bac0 size 1ac
CBFS: 'VBOOT' located CBFS at [402000:42f240)
CBFS: Locating 'ddr.mbn'
CBFS: Found @ offset bcc0 size 7d38
DDR version private build initialized
SDI Entry: 0x860038d
Mapping address range [0x80000000:0xa0000000) as writeback
Mapping address range [0x87300000:0x87500000) as uncached
CBMEM:
IMD: root @ 8727f000 254 entries.
failed.

And here is the log from working device with openwrt:

coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 verstage startiPhase 4
FMAP: area FW_MAIN_A found @ 402000 (1367808 bytes)
VB2:vb2api_init_hash() HW crypto for hash_alg 2 not supported, using SW
Saving nvdata
SF: Detected W25Q64 with sector size 0x1000, total 0x800000
TPM: command 0x14 returned 0x0
TPM: command 0x14 returned 0x0
TPM: Set global lock
TPM: tlcl_write(0x0, 0)
TPM: command 0xcd returned 0x0
Slot A is selected
CBFS: 'VBOOT' located CBFS at [402000:42f240)
CBFS: Locating 'fallback/romstage'
CBFS: Found @ offset 0 size 469b


coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 romstage starting...
SF: Detected W25Q64 with sector size 0x1000, total 0x800000
CBFS: 'VBOOT' located CBFS at [402000:42f240)
CBFS: Locating 'cdt.mbn'
CBFS: Found @ offset bac0 size 1ac
CBFS: 'VBOOT' located CBFS at [402000:42f240)
CBFS: Locating 'ddr.mbn'
CBFS: Found @ offset bcc0 size 7d38
DDR version private build initialized
SDI Entry: 0x860038d
Mapping address range [0x80000000:0xa0000000) as writeback
Mapping address range [0x87300000:0x87500000) as uncached
CBMEM:
IMD: root @ 8727f000 254 entries.
IMD: root @ 8727ec00 62 entries.
creating vboot_handoff structure
Reading tristate GPIOs: 0 1 Z = 9 (binary_first base3 number system)
Board ID 9
Copying FW preamble
CBFS: 'VBOOT' located CBFS at [402000:42f240)
CBFS: Locating 'fallback/ramstage'
CBFS: Found @ offset 4700 size 6f3b


coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 ramstage starting...
SF: Detected W25Q64 with sector size 0x1000, total 0x800000
FMAP: Found "FMAP" version 1.0 at 300000.
FMAP: base = 0 size = 800000 #areas = 24
FMAP: area RO_VPD found @ 3e0000 (131072 bytes)
FMAP: area RW_VPD found @ 6e0000 (32768 bytes)
FMAP: area RO_VPD found @ 3e0000 (131072 bytes)
FMAP: area RW_VPD found @ 6e0000 (32768 bytes)
Exception handlers installed.
BS: BS_PRE_DEVICE times (us): entry 9 run 14 exit 9
BS: BS_DEV_INIT_CHIPS times (us): entry 9 run 29 exit 9
Enumerating buses...
Show all devs... Before device enumeration.
Root Device: enabled 1
CPU_CLUSTER: 0: enabled 1
Compare with tree...
Root Device: enabled 1
 CPU_CLUSTER: 0: enabled 1
Root Device scanning...
root_dev_scan_bus for Root Device
CPU_CLUSTER: 0 enabled
root_dev_scan_bus for Root Device done
scan_bus: scanning of bus Root Device took 12402 usecs
done
BS: BS_DEV_ENUMERATE times (us): entry 9 run 37312 exit 9
Allocating resources...
Reading resources...
Root Device read_resources bus 0 link: 0
Root Device read_resources bus 0 link: 0 done
Done reading resources.
Show resources in subtree (Root Device)...After reading.
 Root Device child on link 0 CPU_CLUSTER: 0
  CPU_CLUSTER: 0
  CPU_CLUSTER: 0 resource base 80000000 size 7500000 align 0 gran 0 limit 0 flags e0004200 index 0
  CPU_CLUSTER: 0 resource base 87500000 size b00000 align 0 gran 0 limit 0 flags f0004200 index 1
  CPU_CLUSTER: 0 resource base 88000000 size 18000000 align 0 gran 0 limit 0 flags e0004200 index 2
Setting resources...
Root Device assign_resources, bus 0 link: 0
CPU_CLUSTER: 0 missing set_resources
Root Device assign_resources, bus 0 link: 0
Done setting resources.
Show resources in subtree (Root Device)...After assigning values.
 Root Device child on link 0 CPU_CLUSTER: 0
  CPU_CLUSTER: 0
  CPU_CLUSTER: 0 resource base 80000000 size 7500000 align 0 gran 0 limit 0 flags e0004200 index 0
  CPU_CLUSTER: 0 resource base 87500000 size b00000 align 0 gran 0 limit 0 flags f0004200 index 1
  CPU_CLUSTER: 0 resource base 88000000 size 18000000 align 0 gran 0 limit 0 flags e0004200 index 2
Done allocating resources.
BS: BS_DEV_RESOURCES times (us): entry 9 run 120305 exit 10
Enabling resources...
done.
BS: BS_DEV_ENABLE times (us): entry 9 run 2987 exit 9
Initializing devices...
Root Device init ...
CBFS: 'VBOOT' located CBFS at [402000:42f240)
CBFS: Locating 'tzbsp_no_xpu.mbn'
CBFS: Found @ offset 13a40 size 9428
Starting TZBSP
Translation table is @ 0a0f0000
Mapping address range [0x00000000:0x00000000) as uncached
Creating new subtable @0a0f4000 for [0x0a000000:0x0a100000)
Mapping address range [0x0a0c0000:0x0a100000) as writeback
Creating new subtable @0a0f4400 for [0x0a800000:0x0a900000)
Mapping address range [0x0a8c0000:0x0a900000) as writeback
Creating new subtable @0a0f4800 for [0x08600000:0x08700000)
Mapping address range [0x08600000:0x08608000) as writeback
Mapping address range [0x80000000:0xa0000000) as writeback
Mapping address range [0x87300000:0x87500000) as uncached
Setting address range [0xa0000000:0x00000000) as unmapped
Creating new subtable @0a0f4c00 for [0x00000000:0x00100000)
Setting address range [0x00000000:0x00000400) as unmapped
Setting up USB HOST1 controller.
Version = 5533270a
software reset done
USB Host mode reg = 101004
cbmem_add_vpd_calibration_data: added wifi_base64_calibration0 to CBMEM
cbmem_add_vpd_calibration_data: added wifi_base64_calibration1 to CBMEM
Root Device init finished in 532705 usecs
CPU_CLUSTER: 0 init ...
CPU: QCA 40xx
CPU_CLUSTER: 0 init finished in 3790 usecs
Devices initialized
Show all devs... After init.
Root Device: enabled 1
CPU_CLUSTER: 0: enabled 1
BS: BS_DEV_INIT times (us): entry 9 run 556864 exit 2
Finalize devices...
Devices finalized
BS: BS_POST_DEVICE times (us): entry 2 run 3788 exit 1
BS: BS_OS_RESUME_CHECK times (us): entry 2 run 5 exit 2
Writing coreboot table at 0x8724c000
rom_table_end = 0x8724c000
... aligned to 0x87250000
 0. 0000000080000000-000000008724bfff: RAM
 1. 000000008724c000-000000008727ffff: CONFIGURATION TABLES
 2. 0000000087280000-00000000874fffff: RAM
 3. 0000000087500000-0000000087ffffff: RESERVED
 4. 0000000088000000-000000009fffffff: RAM
Reading tristate GPIOs: 0 1 Z = 9 (binary_first base3 number system)
Board ID 9
Passing 5 GPIOs to payload:
            NAME |       PORT | POLARITY |     VALUE
       developer | 0x00000029 |      low |       low
        recovery | 0x00000039 |      low |       low
   write protect | 0x00000035 |      low |       low
           power |  undefined |      low |       low
             lid |  undefined |      low |      high
CBFS: 'VBOOT' located CBFS at [402000:42f240)
Wrote coreboot table at: 8724c000, 0x320 bytes, checksum 59ab
coreboot table: 824 bytes.
IMD ROOT    0. 8727f000 00001000
IMD SMALL   1. 8727e000 00001000
CONSOLE     2. 8725e000 00020000
TIME STAMP  3. 8725d000 00000400
VBOOT       4. 8725c000 00000c0c
VPD         5. 87254000 00007fec
WIFI CLBR   6. 8724e000 00005e94
COREBOOT    7. 8724c000 00002000
IMD small region:
  IMD ROOT    0. 8727ec00 00000400
  VBOOT SEL   1. 8727ebe0 00000008
BS: BS_WRITE_TABLES times (us): entry 2 run 120469 exit 3
CBFS: 'VBOOT' located CBFS at [402000:42f240)
CBFS: Locating 'fallback/payload'
CBFS: Found @ offset 1cec0 size 10341
Loading segment from rom address 0x87289428
  code (compression=1)
  New segment dstaddr 0x88104040 memsize 0x1249b70 srcaddr 0x87289460 filesize 0x10309
Loading segment from rom address 0x87289444
  Entry Point 0x88104041
Bounce Buffer at 9ffcf000, 197488 bytes
Loading Segment: addr: 0x0000000088104040 memsz: 0x0000000001249b70 filesz: 0x0000000000010309
lb: [0x00000000872e0000, 0x00000000872f81b8)
Post relocation: addr: 0x0000000088104040 memsz: 0x0000000001249b70 filesz: 0x0000000000010309
using LZMA
[ 0x88104040, 88121470, 0x8934dbb0) <- 87289460
Clearing Segment: addr: 0x0000000088121470 memsz: 0x000000000122c740
dest 88104040, end 8934dbb0, bouncebuffer 9ffcf000
Loaded segments
BS: BS_PAYLOAD_LOAD times (us): entry 2 run 175952 exit 2
Jumping to boot code at 88104041(8724c000)
CPU0: stack: 0a8fc000 - 0a900000, lowest used address 0a8ff5f0, stack used: 2576 bytes


Starting depthcharge on gale...
WARNING: can't convert coreboot GPIOs, 'lid' won't be resampled at runtime!
WARNING: can't convert coreboot GPIOs, 'power' won't be resampled at runtime!
clock_config_mmc : 1
WW_RING: initialized controller found at 0x32
WW_RING: initialized 1 out of 1
The GBB signature is at 0x88004020 and is:  24 47 42 42
Calling VbSelectAndLoadKernel().
TPM: TlclRead(0x1008, 13)
1.2 TPM (chip type slb9645tt device-id 0x1A)
TPM: command 0xcf returned 0x0
TPM: command 0x65 returned 0x0
TPM: RollbackKernelRead 10001
Entering VbBootNormal()
VbTryLoadKernel() start, get_info_flags=0x2
MMC version  = 10000042
clock_config_mmc : 1
clock_config_mmc : 2
Man 000011 Snr 2584915920 Product 004G60 Revision 0.2
VbTryLoadKernel() found 1 disks
VbTryLoadKernel() trying disk 0
GptNextKernelEntry looking at new prio partition 1
GptNextKernelEntry s1 t0 p1
GptNextKernelEntry likes partition 1
Found kernel entry at 34 size 32768
Checking key block signature...
   - sig_size=512, expecting 512 for algorithm 8
In RSAVerify(): Padding check failed!
In RSAVerify(): Hash check failed!
Invalid key block signature.
Verifying key block signature failed.
Marking kernel as invalid.
GptNextKernelEntry looking at new prio partition 1
GptNextKernelEntry s1 t0 p1
GptNextKernelEntry no more kernels
VbTryLoadKernel() LoadKernel() = 65552
VbSetRecoveryRequest(91)
Checking if TPM kernel version needs advancing
VbSelectAndLoadKernel() returning 65552
VbSelectAndLoadKernel returned 65552, Doing a cold reboot.
Exiting depthcharge with code 1 at timestamp: 9878544
�ebooting...

coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 bootblock starting...
Exception handlers installed.
Translation table is @ 0a0f0000
Mapping address range [0x00000000:0x00000000) as uncached
Creating new subtable @0a0f4000 for [0x0a000000:0x0a100000)
Mapping address range [0x0a0c0000:0x0a100000) as writeback
Creating new subtable @0a0f4400 for [0x0a800000:0x0a900000)
Mapping address range [0x0a8c0000:0x0a900000) as writeback
Creating new subtable @0a0f4800 for [0x08600000:0x08700000)
Mapping address range [0x08600000:0x08608000) as writeback
Setting address range [0x80000000:0xa0000000) as unmapped
Setting address range [0x87300000:0x87500000) as unmapped
Setting address range [0xa0000000:0x00000000) as unmapped
Creating new subtable @0a0f4c00 for [0x00000000:0x00100000)
Setting address range [0x00000000:0x00000400) as unmapped
No uber-sbl parameter detected
SF: Detected W25Q64 with sector size 0x1000, total 0x800000
VBOOT: Loading verstage.
CBFS @ 20000 size 2e0000
CBFS: 'Master Header Locator' located CBFS at [20000:300000)
CBFS: Locating 'fallback/verstage'
CBFS: Found @ offset 1cf40 size 987c


coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 verstage starting...
Exception handlers installed.
SF: Detected W25Q64 with sector size 0x1000, total 0x800000
FMAP: Found "FMAP" version 1.0 at 300000.
FMAP: base = 0 size = 800000 #areas = 24
FMAP: area RW_NVRAM found @ 6f0000 (65536 bytes)
tis_init: ValidSts bit set(1) in TPM_ACCESS register after 8 ms
1.2 TPM (chip type slb9645tt device-id 0x1A)
TPM: Startup
TPM: command 0x99 returned 0x0
TPM: Asserting physical presence
TPM: command 0x4000000a returned 0x0
TPM: command 0x65 returned 0x0
TPM: flags disable=0, deactivated=0, nvlocked=1
setup_tpm():320: TPM: SetupTPM() succeeded
TPM: tlcl_read(0x1007, 10)
TPM: command 0xcf returned 0x0
Reading tristate GPIOs: 0 1 Z = 9 (binary_first base3 number system)
Board ID 9
WW_RING: initialized 1 out of 1
Phase 1
FMAP: area GBB found @ 301000 (913152 bytes)
VB2:vb2_check_recovery() Recovery reason from previous boot: 0x5b / 0x0
VB2:vb2_check_recovery() We have a recovery request: 0x5b / 0x0
Recovery requested (1009000e)
Saving nvdata
SF: Detected W25Q64 with sector size 0x1000, total 0x800000
TPM: command 0x14 returned 0x0
TPM: command 0x14 returned 0x0
CBFS @ 20000 size 2e0000
CBFS: 'Master Header Locator' located CBFS at [20000:300000)
CBFS: Locating 'fallback/romstage'
CBFS: Found @ offset 80 size 469b


coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 romstage starting...
SF: Detected W25Q64 with sector size 0x1000, total 0x800000
CBFS @ 20000 size 2e0000
CBFS: 'Master Header Locator' located CBFS at [20000:300000)
CBFS: Locating 'cdt.mbn'
CBFS: Found @ offset bb40 size 1ac
CBFS @ 20000 size 2e0000
CBFS: 'Master Header Locator' located CBFS at [20000:300000)
CBFS: Locating 'ddr.mbn'
CBFS: Found @ offset bd40 size 7d38
DDR version private build initialized
SDI Entry: 0x860038d
Mapping address range [0x80000000:0xa0000000) as writeback
Mapping address range [0x87300000:0x87500000) as uncached
CBMEM:
IMD: root @ 8727f000 254 entries.
IMD: root @ 8727ec00 62 entries.
creating vboot_handoff structure
Reading tristate GPIOs: 0 1 Z = 9 (binary_first base3 number system)
Board ID 9
CBFS @ 20000 size 2e0000
CBFS: 'Master Header Locator' located CBFS at [20000:300000)
CBFS: Locating 'fallback/ramstage'
CBFS: Found @ offset 4780 size 6f3b


coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 ramstage starting...
SF: Detected W25Q64 with sector size 0x1000, total 0x800000
FMAP: Found "FMAP" version 1.0 at 300000.
FMAP: base = 0 size = 800000 #areas = 24
FMAP: area RO_VPD found @ 3e0000 (131072 bytes)
FMAP: area RW_VPD found @ 6e0000 (32768 bytes)
FMAP: area RO_VPD found @ 3e0000 (131072 bytes)
FMAP: area RW_VPD found @ 6e0000 (32768 bytes)
Exception handlers installed.
BS: BS_PRE_DEVICE times (us): entry 9 run 15 exit 9
BS: BS_DEV_INIT_CHIPS times (us): entry 9 run 29 exit 9
Enumerating buses...
Show all devs... Before device enumeration.
Root Device: enabled 1
CPU_CLUSTER: 0: enabled 1
Compare with tree...
Root Device: enabled 1
 CPU_CLUSTER: 0: enabled 1
Root Device scanning...
root_dev_scan_bus for Root Device
CPU_CLUSTER: 0 enabled
root_dev_scan_bus for Root Device done
scan_bus: scanning of bus Root Device took 12397 usecs
done
BS: BS_DEV_ENUMERATE times (us): entry 10 run 37281 exit 10
Allocating resources...
Reading resources...
Root Device read_resources bus 0 link: 0
Root Device read_resources bus 0 link: 0 done
Done reading resources.
Show resources in subtree (Root Device)...After reading.
 Root Device child on link 0 CPU_CLUSTER: 0
  CPU_CLUSTER: 0
  CPU_CLUSTER: 0 resource base 80000000 size 7500000 align 0 gran 0 limit 0 flags e0004200 index 0
  CPU_CLUSTER: 0 resource base 87500000 size b00000 align 0 gran 0 limit 0 flags f0004200 index 1
  CPU_CLUSTER: 0 resource base 88000000 size 18000000 align 0 gran 0 limit 0 flags e0004200 index 2
Setting resources...
Root Device assign_resources, bus 0 link: 0
CPU_CLUSTER: 0 missing set_resources
Root Device assign_resources, bus 0 link: 0
Done setting resources.
Show resources in subtree (Root Device)...After assigning values.
 Root Device child on link 0 CPU_CLUSTER: 0
  CPU_CLUSTER: 0
  CPU_CLUSTER: 0 resource base 80000000 size 7500000 align 0 gran 0 limit 0 flags e0004200 index 0
  CPU_CLUSTER: 0 resource base 87500000 size b00000 align 0 gran 0 limit 0 flags f0004200 index 1
  CPU_CLUSTER: 0 resource base 88000000 size 18000000 align 0 gran 0 limit 0 flags e0004200 index 2
Done allocating resources.
BS: BS_DEV_RESOURCES times (us): entry 9 run 120239 exit 9
Enabling resources...
done.
BS: BS_DEV_ENABLE times (us): entry 9 run 2982 exit 9
Initializing devices...
Root Device init ...
CBFS @ 20000 size 2e0000
CBFS: 'Master Header Locator' located CBFS at [20000:300000)
CBFS: Locating 'tzbsp_no_xpu.mbn'
CBFS: Found @ offset 13ac0 size 9428
Starting TZBSP
Translation table is @ 0a0f0000
Mapping address range [0x00000000:0x00000000) as uncached
Creating new subtable @0a0f4000 for [0x0a000000:0x0a100000)
Mapping address range [0x0a0c0000:0x0a100000) as writeback
Creating new subtable @0a0f4400 for [0x0a800000:0x0a900000)
Mapping address range [0x0a8c0000:0x0a900000) as writeback
Creating new subtable @0a0f4800 for [0x08600000:0x08700000)
Mapping address range [0x08600000:0x08608000) as writeback
Mapping address range [0x80000000:0xa0000000) as writeback
Mapping address range [0x87300000:0x87500000) as uncached
Setting address range [0xa0000000:0x00000000) as unmapped
Creating new subtable @0a0f4c00 for [0x00000000:0x00100000)
Setting address range [0x00000000:0x00000400) as unmapped
Setting up USB HOST1 controller.
Version = 5533270a
software reset done
USB Host mode reg = 101004
cbmem_add_vpd_calibration_data: added wifi_base64_calibration0 to CBMEM
cbmem_add_vpd_calibration_data: added wifi_base64_calibration1 to CBMEM
Root Device init finished in 537743 usecs
CPU_CLUSTER: 0 init ...
CPU: QCA 40xx
CPU_CLUSTER: 0 init finished in 3792 usecs
Devices initialized
Show all devs... After init.
Root Device: enabled 1
CPU_CLUSTER: 0: enabled 1
BS: BS_DEV_INIT times (us): entry 9 run 561893 exit 3
Finalize devices...
Devices finalized
BS: BS_POST_DEVICE times (us): entry 2 run 3788 exit 2
BS: BS_OS_RESUME_CHECK times (us): entry 2 run 4 exit 1
Writing coreboot table at 0x8724c000
rom_table_end = 0x8724c000
... aligned to 0x87250000
 0. 0000000080000000-000000008724bfff: RAM
 1. 000000008724c000-000000008727ffff: CONFIGURATION TABLES
 2. 0000000087280000-00000000874fffff: RAM
 3. 0000000087500000-0000000087ffffff: RESERVED
 4. 0000000088000000-000000009fffffff: RAM
Reading tristate GPIOs: 0 1 Z = 9 (binary_first base3 number system)
Board ID 9
Passing 5 GPIOs to payload:
            NAME |       PORT | POLARITY |     VALUE
       developer | 0x00000029 |      low |       low
        recovery | 0x00000039 |      low |       low
   write protect | 0x00000035 |      low |       low
           power |  undefined |      low |       low
             lid |  undefined |      low |      high
CBFS @ 20000 size 2e0000
CBFS: 'Master Header Locator' located CBFS at [20000:300000)
Wrote coreboot table at: 8724c000, 0x320 bytes, checksum 4bfe
coreboot table: 824 bytes.
IMD ROOT    0. 8727f000 00001000
IMD SMALL   1. 8727e000 00001000
CONSOLE     2. 8725e000 00020000
TIME STAMP  3. 8725d000 00000400
VBOOT       4. 8725c000 00000c0c
VPD         5. 87254000 00007fec
WIFI CLBR   6. 8724e000 00005e94
COREBOOT    7. 8724c000 00002000
IMD small region:
  IMD ROOT    0. 8727ec00 00000400
  VBOOT SEL   1. 8727ebe0 00000008
BS: BS_WRITE_TABLES times (us): entry 2 run 124480 exit 2
CBFS @ 20000 size 2e0000
CBFS: 'Master Header Locator' located CBFS at [20000:300000)
CBFS: Locating 'fallback/payload'
CBFS: Found @ offset 26800 size 10341
Loading segment from rom address 0x87289428
  code (compression=1)
  New segment dstaddr 0x88104040 memsize 0x1249b70 srcaddr 0x87289460 filesize 0x10309
Loading segment from rom address 0x87289444
  Entry Point 0x88104041
Bounce Buffer at 9ffcf000, 197488 bytes
Loading Segment: addr: 0x0000000088104040 memsz: 0x0000000001249b70 filesz: 0x0000000000010309
lb: [0x00000000872e0000, 0x00000000872f81b8)
Post relocation: addr: 0x0000000088104040 memsz: 0x0000000001249b70 filesz: 0x0000000000010309
using LZMA
[ 0x88104040, 88121470, 0x8934dbb0) <- 87289460
Clearing Segment: addr: 0x0000000088121470 memsz: 0x000000000122c740
dest 88104040, end 8934dbb0, bouncebuffer 9ffcf000
Loaded segments
BS: BS_PAYLOAD_LOAD times (us): entry 2 run 180512 exit 2
Jumping to boot code at 88104041(8724c000)
CPU0: stack: 0a8fc000 - 0a900000, lowest used address 0a8ff6a0, stack used: 2400 bytes


Starting depthcharge on gale...
WARNING: can't convert coreboot GPIOs, 'lid' won't be resampled at runtime!
WARNING: can't convert coreboot GPIOs, 'power' won't be resampled at runtime!
clock_config_mmc : 1
WW_RING: initialized controller found at 0x32
WW_RING: initialized 1 out of 1
The GBB signature is at 0x88004020 and is:  24 47 42 42
Wipe memory regions:
	[0x00000080000000, 0x00000080208000)
	[0x00000080208200, 0x0000008724c000)
	[0x00000087280000, 0x00000087500000)
	[0x0000008934dbb0, 0x0000009ff00000)
Initializing XHCI USB controller at 0x8a00000.
Calling VbSelectAndLoadKernel().
TPM: TlclRead(0x1008, 13)
1.2 TPM (chip type slb9645tt device-id 0x1A)
TPM: command 0xcf returned 0x0
TPM: command 0x65 returned 0x0
TPM: RollbackKernelRead 10001
VbBootRecovery() start
VbBootRecovery() saving recovery reason (0x5b)
VbSetRecoverySubcode(91)
ww_ring_display_screen: did not find program for screen 520
VbBootRecovery() waiting for manual recovery

So, I'm considering doing this on my existing google access points, and I'm just wondering if somebody could give me a list of hubs/drives that "for sure" work. I think I can summarize the rest from reading here.

Hey Digitalhigh

I've been messing with my three units for a while now, had issues installing onto the 2nd and third hub. I believe it came down (for me) to the USB I was using. Successfully flashed the 2nd unit today and hoping I can get the third up and running soon.

I have some pretty old Sandisk / Toshiba 8GB sticks, only the Toshiba seems to work for me. Using a Cygnett hub from a trade show (3 x USB-3, 1x HDMI, no model number sorry) for all devices.

I find that the USB-C hub does matter, those multi-port especially with SD card support are not bootable.

The USB-C hub I used and worked in my case, belongs to this type (fairly simple, just 1xHDMI + 1xUSB-A with PD passthrough):

The memory stick I used was just a 4GB recovery sticks coming along with Juniper routers, it has blue LED so it's easier for me to observe whether it's booting from the stick or not.

Note: Mine is NLS-1304

1 Like

I continued to plug the USB-C hub after getting OpenWrt running, the USB-A port on hub can be used though it's only running in USB 2.0 mode, might be only useful for some little gadgets.

Just casually did one speed test, the LAN to WAN throughput can hit 660Mbps??!! I am a bit surprised by this router.

Thanks for the reply!

I actually got my 3x points flashed to OpenWRT over the course of last weekend. The hub I used is identical to the one @fakemanhk posted.

For drives, I used an old generic "bat-pit" promo USB key for the Recovery Firmware I've had sitting around forever that I never use for anything else because it's old and slow...and for flashing OpenWRT, I used a Sandisk Cruzer USB3.0 drive with no issues.

Only snag I ran into, which was 100% my own fault - was when I tried flashing the last point, and started with the wrong USB drive connected, I quickly unplugged it while the hub was powered on, which I think caused the drive to be corrupted, so the last portion of flashing didn't work.

After using balena to re-flash the OpenWRT firmware to the key, it booted on the first try.

Another observation - I don't think we necessarily have to start the "second" half of the process with the USB key unplugged. I suspect we can just plug up the key, power on the point while holding reset button, wait for amber flashing lights, and then press the dev mode button as usual...skipping the bit about connecting the key after hitting yellow flashing.

Last - does anybody know how to use the kmod-ledtrig-pattern kernel module to make the LED behave more like the points used to where it was like a soft fade-in/out pattern with adjustable brightness?

I've figured out how to set the "max" brightness...at least temporarily...by doing "echo 128 > /sys/class/leds/LED0_Blue/brightness", but imagine that won't persist after a reboot...

So, I may have gone a bit overboard.

After looking at how the triggers in the normal LED settings were interacting with the LED hardware, I set about creating a basic daemon that would run a loop and update the brightness of a single LED in a nice fade-in/fade-out pattern like the points used to do.

I then figured out how to add a UI page to control a single LED...

After that, I was like "Hey, it'd be really neat if we could adjust all three LEDs at once to make whatever color we want."...and so I did. I also added a "fade delay" and "hold" parameter so that we can control how long the LED is off and how long the LED stays on for...as well as a max brightness for each color.

I probably should have just stopped there...but I didn't. I then added tabs in the UI for three separate profiles, which can be triggered by writing a file to /etc/slowled.target and restarting the init.d service.

It's got a proper entry in the system menu, three customizeable configs, and the ability to...say...write another little bit of script and set it to flash red/blue if the internet is down, or yellow if the LAN cable is unplugged...or strobe fast in one condition, etc.

Last bit I have yet to do is make a proper package out of it, so people can just install/uninstall it as desired.

I'll post more screenshots and maybe a vid of the AP colors later...but for now...I'm pretty happy with the results.

1 Like

Okay, I've got a Git repo set up with the files. Still need to make a proper package out of it, but I have a readme with install instructions which shouldn't be too tedious.

Feel free to give it a go and LMK what you think. :smiley:

2 Likes

Could anyone help me to get further?

I tried to follow the ChromiumOS Developer Guide but get stuck at Installing Depmod-tools

I need some shorting of the instructions.

As far as I understand my Google Wifi (Gale) stops already in the bootloader and needs to get a new bootloader and orginal firmware before i can switch it to openwrt.

So if someone is willed to help I would really appreciate it. My cable is shown as

Bus 002 Device 007: ID 18d1:500f Google Inc. 

Bootlog

!! Settings mismatch !! Type [C-a] [C-v] to see actual port settings
Type [C-a] [C-h] to see available commands
Terminal ready


coreboot-60d1b1c Mon Jan  9 00:04:49 UTC 2017 verstage starti