Bluetooth for Setup

Hi Mozilla Guys,

just trying to gage interest in the following use case:

  1. A user goes to a website and downloads a PWA which allows bluetooth interaction locally.
  2. The PWA searches for a bluetooth address which identifies a first boot Mozilla Gateway.
  3. The PWA connects to the bluetooth connection which allows configuration of the local wifi hotspot. This allows the user to configure the gateway directly via bluetooth.

This would be a much slicker way to allow you to initially connect to your Mozilla GW rather than the GW starting up in ā€˜hotspotā€™ mode.
It would also help for misconfiguration errors, or when the users local WiFi hotspot changes name or password. (This is a particular bug bare for me when I have to reset my Wifi connected speaker when I change my Wifi config).

Later you could imagine this could be an automatic and secure process. So if the house Wifi changes the bluetooth app could automatically update the GW.

What are peoples thoughts on this approach?

Kind regards, Nicholas.

Weā€™ve discussed this and decided to go with the AP approach that we have now. Iā€™d like to see using bluetooth implemented as well and we prototyped it on a previous project.

https://github.com/atilag/ProximityBLEService

https://github.com/atilag/ProximityBLEClient

The only real problem I see with this approach is that it requires a native app since I donā€™t believe that web apps get access to the BLE stuff,

Dave Hylands

Chrome has WebBT support. I know that would look strange to have the first step to set up your Mozilla gateway to be ā€œOpen this url with Chromeā€, but heyā€¦

Hi Dave,

Thanks for the feedback and the link. :slight_smile:

One of my colleagues (peter@oshaughnessy.io) who is working extensively on the browser support for bluetooth thinks it may be possible, but Iā€™m not an expert in this area.

OK I guess itā€™s best for me to try and see if this is practical and possible first and report back my findings.

Iā€™ll probably try this as a python app first and get feedback from you guys. It could be just another way of doing setup?

Kind regards, Nicholas

Hiya, yes, it wouldnā€™t be restricted to just Chrome - thereā€™s also Web Bluetooth support in Samsung Internet and Opera, plus the hope is that other browsers will introduce support in the future.

The idea is that it would provide another possible way to setup the gateway for those with supported devices & browsers (otherwise people can use the existing method). Our thought is that (despite introducing another connection type), it could potentially make the flow a little bit quicker and easier in that case. We could share some wireframes and hopefully a small PWA prototype to share this idea better soon!

Note that the gateway does already broadcast its local IP address using a Bluetooth beacon during first time setup, but it needs to be connected to a network to get an IP address in the first place.

If we implemented a native app to control the gateway then network configuration using Bluetooth might make sense, but weā€™re not currently actively developing any native app(s), except for the Things Controller which could maybe be used for this purpose but that might be a bit convoluted.

If this is possible with WebBluetooth then that might be an option, but a PWA centrally hosted by Mozilla which only works in Blink would be a bit strange. We might want to wait for WebBluetooth to be implemented in Gecko.

What I donā€™t like about this is that it introduces a centralised dependency on Mozilla. I can see how it could make the first time setup simpler for some people though.

2 Likes