Dynamic WiFi configuration

Hello fellow forum users!

I wanted to share a nice dynamic WiFi solution with y’all that I’ve configured for the Jetson Nano.

I’ve long maintained that the best dynamically configurable WiFi solution is what I call the “chromecast” experience (it’s where I personally first saw it). The device will host an access point with a captive portal, and the user logs onto the portal and enters SSID and password information. The device reboots once configured, and will re-enter the host mode access point if the configuration failed. Luckily I know of a nice open source project that offers this exact functionality: https://github.com/balena-io/wifi-connect

I’ve pushed the docker container for aarch64 targets to auto configure WiFi if there is no active WiFi connection upon container start. Check the README.md file on the github page (below) for information on how to use it. The solution hosts an AP with the SSID: TEGRA and hosts a captive portal which allows you to connect to a nearby WiFi. Best of all, it’s running in a container so there’s no system installed dependencies!

I’ve tested this on both the recommended WiFi Nano solutions (Intel PCI and Edimax USB dongle), although I’ve had much better success with the Intel chip, as the Edimax was only finding 2.4 GHz WiFi SSIDs.

Theoretically this solution will also work on the Xavier with no modifications and the TX1/TX2 if you are able to use external WiFi chips and a few modifications to the Dockerfile, but I haven’t tested fully on those platforms.

Feel free to contribute!

github: https://github.com/curtismuntz/jetson-nano-wifi-connect
dockerhub: https://hub.docker.com/r/murtis/jetson-wifi-connect
blog post: https://murt.is/articles/2019-05/jetson-wifi.html

If you want to run this locally instead of in a container, check out the original software for usage instructions:
https://github.com/balena-io/wifi-connect

Great! Thanks for sharing!