Networking: KISS

Drop connman, use wpa-supplicant and just manually configure the thing.
Added by Hammel about 6 years ago

After much time wasting with connman, I've made some decisions about networking. Connman is nice for mobile devices, but my little board is not intended to be another cell phone or tablet. It's initial purpose is to support XBMCBox, which will sit unmoving connected to a TV. So that simplifies this problem. Future uses can add customized packages to support more complex and/or user friendly network configuration.

First, I can drop connman. It doesn't work easily out of the box and there is little information that I can google that tells me how to configure it. There are test tools you can use but these don't seem to provide me anything useful. The whole project makes it look like connman is just a library for controlling things, which means you have to write your own app. Since XBMCBox will be stuck writing an XBMC plugin in Python (yet another thing I don't know yet), I'd rather not slide my way down that rabbit hole.

So back to KISS - keep it simple, stupid.

I can use wpa-supplicant to manually configure my wifi connections. This seems complex when you first start reading the wpa-supplicant documentation, but you can handle the two most likely cases very simply: no security and WPA2 security. And that will be the first goal of the XBMCBox configuration utility, and it doesn't require anything in PiBox that isn't already there. And I can remove connman to clean things up.

Next, the wired port takes a long time to time out on boot right now. That's because there is no wired connection at the moment. This delay is caused by the S45network init script that tries to dhcp on the wired and wifi ports no matter what. I can fix this by using /etc/network/interfaces to tell me which ports to configure. If the port is not specified in that file, then don't try to configure it on boot up. The XBMCBox configuration utility will have to make updates to that file.

Summary:
  1. Pull connman, but push patch for tests enabling to buildroot project first
  2. Return to to XBMCBox's issue #160

Comments