Skip to content
SoftwareOfficial source

MicroDuck daemon 0.15.0: Changes and Checks Before Updating

Daemon 0.15.0 was released on September 23, 2026. If you have a robot or dev board, first read robotctl version, update status, update check daemon and health --check. The release improves gamepad-disconnect handling and makes update-source and remote registration problems easier to diagnose; published release notes are not a hardware test by this site.

Pollen Robotics published daemon 0.15.0 on September 23, 2026 at commit a9ec4b2. This site reviewed the release, merged change descriptions and command reference on September 28. We did not install it on a physical robot.

Start with four read-only answers.

If your robot has not arrived, keep this as a version reference; there is nothing to install on a preorder. On a robot or dev board, read the running version and the available stable release before deciding to change it. The official command reference says these checks do not need sudo. Official robotctl update and health commands ↗

Inspect version, source and health
robotctl version
robotctl update status
robotctl update check daemon
robotctl health --check

version distinguishes the live daemons from what is installed. update status shows when the signed update source last answered; health --check asks it now. An old last-answer time points to a source or network question, not proof that a new release exists. The source-freshness change records only a verified answer, and its authors explicitly note that replayed old signed metadata is outside this check. Update-source freshness change ↗

What changed for everyday use?

A gamepad that disconnects mid-hold now clears the pending Select and D-pad-up hold state. Reconnecting after a gap should no longer turn the old hold into an unintended shutdown or mode change. This is a reported software fix, not a physical reconnect test performed by this site. Gamepad disconnect fix ↗

robotctl health now explains whether the remote service lists the robot, under which account, whether a heartbeat is stale, or why registration is retrying. Compare that line with robotctl account status if the robot is missing from your account. Remove account names and tokens before sharing a support log. The new line does not change the health command's exit code. Remote registration health change ↗

Developers consuming robot.state can now receive measured servo velocities and currents, alongside positions. Older daemon frames can omit the new arrays; absent data must not be read as zero load. Current is a sensor reading, not a calibrated measurement of contact force. Servo state telemetry change ↗

Update only when the board and timing are ready.

First capture the four checks above and the current policy list. Support the robot, keep power stable and allow the daemons to restart. The stable command is sudo robotctl update apply daemon; it may briefly interrupt control and connections. Afterward compare the running version, health and update history. The official updater verifies the release and health-gates it; a manual rollback needs a previously installed release. Official robotctl update and health commands ↗

After an intentional update
robotctl version
robotctl health
robotctl update log
robotctl update show

If an update failed, read the log and the reported component before considering sudo robotctl update rollback daemon. Do not treat a release note, a passing simulator, or the presence of telemetry fields as proof that a specific robot's motors, radio or remote account have been tested. Official daemon 0.15.0 release ↗

Where to go next.

CONTINUE THE CONVERSATION

What would you like to understand next?

Keep the source, your environment and your observations together.