Update epd2in13_V4.py

New flag & if condition to track if the display has been initialized &
avoid repeated initialization and accumulation of File descriptors  & system crash.
This commit is contained in:
infinition
2024-11-19 23:42:20 +01:00
committed by GitHub
parent 40c2c53c93
commit 258e212e07

View File

@@ -9,6 +9,7 @@ logger = logging.getLogger(__name__)
class EPD: class EPD:
def __init__(self): def __init__(self):
self.is_initialized = False # New flag to track if the display has been initialized #INFINITION
self.reset_pin = epdconfig.RST_PIN self.reset_pin = epdconfig.RST_PIN
self.dc_pin = epdconfig.DC_PIN self.dc_pin = epdconfig.DC_PIN
self.busy_pin = epdconfig.BUSY_PIN self.busy_pin = epdconfig.BUSY_PIN
@@ -138,11 +139,11 @@ class EPD:
parameter: parameter:
''' '''
def init(self): def init(self):
if (epdconfig.module_init() != 0): if not self.is_initialized: # Avoid repeated initialization and accumulation of File descriptors #INFINITION
if epdconfig.module_init() != 0:
return -1 return -1
# EPD hardware init start
self.reset() self.reset()
self.is_initialized = True
self.ReadBusy() self.ReadBusy()
self.send_command(0x12) #SWRESET self.send_command(0x12) #SWRESET
self.ReadBusy() self.ReadBusy()