Handle serial port never being opened due to failure on interface detach for RNodeInterface
Some checks failed
Build Reticulum / test (push) Has been cancelled
Build Reticulum / package (push) Has been cancelled
Build Reticulum / release (push) Has been cancelled

This commit is contained in:
Mark Qvist 2025-11-11 10:29:06 +01:00
parent 1f91a8f6f2
commit 5beea74eb3
2 changed files with 16 additions and 10 deletions

View file

@ -1528,12 +1528,15 @@ class RNodeInterface(Interface):
def detach(self): def detach(self):
self.detached = True self.detached = True
try:
self.disable_external_framebuffer() self.disable_external_framebuffer()
self.setRadioState(KISS.RADIO_STATE_OFF) self.setRadioState(KISS.RADIO_STATE_OFF)
self.leave() self.leave()
if self.use_ble: except Exception as e:
self.ble.close() RNS.log(f"An error occurred while detaching {self}: {e}", RNS.LOG_ERROR)
if self.use_ble: self.ble.close()
def should_ingress_limit(self): def should_ingress_limit(self):
return False return False

View file

@ -1124,12 +1124,15 @@ class RNodeInterface(Interface):
def detach(self): def detach(self):
self.detached = True self.detached = True
try:
self.disable_external_framebuffer() self.disable_external_framebuffer()
self.setRadioState(KISS.RADIO_STATE_OFF) self.setRadioState(KISS.RADIO_STATE_OFF)
self.leave() self.leave()
if self.use_ble: except Exception as e:
self.ble.close() RNS.log(f"An error occurred while detaching {self}: {e}", RNS.LOG_ERROR)
if self.use_ble: self.ble.close()
def should_ingress_limit(self): def should_ingress_limit(self):
return False return False