Ryan i have been speaking with a balena colleague. Connman will not work out of the box with balenaOS as we are using Network Manager to manage all the connectivities.
There are 2 possibilities here:
configure balena NM to ignore the WiFi and use Connman
change the code to talk to NM instead of Connman
Ryan at what moment is not working? At the setup? what i see now in the logs is running properly (packet-forwarder).
Ahh unfortunately that’s what I suspected that it’d be conflicting.
Currently when I do get Connman to run in the container, it causes NM on the host to have issues connecting with the VPN I believe.
At the moment for development I have the units connected via ethernet for development which is why the packet forwarder works fine, however most customers would be using wi-fi of which is what it crashes out on.
I suspect the solution then might be to see if the code can be changed to use NM to get it to work with Balena.
I suspect as maybe a worst case senario it might be possible to get the user to connect with wi-fi connect and then in the app say that the user clicks use ethernet instead but it wouldn’t then be as smooth of a process.
I didn’t have a wi-fi configuration file on the hostos at all as I didn’t write the ethernet + wifi image as it requires details (something that wouldn’t be possible when shipping the product to customers).
I have connmand start in the container when it launches, this allows the gateway-config tool to scan for wi-fi networks but seems to break balena control. (Control of containers seems to not work and I get Online (VPN only) show.) and updating containers breaks.
Henc I think it seems to cause a conflict somewhere which potentially means running connmand is out of question unfortunately.
Currently to get it to work I run connman in the container, but by doing that takes control of the interfaces and seems to cause the supervisor to not work.
The dashboard only allows me to open a terminal in it and the buttons to reboot and stop containers doesn’t work along with it not fetching the latest version of the containers.
When I run the service for connman I can then get it to see wi-fi networks in the helium app.
However as soon as the service starts the supervisor seems to loose communication. (Blue-thunder is the one I’m testing on and as you can see is reporting issues).
I’m currently only using a Wi-Fi dongle as our hardware doesn’t have wi-fi (Raspberry Pi Compute Module 3 Based).
The Wi-Fi adaptor doesn’t produce a wifi hotspot, instead a bluetooth dongle advertises as a device a phone can connect to. Then with the application this communicates with the device to provide it with Wi-Fi details and connect it up.