Skip to content

Release 2.1.9 - #15

Merged
liangshaoteng merged 1 commit into
mainfrom
dev
Aug 19, 2026
Merged

liangshaoteng merged 1 commit into
mainfrom
dev

Conversation

@liangshaoteng

Copy link
Copy Markdown
Collaborator

This release centers on the new web teach-pendant tooling, lower-level protocol compatibility improvements, and key stability fixes.

[Web Teach Pendant]

  • Brand-new pure-Python, dependency-free web teach pendant, with a web_bridge bridging example for easy debugging.
  • Reworked settings panel: left-side tabs (Connection / Frequency / About) with instant Chinese/English UI switching.
  • Enhanced live connection management: switch hand model and communication type, with hot-reconnect and disconnect support.
  • Full device-info display: all fields shown, serial number pinned to the top, with automatic re-fetch of late-arriving data.
  • UI consolidation: joint monitoring merged with control, tactile matrix centered, layout better suited to real operation.
  • Waveform chart adds a palm force-sum curve, auto-hidden when no data to avoid clutter.
  • Joints deviating from their target are flagged orange, with synced EN/CN text for quick deviation spotting.
  • Adjustable data-refresh rate; the About tab links to the official website for more resources.

[Driver & Protocol Enhancements]

  • L6 / O6 / G20: new full-palm tactile interface with structured SN parsing.
  • L10: support for the new device-info protocol (C0/C1/C2/C4), correctly reading the serial number and hardware/software/mechanical versions.
  • G20: adapt TSSP_HWK / TSSP_JZG tactile protocols by 0xB0 type.
  • O6: drive tactile and palm request handling automatically based on SN parsing.
  • O20: SocketCAN CAN-FD backend (CommFactory::createCanFDSocket + CanFDSocket); added dual-side probing and automatic device_id correction.

[Key Fixes]

  • Fix L7 getForce double-locking deadlock that left the web pendant with no control and no feedback.
  • Fix empty L6 device info (no placeholder emitted before the serial is ready; request is resent on query).
  • Fix G20 getVersion to wait for all SN frames, resolving "Unknown" Device Serial.
  • Fix auto-probe channel cold-start warm-up failure.
  • Fix O20 device-info byte-offset alignment to the firmware protocol; handle incomplete tactile data across different L10 versions.
  • Fix log noise: Modbus write-response CRC warning flooding and web-disconnect flooding.

[Public API & Examples]

  • New full-palm tactile APIs in public headers: getPalmForce / getFingerForceSum / getPalmForceSum.
  • New examples test_l6_can_0, test_o20_canfd_double, test_o20_canfd_socket_0; linker_hand_example / test_g20_can_1 now demonstrate palm-matrix and force-sum reads.
  • Example build now includes web_bridge, the new examples, and a Linux-only SocketCAN CAN-FD group.
  • Add can-autocfg.sh: CAN channel auto-configuration script.

[Build & Docs]

  • Build-tree .so switched to relocatable rpath, fixing libcanbus resolution.
  • Prebuilt libraries refreshed: linux x86_64/arm64 bumped to .so.2.1.9 (2.0.0 removed), win64 mingw/msvc dll/lib updated in sync.
  • Updated docs for the full-palm tactile API, O20 CAN-FD usage, and Modbus serial authorization; README now embeds light/dark webui screenshots.

This release centers on the new web teach-pendant tooling, lower-level protocol
compatibility improvements, and key stability fixes.

[Web Teach Pendant]
- Brand-new pure-Python, dependency-free web teach pendant, with a web_bridge
  bridging example for easy debugging.
- Reworked settings panel: left-side tabs (Connection / Frequency / About) with
  instant Chinese/English UI switching.
- Enhanced live connection management: switch hand model and communication type,
  with hot-reconnect and disconnect support.
- Full device-info display: all fields shown, serial number pinned to the top,
  with automatic re-fetch of late-arriving data.
- UI consolidation: joint monitoring merged with control, tactile matrix centered,
  layout better suited to real operation.
- Waveform chart adds a palm force-sum curve, auto-hidden when no data to avoid clutter.
- Joints deviating from their target are flagged orange, with synced EN/CN text for
  quick deviation spotting.
- Adjustable data-refresh rate; the About tab links to the official website for
  more resources.

[Driver & Protocol Enhancements]
- L6 / O6 / G20: new full-palm tactile interface with structured SN parsing.
- L10: support for the new device-info protocol (C0/C1/C2/C4), correctly reading
  the serial number and hardware/software/mechanical versions.
- G20: adapt TSSP_HWK / TSSP_JZG tactile protocols by 0xB0 type.
- O6: drive tactile and palm request handling automatically based on SN parsing.
- O20: SocketCAN CAN-FD backend (CommFactory::createCanFDSocket + CanFDSocket);
  added dual-side probing and automatic device_id correction.

[Key Fixes]
- Fix L7 getForce double-locking deadlock that left the web pendant with no
  control and no feedback.
- Fix empty L6 device info (no placeholder emitted before the serial is ready;
  request is resent on query).
- Fix G20 getVersion to wait for all SN frames, resolving "Unknown" Device Serial.
- Fix auto-probe channel cold-start warm-up failure.
- Fix O20 device-info byte-offset alignment to the firmware protocol; handle
  incomplete tactile data across different L10 versions.
- Fix log noise: Modbus write-response CRC warning flooding and web-disconnect
  flooding.

[Public API & Examples]
- New full-palm tactile APIs in public headers: getPalmForce / getFingerForceSum
  / getPalmForceSum.
- New examples test_l6_can_0, test_o20_canfd_double, test_o20_canfd_socket_0;
  linker_hand_example / test_g20_can_1 now demonstrate palm-matrix and
  force-sum reads.
- Example build now includes web_bridge, the new examples, and a Linux-only
  SocketCAN CAN-FD group.
- Add can-autocfg.sh: CAN channel auto-configuration script.

[Build & Docs]
- Build-tree .so switched to relocatable rpath, fixing libcanbus resolution.
- Prebuilt libraries refreshed: linux x86_64/arm64 bumped to .so.2.1.9 (2.0.0
  removed), win64 mingw/msvc dll/lib updated in sync.
- Updated docs for the full-palm tactile API, O20 CAN-FD usage, and Modbus serial
  authorization; README now embeds light/dark webui screenshots.
@liangshaoteng
liangshaoteng merged commit a0100cf into main Aug 19, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant