Skip to content

Releases: Zenardi/Synaptix

Synaptix v1.6.0

30 Mar 18:01
9b47d6c

Choose a tag to compare

1.6.0 (2026-03-30)

Features

  • Razer Viper Ultimate support — battery, DPI, system tray (issue #8) (da13ad3)

Documentation

  • add Viper Ultimate and BlackWidow V3 Mini HyperSpeed to Hardware-Tested table (cb83a90)

Synaptix v1.5.0

30 Mar 17:43
29f7b9d

Choose a tag to compare

1.5.0 (2026-03-30)

Features

  • protocol+daemon: add BlackWidow V3 Mini HyperSpeed support (issue #9) (66afba9)
  • battery sysfs fix + full openrazer device parity (26 new devices) (a43df71)

Bug Fixes

  • add initial battery query at startup for wireless keyboard (758cd0d)
  • Kraken V4 Pro battery reporting + DeviceDetail Unknown state (b120bd4)
  • lighting txn_id and hide battery ring for no-battery devices (ef15def), closes #9

Synaptix v1.4.0

30 Mar 13:07
2f77c4d

Choose a tag to compare

1.4.0 (2026-03-30)

Features

  • ui: show actionable setup instructions on daemon unavailable (9006783), closes #6

Synaptix v1.3.0

30 Mar 12:43
94061a9

Choose a tag to compare

1.3.0 (2026-03-30)

Features

  • ci: add Trivy security scanning workflow (91cb8d5), closes #14
  • ci: integrate Trivy scans into main CI build-and-test job (12fb684)

Bug Fixes

  • ci: add limit-severities-for-sarif to restrict exit-code to HIGH,CRITICAL (fd689e9), closes #14
  • ci: add missing 'v' prefix to trivy-action version tag (22297e4)
  • ci: upgrade trivy-action to v0.35.0 and upload-sarif to v4 (d58bef0)

Continuous Integration

  • enforce node.js 24 across all CI actions (7b7c904)

Documentation

  • readme: rephrase intro to remove openrazer reference (6544be0)

Synaptix v1.2.0

24 Mar 22:33
a2f8c34

Choose a tag to compare

1.2.0 (2026-03-24)

Features

  • daemon: implement Sidetone & HapticIntensity USB payloads and D-Bus routing (M21) (14696e0)
  • daemon: M21 sidetone/haptic payloads with pid-based D-Bus routing (441ccf2)
  • docs: update architecture diagram and add headset audio image (1f46b90)
  • headset: standard battery query + Tauri mockIPC unit tests + WebDriver E2E setup (660a039)
  • m20: device detail routing, headset UI, version bump to 1.2.0 (c840189), closes #44d62
  • M23: dynamic USB interface routing via registry control_interface (baab4d8)
  • M24: 64-byte haptic HID report for Kraken V4 Pro OLED Hub (549b000)
  • add synaptix-probe binary + PID 0x056c registry entry (8478ee1)
  • volume control via PipeWire (wpctl) + volume slider in AudioTab (4e22715)
  • wire haptics/sidetone Tauri IPC commands (ac5ff32)
  • tray: show headset battery alongside mouse in system tray (c27484e)
  • ui: replace haptic slider with 4-level preset buttons (f2dc7af)

Bug Fixes

  • registry: add HapticFeedback capability to Kraken V4 Pro receiver (0x0567) (f71dafd)
  • test: wrap App renders in MemoryRouter for router context (b28310b)
  • add Kraken V4 Pro headset detection to daemon startup (2d8c833)
  • replace THX toggle switch with Stereo/THX mode selector (25002ff)
  • route all HID write_control/read_control calls through dynamic wIndex (470ef55)
  • battery: read headset response via interrupt IN ep=0x84, not GET_REPORT (89dc72d)
  • battery: reject 0xFF response byte as garbage, validate cmd echo (3921acf)
  • battery: replace hardcoded Full with real query + Unknown fallback (0f20748)
  • daemon: parse cc=0x05/ci=0x00 headset status packets for battery (92ecc4e)
  • daemon: register on D-Bus immediately; resolve headset battery in background (4585d5f)
  • daemon: retry headset battery poll on startup + continue on interrupt error (81a746a)
  • e2e: correct binary path, browserName=wry, robust CSS selectors (f2463ca)
  • haptics: apply Wireshark-verified 64-byte protocol for Kraken V4 Pro (43b35e8)
  • headset: add USB reset fallback to reactivate inactive relay hub (9d88619)
  • headset: correct battery protocol from Wireshark ground truth (7c6b205)
  • headset: correct battery read strategy for unbound ep=0x84 on Linux (a495619)
  • headset: re-add Interface 2 wake trigger to unblock ep=0x84 push (a5fdf8e), closes #1
  • headset: send OUTPUT trigger before read_interrupt to get battery (0f0da8f)
  • headset: switch to passive push-packet listener for battery (cfa2a86)
  • headset-battery: replace cc=0x07 with 90-byte Interface 2 wake query (6be3f9e)
  • headset-battery: TDD active query + diagnostic logger for battery (c5aee06)
  • protocol: omit Sensa HD frame marker when disabling haptics (668e348)
  • ui: show error state in HapticsTab when daemon command fails (a330716)
  • volume slider — use absolute wpctl path, initialize from system (91ab6cc)

Continuous Integration

  • add E2E WebDriver tests to CI pipeline (63df1ce)

Tests

  • ui: add TDD tests for Unknown battery state (headset) (ef039bc)

Documentation

  • add TDD guidelines for new features and bug fixes (abb019c)
  • readme: add Kraken V4 Pro to hardware table + expand Features section (2e79c53)

Code Refactoring

  • ui: extract LightingControl and enforce SoC in DeviceDetail (9587150)

Synaptix v1.1.0

22 Mar 21:11
1c10f0b

Choose a tag to compare

1.1.0 (2026-03-22)

Features

  • detect and display device connection type (Wired/Dongle/Bluetooth) (3c4d219)
  • real-time connection type detection (3-second polling) (a282d26)
  • show charging badge + pulsing ring when USB cable active (4790ad4)

Bug Fixes

  • 1s connection polling + smart wired battery query with retry (8fa0b07)
  • auto-start synaptix-daemon.service if not running on UI launch (46e8c36)
  • correct charging detection and eliminate false 0% battery (35d2e96)
  • discard suspicious 0% battery readings (dongle+cable bug) (5c7603c)
  • eliminate dead_code warnings for STATUS_* protocol constants (9f69ea2)
  • hydrate DPI and lighting state from daemon on UI mount (b01acc3)
  • preserve battery level when cable plugged in (wired = 0% bug) (f798adc)
  • replace tokio::try_join!/select! with two independent spawn tasks (359860d)
  • resolve all cargo clippy warnings (a0ff4d3)
  • track cable presence separately for fast dongle+cable detection (e6db922)
  • update package description to include project details and support link (ce6ac6f)
  • validate USB response status byte — root cause of persistent 0% battery (f8e6586)

Styles

Synaptix v1.0.0

22 Mar 19:10

Choose a tag to compare

1.0.0 (2026-03-22)

⚠ BREAKING CHANGES

  • → major bump (0.3.0 → 1.0.0)
  • Pass generated tag + changelog to softprops/action-gh-release
  • Checkout with fetch-depth: 0 so tag-action can walk full commit history

Workflow: open PR → merge to main → CI builds .deb → tag created →
GitHub Release published automatically. Zero manual steps.

Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com

Continuous Integration

  • auto-release on every merge to main via conventional commit tagging (6d9bc59)

Synaptix v0.3.0

22 Mar 19:07
40a465b

Choose a tag to compare

What's Changed

  • feat(M13): daemon-level battery AppIndicator with notifications by @Zenardi in #1
  • feat(M14–M16): DPI control, state persistence, observability & docs — v0.3.0 by @Zenardi in #3

New Contributors

Full Changelog: v0.1.0...v0.3.0

Synaptix v0.1.0

22 Mar 15:16

Choose a tag to compare