-
v0.3.1 — smooth jogging
Stablereleased this
2026-09-16 17:29:45 +00:00 | 0 commits to main since this releaseJogging a real Lite6 moved the arm in discrete steps rather than travelling. This release
makes it smooth.The fix
set_cartesian_velocitypassedduration=velocity_command_ttl_son every message. That
parameter is a maximum — the SDK documents it as "over this time will automatically set
the speed to 0" — so each message re-armed a half-second timed segment and the controller
re-planned the same motion again.Sending less often does not help: re-arming four times a second steps just as much as
twenty. So the velocity is now set withduration=0("always effective, will not stop
automatically") and an unchanged velocity is not sent to the arm at all. One command
stands until a different one replaces it.Behaviour change worth knowing about
durationwas also the controller-side deadman, and_expire_jogwas relying on it — it
reportedreadywithout commanding anything, because the controller's own timer had
already stopped the arm.VELOCITY_COMMAND_TTL_Sis now enforced by this node rather than by the controller.
Same name, same default (0.5 s), same meaning to a caller: a jog sender that goes quiet
for longer than this gets the arm stopped. What changed is who stops it._expire_jog
now commands the stop itself instead of assuming the controller already did.Nothing to change in a dataflow.
jogbehaves as before from the outside.Tests
86 → 92. Adds
tests/test_driver.py: the driver had no direct coverage, becauseFakeArm
replaces it everywhere else — which is why this was invisible to the suite.Known gap
The new
_expire_jogstop path is covered by unit tests but has not been exercised on
hardware. The smooth-jogging half was confirmed on a real arm; killing a sender mid-jog
to watch the stop fire was not. Worth doing before relying on it.Full detail: liria/dora-ulite6#4
Downloads
-
released this
2026-09-15 21:26:59 +00:00 | 3 commits to main since this releaseThe tag
README.mdanddora-node.ymlhave been advertising. Until now a consumer
following either got an unresolvable ref.What this is
The node speaks dora's service pattern: one request, one response, correlated by the
request_iddora puts in the message metadata. Eleven services, Arrow struct payloads,
and ajoginput taking a base-frame velocity.The FastAPI REST server and web UI are gone — this is a dataflow node and nothing else.
Both remain reachable atv0.1.2.Not drop-in from v0.1.x
command/status→request/response; JSON strings → Arrow structs;action→
service;vacuum_on/vacuum_off→grasp/release;jogis its own input; no
startedmessage.README.mdcarries the full migration notes, including the v0.1.x ones
(web UI removal,DEFAULT_UNITS, tool-tip poses).Verified
86 tests with no robot, dataflow or daemon;
dora validateclean understrict_types;
ruff and markdownlint clean; CI green on this commit.Not verified — no hardware was connected
- That
emergency_stop()followed byclear()leaves the controller accepting the next
motion. First thing to check on real hardware. - That the xArm controller keeps executing a queued motion when the TCP connection drops.
The shutdown-halts-the-arm behaviour assumes it does.
Usage
- id: ulite6 git: ssh://git@gitea.liria.cl:5001/liria/dora-ulite6.git tag: v0.3.0 build: pip install . path: dora-ulite6Downloads
- That
-
v0.1.3 Stable
released this
2026-04-09 13:00:45 +00:00 | 14 commits to main since this releaseChanges
- Fix markdownlint config and README lint errors
- Fix AGENTS.md line-length lint errors
Downloads
-
v0.1.2 Stable
released this
2026-04-02 17:07:28 +00:00 | 16 commits to main since this releaseChanges
- Add
TOOL_TYPEenv var (none,vacuum,gripper) to apply tool Z-offset totcp_pose - Add
TOOL_OFFSET_MMenv var for fine-tuning on top of the preset - Default presets for standard UFactory Lite6 accessories: vacuum = 61 mm, gripper = 65 mm
/api/poseand Doratcp_poseoutput now reflect tool tip position when a tool is configured/api/configexposestool_typeandtool_offset_mm- Web UI TCP pose card title updates to show the active tool
Downloads
- Add
-
v0.1.1 Stable
released this
2026-04-02 16:27:05 +00:00 | 17 commits to main since this releaseFixes
- Refactor
dataflow.ymlto run from local path (removegit/git_checkoutfields) - Pin
dora-rs == 0.5.0to match dora-cli 0.5.0 message format - Bump
requires-pythonto>=3.12to satisfyscipy >= 1.14.0
Downloads
- Refactor