Oh my, thanks very much!
So I got the required packages installed, uploaded new builds with them included. I am trying to connect and it works for a few seconds and then kicks the device off again. If I try to connect from the OnHub, I get this error
Failed to connect: org.bluez.Error.Failed br-connection-profile-unavailable
Did you run into this problem? I've been searching for solutions but haven't found anything yet.
Thanks.
Hey gang,
First of all, thank you KINDLY for all that you've done on this project so far. Much appreciated.
I've got the TPLink OnHub and was able to flash openwrt firmware on it, to the point of getting the rainbow-colored ring on the unit. Presumably, this means I should be able to connect to it on 192.168.1.1.... but nothing I've tried seems to work.
By this point, is there a known repeatable process for reliably getting these things on the network after flashing the snapshot?
I'll be honest, I'm a bit confused by the diverging streams of advice. It seems there's a "general" way of doing it, and then a few tweaked methods provided by individual users. (None of those work for me, by the way, but I'm curious if there's a preferred/stable/reliable version we should be following, to avoid revisiting all the basic troubleshooting steps.)
Thanks in advance!!
I seem to be having the same issue you did (rainbow ring after flashing, but no network access on 192.168.1.1)... can I clarify some of your steps with you?
Factory reset using the google chrome created 'special' USB stick
are you referring to this whirlwind image? If so, that's the one I used too.
Boot OpenWrt from a USB stick
Done, using factory.bin...
SSH into OpenWrt and dd the whole /dev/mmcblock0 with zeros (this will take a while)
?? Huh? SSH into the OnHub? I can't find any open ports on the unit, which is precisely my problem!
What port are you hitting on the OnHub? And what SSH client are you using? I'm doing all this from a linux box, but presumably it shouldn't matter.
SCP the factory image to /tmp on the Onhub
Can you say a bit more about this, please? Is the factory image in .bin format? Where are you SCP'ing it from?
write the factory image to /dev/mmcblock0 using blocksize of 1M (bs=1M)
Same question here, please. I'm assuming your are dd'ing the .bin image file, but where are you performing these commands from/to? Is the bin already on the OnHub and you're just writing it to another partition there? The reason I ask is that I can't get into the OnHub itself, and all these commands assume SSH access into the unit.
reboot with the USB stick removed
Thanks, looking forward to your feedback!
The snapshots do not have a gui installed. So there will be nothing at 192.168.1.1 via a web browser. You should have ssh access, though. If not, I would do a recovery and try again.
Thanks. I wasn't expecting a web response there (as you said, because it's missing LUCI) but I was expecting it to reply on ping or SSH. I've tried the recovery several times now.
I did stumble across this compiled image from stonics. Is that worth trying, at this point?
I've been using the snapshot factory image so far. I get to the coloured rainbow ring but no network connectivity after that.
Thanks!
I think that image is probably outdated at this point. I just had to recover today and reflash and I used a snapshot factory image without a problem to USB boot. Are you writing the image to the USB vs just copying? There are many ways of doing that, I use the balena etcher program.
Correct. I'm familiar with the process, having done it for several devices in the past.
I usually just use dd from a linux box, but in this case I also tried Etcher from a Windows. I tried 3 different USB sticks (all USB 2.0).
For SSH, is it listening on port 22 or some other port?
Thank again.
It's port 22.
I think it might help (if not me, then others reading)... what's the LED colour+pattern during the actual flashing process?
i.e. For factory reset, one can clearly see the transition from WHITE --> ORANGE --> RED. Once done, the device reboots into a slow pulsing CYAN. That's easy to follow.
For flashing WRT, I start off the same (WHITE --> ORANGE --> RED) and then put device in dev mode (blinking BRIGHT PURPLE). But then I notice one of two patterns usually happen here:
- Slow pulsing purple
- A ring of bright alternating RED+ORANGE that swaps between the 2 colors
Are those familiar/significant patterns we should be aware of?
Thanks!!
For the WRT process, starts like you said. white -- orange -- red, then push dev button. Insert USB, the onhub reboots. Cyan -- purple blink -- two beeps -- press dev button again -- purple blink -- light goes out. You should get the rainbow ring next and have WRT running from USB.
Alternating red orange is no good. Either didn't like the USB or corrupt file.
Hi,
I managed to do the initial OpenWrt install according to the description on the webpage but then messed up my network config and had to factory reset and re-install. During the re-install I could USB boot with working network but did not have a working network after flashing. Wiping the whole emmc before flashing fixed my network problems.
If I understand your description correctly you have network issues while the router is running OpenWrt from the USB drive?
I've not had this problem but can only suggest to make sure you wipe the complete USB drive before writing the factory OpenWrt image to it. I would also recommend to write the OpenWrt image using dd with bs=1M as extra argument like it is recommended for x64 images.
Thanks @dadogroove and @konus
Dadogroove, I was performing the steps exactly as described in your last note, and would end up with rainbow ring... just could never connect.
Konus, I'm not sure why it mattered so much, but adding the 1M switch to my dd cmd did the trick!! I'm able to ssh into 22 now! Thank you kindly!
This is the error that I got when I installed pulseaudio-daemon instead of pulseaudio-daemon-avahi, IIRC. I may have also missed a package or two in my list, I'll post my whole diffconfig when I'm back at the device I was building on.
I also did some configuration that I didn't describe in detail my post which may be relevant including setting the device class. Not sure which of this is necessary or not:
Right below [General] in /etc/bluetooth/main.conf:
# Default adapter name
# Defaults to 'BlueZ X.YZ'
Name = OnHub
#Enable=Source
# Default device class. Only the major and minor device class bits are
# considered. Defaults to '0x000000'.
Class = 0x200428
#Class = 0x41C
# How long to stay in discoverable mode before going back to non-discoverable
# The value is in seconds. Default is 180, i.e. 3 minutes.
# 0 = disable timer, i.e. stay discoverable forever
DiscoverableTimeout = 0
# Always allow pairing even if there are no agent registered
# Possible values: true, false
# Default: false
AlwaysPairable = true
The other commented out class is another type of BT audio device I believe (not super knowledgeable on BT), but the one I have there is the one that worked for me.
Sorry for the late response - I had run into the 'OnHub won't boot from eMMC' problem (like what konus is talking about) after having to factory reset it due to placing it into a configuration that made it bootloop repeatedly for some reason - which is very strange. Doesn't help that my LED ring hasn't worked since I got it (used). Just came back to it now, hopefully konus' suggestions will help.
edit: This does indeed seem to be the ticket, for 'USB bootable but not eMMC':
I've got a couple more OnHubs on the way, hopefully the LED ring in one of those will work and I'll be able to reproduce the issue.
Hi. I have Asus Google onhub(SRTAC1900) and tried to install openwrt but failed again and again.
After two beep sound and press dev button, my router shows green ring(not rainbow light) after only a few seconds for it to boot.
Ping 192.168.1.1 is working but I don't know why I couldn't see rainbow ring.
Can anyone help me to solve the problem?
And I have one more question. I typed below in Powershell and then saw the massage.
scp -o openwrt-ipq806x-chromium-tplink_onhub-squashfs-factory.bin root@192.168.1.1:
## and then massage
usage: scp [-346BCpqrTv] [-c cipher] [-F ssh_config] [-i identity_file]
[-J destination] [-l limit] [-o ssh_option] [-P port]
What wrong I did? It is my first time to use SSH.
Did you try to SSH into it after pinging it? Don't concern yourself too much with the exact colors of the ring, just see if you can get a shell.
The scp flag is -O, not -o. Case matters when you're working with *nixes.
@dadogroove One more thing - if you didn't do the edits to the files in /etc/dbus-1/, /etc/pulse/system.pa, and /etc/groups mentioned on the bluetooth audio page I linked, maybe that could be relevant to your issue? I just got my speaker setup back up and running, and one of those edits was needed for everything to work. Honestly not sure which it was. There's also some extra configuration that needs to go into this so that trusting and connecting happens automatically as well, I have to go into bluetoothctl and manually trust each device I want to connect to the speaker. I also needed to remove --disable-module-loading to do some troubleshooting with pacmd, which may have some bearing. I'm not touching it - I'm afraid it'll break.
(edit: Running pacmd/pactl is a little bit complicated since it's running in system mode by default. You have to prepend every command with sudo PULSE_RUNTIME_PATH=/var/run/pulse -u pulse
, after re-enabling module loading by editing the init script or quitting/relaunching pulseaudio. You'll probably have to install sudo to do this.)
I was working on making a better set of directions before I inadvertently locked myself out by triggering (what I now know to be) an NSS driver related kernel panic - that's what was causing my bootloop. In my case it was related to me trying to do WDS bridging, but there are other people using these drivers on routers like the R7800 discussing kernel panics with these drivers before - seems like they're not entirely stable under certain situations.
Sorry for the rather large walls of text, it's partially for posterity, haha.
The other thing that I noticed is that you are using the tp-link file on your ASUS. There is an openwrt-ipq806x-chromium-asus_onhub-squashfs-factory.bin file available. The LED config is different between the devices. I would try that file and see if it makes a difference. I don't have an ASUS variant, yet, but there are separate dts files for the two devices.
I did read the BT audio page that you linked. After reading, I get the sense that this is a bit tricky to get going. The fact that the OnHub can see devices and vice versa is a good start. I made some of the config changes that you have mentioned. I plan on going over it again and try to get it working. Thanks for all the info!
It has to be fun to flash this thing without the help of the light ring. I imagine it's just a timing issue now.
In terms of flashing OpenWRT without the aid of the LED ring, here's my attempt at giving back to this community: I'm attaching approximate timing (from my TPLink model, at least) next to the steps:
- Hold the Reset button while connecting Power
- The LED color shifts from WHITE --> BLINKING ORANGE --> BLINKING RED (15 seconds from the application of power to blinking red, but okay to hold it down for longer (e.g. 20 seconds))
- now release the Reset button
(The next steps are time-sensitive so read ahead and then come back here to execute) - Press and release the Developer mode button at the bottom of the device. (The LED will VERY BRIEFLY blink purple).
- IMMEDIATELY insert the OWRT USB stick
- Unit will restart and pulse cyan briefly, before turning blinking purple. It will then BEEP TWICE. (17 seconds in between Dev button press and the 2 beeps)
- Upon hearing the beeps, IMMEDIATELY press the developer mode button once. (You should hear nothing. If you hear a single "low-tone" beep, re-do these steps.)
- LED will purple blink for a bit, then unit reboots
- Wait a few seconds for it to boot into the USB (where you'll be running the live version of OWRT). Mine took literally 3 seconds, it wasn't long.
You will know it is successfully booted when LED ring shows multiple colors (aka RGB rainbow)
(Another way to check is to connect a cable to the LAN port and continuously ping 192.168.1.1)
Good luck!