Wifi Network Bootstrap for the Raspberry Pi
Comitup is a software package that provides a service to establish Wifi
networking on a headless computer (that is, one with no video, keyboard, or mouse).
Comitup supports the following capabilities:
- The comitup service, which automatically connects to any previously
established
Wifi Access Points, if possible. Otherwise, it will create a stand-alone
Access Point with the name (SSID) ‘comitup-<nnn>’,
where ‘<nnn>’ is a unique, persistent number.
- Defined ZeroConf mdns address name for
‘comitup-<nnn>.local’, advertising the IP address of the Raspbery
Pi on all interfaces.
- Connection information is published as a _comitup._tcp service, visible
using a ZeroConf Browser.
- A comitup-web service, which provides a web interface for selecting and
authenticating against an existing Access Point.
- A captive portal, facilitating discovery of the web service on systems
that support it.
- The portal also features a “Locate” function that will blink the front
green LED on a a Raspberry Pi, allowing the user to discriminate between
multiple Comitup Pi’s.
- If two wifi interfaces are available on the device, the comitup hotspot
will remain on one, and the other will be used for the upstream connection.
Routing/masquerading between the two networks is established automatically.
- A comitup-cli command-line utility for interacting with comitup.
The Comitup Image is a microSD disk image for the Raspberry Pi, providing
an operating system with the comitup service included. The Comitup Image is an
extension of standard Raspberry Pi OS which includes Comitup, and supports
the following additional
capabilities:
- The ssh service is enabled by default. Be sure to change the default user
password.
- The Raspberry Pi Ethernet port will automatically configure for the host
network if possible. If a DHCP server is not found, the port will set to
a static configuration, with an IP address of 10.0.0.2/24.
- The hostname will be set to the comitup AP name on first
boot.
Getting Comitup
You can get Comitup by installing the package, or by downloading a Raspberry Pi
OS image including the package (the preferred method).
NOTE: Starting with the 2022-04-16 image, the local “pi” user has been replaced
with the default “comitup” user. The password matches the user name - change it
with the first logon
Comitup Image
To burn onto an SD card for the Raspberry Pi.
- Comitup Lite Image (2.8 GB, 850 MB compressed)
- Comitup Image (5.4 GB, 1.8 GB compressed)
Package Installation
- Raspberry Pi OS/Debian users can install the package with “sudo apt-get
install comitup” (Bookworm users note that an updated python3-networkmanager package is required, available in the
Comitup repository).
- New package versions are available in the Package Archive or
the comitup repository (there is also a third-party RPM repo). The latest version can be downloaded
here.
- Remove any references to wifi interfaces in “/etc/network/interfaces” so that
Network Manager/Comitup can manage them.
- See Installing
Comitup for
other possible installation issues.
Documentation
Support/Feedback
- Comitup-Watch
-
Continuously monitor the status of connected and unconnected nearby Comitup-enabled devices.
- Comitup-Demo
-
Demonstrate the operation of a Comitup-enabled device, reporting
connection status progress using voice synthesis.