From fbfea3b44007a2186468a57b0a27062d1060085d Mon Sep 17 00:00:00 2001 From: Andreas Motl Date: Mon, 23 Mar 2020 04:07:13 +0100 Subject: [PATCH] drivers/onewire: Fix undefined variable errors. On CPython, and with pylint, the variables MATCH_ROM and SEARCH_ROM are undefined. This code works in MicroPython because these variables are constants and the MicroPython parser/compiler optimises them out. But it is not valid Python because they are technically undefined within the scope they are used. This commit makes the code valid Python code. The const part is removed completely because these constants are part of the public API and so cannot be moved to the global scope (where they could still use the MicroPython const optimisation). --- drivers/onewire/onewire.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/onewire/onewire.py b/drivers/onewire/onewire.py index dd8c274fcf..4c6da741c7 100644 --- a/drivers/onewire/onewire.py +++ b/drivers/onewire/onewire.py @@ -1,7 +1,6 @@ # 1-Wire driver for MicroPython # MIT license; Copyright (c) 2016 Damien P. George -from micropython import const import _onewire as _ow @@ -10,9 +9,9 @@ class OneWireError(Exception): class OneWire: - SEARCH_ROM = const(0xF0) - MATCH_ROM = const(0x55) - SKIP_ROM = const(0xCC) + SEARCH_ROM = 0xF0 + MATCH_ROM = 0x55 + SKIP_ROM = 0xCC def __init__(self, pin): self.pin = pin @@ -46,7 +45,7 @@ class OneWire: def select_rom(self, rom): self.reset() - self.writebyte(MATCH_ROM) + self.writebyte(self.MATCH_ROM) self.write(rom) def scan(self): @@ -64,7 +63,7 @@ class OneWire: def _search_rom(self, l_rom, diff): if not self.reset(): return None, 0 - self.writebyte(SEARCH_ROM) + self.writebyte(self.SEARCH_ROM) if not l_rom: l_rom = bytearray(8) rom = bytearray(8)