github Lexonight1/thermalright-trcc-linux v8.1.7

latest releases: v9.5.0, v9.4.15, v9.4.14...
one month ago

LED GUI Fix — C# Pattern Mismatch

Bug: Changing LED color/mode/brightness in the GUI corrupted segment displays and desynchronized animations. Closing to system tray froze the LED display.

Root cause: GUI signal handlers were calling CLI-path LEDDevice methods (set_color(), set_mode(), set_brightness()) which force STATIC mode, immediately tick animation, send USB data, and save config — all designed for single CLI commands. This caused double/triple ticks desynchronizing animation state.

Fix: Matched the C# FormLED pattern — GUI handlers now update state only. The 150ms tick timer is the single authority for animation computation + USB send (like C#'s MyTimer_EventSendHidVal).

Changes

  • All 16 LED GUI signal handlers rewritten to call LEDService state methods directly (no immediate tick/send/save)
  • _on_tick wrapped in try/except to prevent silent timer death from unhandled exceptions
  • Periodic config save every ~3s instead of on every color picker drag
  • Safety LED timer restart in showEvent when restoring from system tray
  • 4 new tests (no-immediate-send assertion, zone color propagation, periodic save, tick error handling)

Affected devices

All LED segment displays (PA120, AX120, AK120, LC1, LF8, LF10, LF12, CZ1, LC2, LF11, LF13, LF15)

Don't miss a new thermalright-trcc-linux release

NewReleases is sending notifications on new releases.