Skip to content
Jessica Janiuk edited this page Jul 26, 2026 · 2 revisions

Safety

The Safety page configures Amidala's built-in safety features — things that protect your droid (and bystanders) when something goes wrong.


E-Stop (Emergency Stop)

The e-stop immediately cuts drive and dome motors. It can be triggered by:

  • Pressing the configured e-stop button combination on a controller
  • Via the Droid Control web page
  • Automatically, when a controller disconnects (see Controller Timeout)
  • Automatically, when a firmware update starts (see below)

E-Stop Serial Commands

When an e-stop is triggered, Amidala can broadcast a serial command to connected devices (WCB, etc.) telling them to also stop.

Setting Description
Drive E-Stop Command Serial string sent on drive e-stop
Dome E-Stop Command Serial string sent on dome e-stop

These are useful for stopping any downstream device that might still be running (e.g. a sound effect, a servo, an animated panel) when the droid stops.

E-Stop During Firmware Updates

Flashing new firmware over Wi-Fi blocks the board's main loop for the entire upload — nothing re-reads joystick or throttle input until it finishes. Without an e-stop, the droid would just keep executing whatever it was last commanded to do for the whole flash.

To prevent that, Amidala automatically:

  • E-stops the moment a firmware upload begins — including broadcasting to other boards on the WCB mesh, if configured, so they stop too
  • Resumes once the flash completes successfully, just before the board restarts into the new firmware
  • Resumes if the flash fails for any reason, so a bad upload doesn't leave the droid stuck e-stopped with no way to recover automatically

If something goes wrong and the droid is ever stuck e-stopped with no clear cause (e.g. a dropped Wi-Fi connection mid-upload), use the manual e-stop toggle on the home page to resume.


Controller Timeout

Setting Description
Controller Timeout How long (ms) without a signal before a controller is considered disconnected. When the drive controller times out, the drive is stopped automatically.

This protects against the droid driving away if the remote loses signal. Set it low enough to react quickly but high enough to tolerate brief RF gaps.


Drive Inactivity Timeout

Setting Description
Inactivity Timeout How long (ms) at zero throttle before drive motor outputs are disabled. Prevents motor controllers from staying powered and heating up when the droid is parked.

Dome Obstruction

The dome motor is cut automatically when the dome stops moving during a commanded move (indicating it hit something). See Dome Drive — RoboClaw for the stall timeout setting.

Clone this wiki locally