From 1fa9a955dfbe7d3ebeeb33c544060e08d7b0fb9f Mon Sep 17 00:00:00 2001 From: Phil Howard Date: Thu, 5 Sep 2019 12:41:15 +0100 Subject: [PATCH 1/2] Ported to new i2cdevice API --- library/ht0740/__init__.py | 27 +++++++++++++-------------- library/setup.py | 2 +- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/library/ht0740/__init__.py b/library/ht0740/__init__.py index a08b731..bb58bf3 100644 --- a/library/ht0740/__init__.py +++ b/library/ht0740/__init__.py @@ -4,7 +4,6 @@ class IOItem: - def __init__(self, i2c_object, pin_io, inverted=False): self.enabled = True self.status = False @@ -14,17 +13,17 @@ def __init__(self, i2c_object, pin_io, inverted=False): def state(self): if self.inverted: - return ~self.i2c_object.OUTPUT.get_value() >> self.pin_io & 1 + return ~self.i2c_object.get('OUTPUT').value >> self.pin_io & 1 else: - return self.i2c_object.OUTPUT.get_value() >> self.pin_io & 1 + return self.i2c_object.get('OUTPUT').value >> self.pin_io & 1 def set(self, state): if self.enabled: if self.inverted: state = 1 - state - value = self.i2c_object.OUTPUT.get_value() + value = self.i2c_object.get('OUTPUT').value mask = 1 << self.pin_io - self.i2c_object.OUTPUT.set_value(((value & ~mask) | ((state << self.pin_io) & mask))) + self.i2c_object.set('OUTPUT', value=((value & ~mask) | ((state << self.pin_io) & mask))) def on(self): self.set(1) @@ -34,19 +33,18 @@ def off(self): def toggle(self): if self.enabled: - self.i2c_object.OUTPUT.set_value(self.i2c_object.OUTPUT.get_value() ^ (1 << self.pin_io)) + self.i2c_object.set('OUTPUT', value=self.i2c_object.OUTPUT.get_value() ^ (1 << self.pin_io)) def disable(self): - self.i2c_object.CONFIG.set_value(self.i2c_object.CONFIG.get_value() | 1 << self.pin_io) + self.i2c_object.set('CONFIG', value=self.i2c_object.CONFIG.get_value() | 1 << self.pin_io) self.enabled = False def enable(self): - self.i2c_object.CONFIG.set_value(self.i2c_object.CONFIG.get_value() & ~(1 << self.pin_io)) + self.i2c_object.set('CONFIG', value=self.i2c_object.CONFIG.get_value() & ~(1 << self.pin_io)) self.enabled = True class PCA9554A: - def __init__(self, i2c_addr=0x38, i2c_dev=None): self._i2c_addr = i2c_addr self._i2c_dev = i2c_dev @@ -75,10 +73,12 @@ def __init__(self, i2c_addr=0x38, i2c_dev=None): )), )) # Set IO configuration for driving switch and LED - self._pca9554a.OUTPUT.set_switch(0) - self._pca9554a.OUTPUT.set_led(1) - self._pca9554a.CONFIG.set_switch(0) - self._pca9554a.CONFIG.set_led(0) + self._pca9554a.set('OUTPUT', + switch=0, + led=1) + self._pca9554a.set('CONFIG', + switch=0, + led=0) self.led_enable = True self.switch_enabled = True self.led_status = False @@ -86,7 +86,6 @@ def __init__(self, i2c_addr=0x38, i2c_dev=None): class HT0740: - def __init__(self, i2c_addr=0x38, i2c_dev=None): self._i2c_addr = i2c_addr self._i2c_dev = i2c_dev diff --git a/library/setup.py b/library/setup.py index eaa8f97..6f34182 100755 --- a/library/setup.py +++ b/library/setup.py @@ -50,5 +50,5 @@ project_urls={'GitHub': 'https://www.github.com/pimoroni/ht0740-python'}, classifiers=classifiers, packages=['ht0740'], - install_requires=['i2cdevice'] + install_requires=['i2cdevice>=0.0.6'] ) From 2e26e61e211255659185592b9cb2d09b569e8900 Mon Sep 17 00:00:00 2001 From: Phil Howard Date: Fri, 13 Sep 2019 10:55:56 +0100 Subject: [PATCH 2/2] Bump version --- library/CHANGELOG.txt | 5 +++++ library/ht0740/__init__.py | 2 +- library/setup.py | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/library/CHANGELOG.txt b/library/CHANGELOG.txt index 0f98d12..7e3885b 100644 --- a/library/CHANGELOG.txt +++ b/library/CHANGELOG.txt @@ -1,3 +1,8 @@ +0.0.2 +----- + +* Port to new i2cdevice>=0.0.6 set/get API + 0.0.1 ----- diff --git a/library/ht0740/__init__.py b/library/ht0740/__init__.py index bb58bf3..c1a61da 100644 --- a/library/ht0740/__init__.py +++ b/library/ht0740/__init__.py @@ -1,6 +1,6 @@ from i2cdevice import Device, Register, BitField -__version__ = '0.0.1' +__version__ = '0.0.2' class IOItem: diff --git a/library/setup.py b/library/setup.py index 6f34182..a8da8e2 100755 --- a/library/setup.py +++ b/library/setup.py @@ -39,7 +39,7 @@ setup( name='ht0740', - version='0.0.1', + version='0.0.2', author='Gee Bartlett', author_email='gee@pimoroni.com', description="""Python library for the HT0740 Switch""",