Stop unconditionally hogging serial ports #1105

Closed
opened 2026-04-06 05:18:44 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @evg-zhabotinsky on 5/16/2023

SlimeVR server was hogging serial ports unconditionally, even when neither provisioning nor serial console were active and serial connection popup was disabled. (Had to manually open serial console and close it to unhog the port.)

Fixed that.

ProvisioningHandler registers its serial port discovery handler in constructor and never deregisters it.
The handler was unconditionally opening the ports.
Made it bail out if provisioning isn't running, same way as the provisioning timer handler does.

Verified that provisioning still works as intended, both from the serial connection popup and the setup wizard, and that serial console works normally, regardless if it was opened from popup and from settings.
If popup is disabled or dismissed, and also until user clicks wifi/console button in it, the serial now stays free (checked with vscode serial monitor).

*Originally created by @evg-zhabotinsky on 5/16/2023* SlimeVR server was hogging serial ports unconditionally, even when neither provisioning nor serial console were active and serial connection popup was disabled. (Had to manually open serial console and close it to unhog the port.) Fixed that. `ProvisioningHandler` registers its serial port discovery handler in constructor and never deregisters it. The handler was unconditionally opening the ports. Made it bail out if provisioning isn't running, same way as the provisioning timer handler does. Verified that provisioning still works as intended, both from the serial connection popup and the setup wizard, and that serial console works normally, regardless if it was opened from popup and from settings. If popup is disabled or dismissed, and also until user clicks wifi/console button in it, the serial now stays free (checked with vscode serial monitor).
MrUnknownDE added the Type: BugArea: ServerArea: Hardware ProtocolType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugType: BugArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware ProtocolArea: Hardware Protocol labels 2026-04-06 05:21:07 +02:00
Sign in to join this conversation.
No Label Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Hardware Protocol Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug Type: Bug
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/SlimeVR-Server#1105