Hi, I have a question:
I’m not allowed to use a network manager for my project. Can I modify wifi-connect so that it creates or uses /etc/init.d/interface and /etc/wpa_supplicant.conf?
Bye,
Fabian
Hi Fabian,
Just trying to understand your use-case…
Do you know the credentials of your WiFi network you’re going to deploy to in advance? Or do you require the ability for a customer to connect your device to a WiFi network /after/ shipping your device?
Hi Samuel,
Our devices are not pre-configured with WiFi credentials before shipping. Customers can easily connect the device to their preferred WiFi network after delivery. This setup is handled through WiFi Connect.
Greetings,
Fabian
Hi Fabian,
So wifi-connect (link) uses our rust crate network-manager (link), which interfaces with the HostOS’s NetworkManager over dbus.
Creating a fork of wifi-connectsuch that it doesn’t use the HostOS’s NetworkManager would not be a small fork… it would be a significant project.
You’ll probably need a combination of the following:
hostapd: Creates an access point for your wifi chip.dnsmasq: Handles DHCP and DNS (redirection of traffic to the capture portal to configure wifi credentials)wpa_supplicant: The client that eventually connects to the target Wi-Fi.- A custom web server application (Rust/Python/Node/Go) to serve the page where the user enters passwords.
This would be a drastically different approach than the current wifi-connect block that we provide. This would be a cool open source project to see though, if you’re interested in building it as a new Balena Block!