• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

TUM-Aries-Lab / motor-module / 35588894726
74%

Build:
DEFAULT BRANCH: main
Ran 21 Sep 2026 10:29AM UTC
Jobs 1
Files 13
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

21 Sep 2026 10:27AM UTC coverage: 73.291% (+0.7%) from 72.613%
35588894726

push

github

NGierden
Enable MIT mode by sending the frame that enables it

enable_mit_mode() reported success against motors that had not entered motor
mode. It sent a zeroed MIT payload, saw feedback come back, and returned:

    sent = self._send_mit_payload(neutral, capture_response=True)
    if sent and self._last_feedback_monotonic > feedback_before:
        self._mit_enabled = True
        logger.info("MIT mode ready via direct MIT command handshake")
        return

A motor answers an MIT-format frame whether or not it is enabled, so that
reply proves it is alive and nothing more. The FF..FC helper frame is what
actually enters motor mode, and it sat below that early return as a fallback
which, on every healthy bus, was never reached.

Found on the bench. An exosuit control loop commanded up to 5.5 rad/s with
kd 1.0 for fifteen seconds and the motor did not move: commands accepted, no
exception, MIT mode logged as ready, position and speed reported live, and the
torque field frozen at one value for the entire run. Four stages isolated it
-- set_mit_mode alone, set_velocity alone, and set_velocity after
check_communication all stalled, while adding send_neutral_command(), which
despite its name sends FF..FC, turned the shaft 67 degrees.

The helper frame now goes first, and the MIT payload that follows is how the
enable is verified rather than how it is attempted. The helper is sent without
capturing a response: it is a fire-and-forget command that proves nothing by
replying, and requiring a reply would only add a second thing to fail.

Where no helper frame is available -- the strict policy -- the old direct
handshake remains, because those callers need something, but it now warns that
the enable is unverified instead of logging readiness. That is the case where
a motor can still accept commands and produce no torque, and it should say so.

send_neutral_command()'s docstring is corrected too. It claimed to return
telemetry, copied from get_status(), while sending t... (continued)

1512 of 2063 relevant lines covered (73.29%)

0.73 hits per line

Coverage Regressions

Lines Coverage ∆ File
61
72.9
1.68% motor_python/cube_mars_motor_can.py
Jobs
ID Job ID Ran Files Coverage
1 35588894726.1 21 Sep 2026 10:29AM UTC 13
73.29
GitHub Action Run
Source Files on build 35588894726
  • Tree
  • List 13
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #35588894726
  • d4bbf27a on github
  • Prev Build on main (#35335427412)
  • Next Build on main (#35756885148)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc