{"repo":"selfpatch/ros2_medkit","free":true,"listed":false,"github":"https://github.com/selfpatch/ros2_medkit","clone":"git clone https://github.com/selfpatch/ros2_medkit.git","description":"ros2_medkit - diagnostics gateway for ROS 2 robots. Faults, live data, operations, scripts, locking, triggers, and OTA updates via REST API. No SSH, no custom tooling.","language":"C++","stars":250,"topics":["diagnostics","robotics","ros2","edge","fleet","introspection","observability","remote-debugging","rest-api","sovd"],"license":"Apache-2.0","category":"api-integrations-sdks","readme_excerpt":"ros2 medkit A structured diagnostic model for ROS 2 robots, over REST. Drop it next to the stack you already run - no code changes - and a failure that ROS 2 diagnostics leaves as a log line becomes one structured fault: a fault code on a SOVD entity tree, with lifecycle, history, and the state captured at the moment it happened. Drop it into the stack you already run Nav2: a navigation goal that quietly aborts You run Nav2. A NavigateToPose goal aborts - the planner gives up, the robot is wedged in a corner - and the only trace is a line buried in a log you would have to SSH in to read. Start ros2 medkit next to it (no changes to Nav2). The aborted goal becomes a fault: It works because an aborted action goal is often the only failure signal Nav2 emits, and ros2 medkit's action bridge turns that into a structured fault on the bt navigator entity - no instrumentation, no callbacks added to Nav2. [!TIP] Nothing was added to Nav2. The bridge reads the action status your stack already publishes, so the same trick works for any action server - MoveIt, Nav2, or your own nodes. ↳ Another example: MoveIt - a motion that fails to execute You run MoveIt. A MoveGroup goal aborts - no valid plan, or the controller rejects the trajectory. Same story: the same action bridge surfaces the aborted move as a fault on the move group entity, with the freeze-frame of what the arm was doing, without touching MoveIt. Two ways to feed it: - Native, for code you own - report faults directly with the","default_branch":null,"files":null,"tree":[],"storefront":"/r/selfpatch","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/selfpatch/ros2_medkit/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}