Hello Particle Community! I’m Dan Kouba, a Sr. Solutions Architect on the Particle team, and I’m excited to share a solution I put together to address some of the challenges we’ve heard from you around provisioning Argons in the field.
The solution is in two parts:
- A firmware library (
ble-wifi-setup-manager
, available in the Particle library system) that exposes a custom WiFi configuration service via BLE. It uses a simple JSON interface to enable another device to initiate WiFi scans on the Argon, and provision it with credentials for a given SSID. - A static example webpage that can be used to access the configuration service and provision a device using Chromes Web Bluetooth standard and some basic Javascript. The webpage can easily be embedded into your own website (e.g. https://mycompany.com/wifi-setup) and white labelled for your customers to access remotely.
The configuration webpage example will work on any desktop OS or on Android devices running a recent build of Chrome. However, it does not currently work natively on iOS devices, as Apple has not implemented the Web Bluetooth stack. There does exist at least one paid application in the Apple store that supports the standard however, so that could be an option to get around this.
If you’re interested in trying this out, you can find the example webpage and a link to my firmware library here on my Github Pages account.
Any and all contributions from the community are appreciated! I plan to develop a few additional features in the coming weeks myself.