-
Notifications
You must be signed in to change notification settings - Fork 1
Connectivity
The Connectivity page manages all wireless connections: XBee controller pairing, Wi-Fi settings, and Bluetooth gamepad pairing.
Once your XBee modules are programmed with matching PAN IDs (see XBee Setup), connected controllers will appear here with their XBee addresses.
| Setting | Description |
|---|---|
| Drive Controller Address | XBee 64-bit address of the controller assigned to drive |
| Dome Controller Address | XBee 64-bit address of the controller assigned to dome |
Tap Pair next to a discovered controller to assign it. The assignment is saved and persists across reboots.
| Setting | Description |
|---|---|
| SSID | The name of the Wi-Fi network Amidala broadcasts. Default: Amidala. |
| Password | Wi-Fi password. Leave blank for an open network. |
| Hostname | mDNS hostname. Default: amidala (resolves as http://amidala.local). |
| Channel | Optional. The Wi-Fi AP's radio channel (1–13). If you're using WCB Client, this must match the mesh's channel — WCB mesh channels only go up to 11, so don't pick 12 or 13 if WCB Client is enabled. See the WCB section below for why this matters. |
Changes take effect after a restart.
WCB (Wireless Communication Board) is an ESP-NOW mesh that lets multiple boards on the same droid — e.g. an Amidala body controller and a separate dome or peripheral controller — exchange commands wirelessly without a wired serial link between them.
| Setting | Description |
|---|---|
| Enable WCB Client | Turns mesh networking on. Everything below only applies once this is on. |
| MAC Octet 2 / MAC Octet 3 (HEX) | Two hex bytes (00–FF) that identify this droid's mesh. Must be identical on every board in the mesh — boards with mismatched octets simply won't see each other. |
| Mesh Password | Shared secret for the mesh (max 39 chars). Must also match across all boards. |
| WCB Quantity | How many boards are expected on this mesh in total. |
| This Device ID | This board's numeric ID on the mesh (1–19, or 20 for the special slot). Every board needs a unique ID. |
| Outbound Destination | Where Amidala sends its outbound commands: the wired UART0 link (the traditional body-controller-out serial), or the WCB Mesh. |
ESP32 boards have one physical radio, and the Wi-Fi access point and the WCB mesh (ESP-NOW) share it — they must be on the same channel. Amidala's Wi-Fi AP always comes up first at boot, so it owns whatever channel is set in the Channel field above; WCB Client is then told to expect that same channel. If the two don't match — e.g. every board defaulted to different channels, or WCB's fleet is actually running on a different channel than this board's Wi-Fi — the mesh won't connect, and the firmware logs a warning to the Serial Monitor's LOG view.
If you're setting up a WCB mesh: pick one channel (1–11) and set it explicitly in the Wi-Fi Channel field on every board — don't leave it blank/default and assume they'll agree.
Right below the WCB Client settings on this page, a Mesh status row shows whether the mesh is currently connected (a green dot and "Connected" once it's actually joined) along with this board's Device ID out of the configured quantity.
Amidala supports standard Bluetooth HID gamepads as an alternative to XBee controllers.
To pair:
- Put your Bluetooth gamepad in pairing mode
- Click Scan on this page
- Select your controller from the list
The paired controller's address is saved. On subsequent boots, Amidala automatically reconnects.
The Droid Status page shows whether the Bluetooth controller is currently connected.