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 a08b731..c1a61da 100644 --- a/library/ht0740/__init__.py +++ b/library/ht0740/__init__.py @@ -1,10 +1,9 @@ from i2cdevice import Device, Register, BitField -__version__ = '0.0.1' +__version__ = '0.0.2' 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..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""", @@ -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'] )