Add OpenRGB reconnect and retry behavior #16

Closed
opened 2026-05-05 02:16:39 -04:00 by JackFrostbyte · 1 comment

Title:
Add OpenRGB reconnect and retry behavior

Description:
Make the controller handle OpenRGB startup timing and temporary connection failures more gracefully.

Scope:

  • Retry connection to the OpenRGB SDK server for a limited time.
  • Provide clear error messages when OpenRGB is unavailable.
  • Avoid writing RGB until mapping validation succeeds.
  • Do not enter an unsafe partial-running state.

Acceptance criteria:

  • Controller can wait briefly for OpenRGB to become available.
  • If OpenRGB remains unavailable, the controller exits safely.
  • No RGB writes happen before validation.
Title: Add OpenRGB reconnect and retry behavior Description: Make the controller handle OpenRGB startup timing and temporary connection failures more gracefully. Scope: - Retry connection to the OpenRGB SDK server for a limited time. - Provide clear error messages when OpenRGB is unavailable. - Avoid writing RGB until mapping validation succeeds. - Do not enter an unsafe partial-running state. Acceptance criteria: - Controller can wait briefly for OpenRGB to become available. - If OpenRGB remains unavailable, the controller exits safely. - No RGB writes happen before validation.
Author
Owner

Implemented in PR #36 and merged into main.

Summary:

  • Added limited OpenRGB startup retry behavior.
  • Runtime now attempts OpenRGB connection up to 3 times with a 2-second delay between attempts.
  • OpenRGB unavailable/refused connection exits cleanly with code 3.
  • Runtime OpenRGB disconnects are now handled cleanly without a messy traceback.
  • Blank disconnect details now log as no additional details.
  • Mapping/config validation errors remain clear and are not hidden by retry behavior.
  • Dry-run behavior remains hardware-free and still avoids OpenRGB connection and RGB writes.
  • Reserved ARGB zone remains untouched.

Validated:

  • ruff format src/rgb_aura
  • ruff check src/rgb_aura scripts tests
  • dry-run scheduler preview
  • OpenRGB unavailable startup retry test
  • normal 20-second runtime test
  • runtime disconnect test while RGB Aura was running

Commit:

  • 5d710da Add OpenRGB reconnect and retry behavior

Closing as completed.

Implemented in PR #36 and merged into `main`. Summary: - Added limited OpenRGB startup retry behavior. - Runtime now attempts OpenRGB connection up to 3 times with a 2-second delay between attempts. - OpenRGB unavailable/refused connection exits cleanly with code `3`. - Runtime OpenRGB disconnects are now handled cleanly without a messy traceback. - Blank disconnect details now log as `no additional details`. - Mapping/config validation errors remain clear and are not hidden by retry behavior. - Dry-run behavior remains hardware-free and still avoids OpenRGB connection and RGB writes. - Reserved ARGB zone remains untouched. Validated: - `ruff format src/rgb_aura` - `ruff check src/rgb_aura scripts tests` - dry-run scheduler preview - OpenRGB unavailable startup retry test - normal 20-second runtime test - runtime disconnect test while RGB Aura was running Commit: - `5d710da Add OpenRGB reconnect and retry behavior` Closing as completed.
Sign in to join this conversation.
No labels
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
JackFrostbyte/rgb-aura#16
No description provided.