Skip to content

Commit 7084075

Browse files
authored
Merge pull request #15 from tcfranks/main
Correct Missing Type Annotations
2 parents 96b0f78 + 7b784f6 commit 7084075

File tree

1 file changed

+17
-8
lines changed

1 file changed

+17
-8
lines changed

adafruit_tlv493d.py

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@
3232
import adafruit_bus_device.i2c_device as i2cdevice
3333
from micropython import const
3434

35+
try:
36+
from typing import Tuple
37+
from busio import I2C
38+
except ImportError:
39+
pass
40+
3541
__version__ = "0.0.0+auto.0"
3642
__repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_TLV493D.git"
3743

@@ -102,7 +108,9 @@ class TLV493D:
102108
"RES3": (3, 0x1F, 0),
103109
}
104110

105-
def __init__(self, i2c_bus, address=_TLV493D_DEFAULT_ADDRESS, addr_reg=0):
111+
def __init__(
112+
self, i2c_bus: I2C, address: int = _TLV493D_DEFAULT_ADDRESS, addr_reg: int = 0
113+
) -> None:
106114
self.i2c_device = i2cdevice.I2CDevice(i2c_bus, address)
107115
self.read_buffer = bytearray(10)
108116
self.write_buffer = bytearray(4)
@@ -119,36 +127,36 @@ def __init__(self, i2c_bus, address=_TLV493D_DEFAULT_ADDRESS, addr_reg=0):
119127
self._set_write_key("LOWPOWER", 1)
120128
self._write_i2c()
121129

122-
def _read_i2c(self):
130+
def _read_i2c(self) -> None:
123131
with self.i2c_device as i2c:
124132
i2c.readinto(self.read_buffer)
125133
# self.print_bytes(self.read_buffer)
126134

127-
def _write_i2c(self):
135+
def _write_i2c(self) -> None:
128136
with self.i2c_device as i2c:
129137
i2c.write(self.write_buffer)
130138

131-
def _setup_write_buffer(self):
139+
def _setup_write_buffer(self) -> None:
132140
self._read_i2c()
133141
for key in ["RES1", "RES2", "RES3"]:
134142
write_value = self._get_read_key(key)
135143
self._set_write_key(key, write_value)
136144

137-
def _get_read_key(self, key):
145+
def _get_read_key(self, key: str) -> int:
138146
read_byte_num, read_mask, read_shift = self.read_masks[key]
139147
raw_read_value = self.read_buffer[read_byte_num]
140148
write_value = (raw_read_value & read_mask) >> read_shift
141149
return write_value
142150

143-
def _set_write_key(self, key, value):
151+
def _set_write_key(self, key: str, value: int) -> None:
144152
write_byte_num, write_mask, write_shift = self.write_masks[key]
145153
current_write_byte = self.write_buffer[write_byte_num]
146154
current_write_byte &= ~write_mask
147155
current_write_byte |= value << write_shift
148156
self.write_buffer[write_byte_num] = current_write_byte
149157

150158
@property
151-
def magnetic(self):
159+
def magnetic(self) -> Tuple[float, float, float]:
152160
"""The processed magnetometer sensor values.
153161
A 3-tuple of X, Y, Z axis values in microteslas that are signed floats.
154162
"""
@@ -166,7 +174,8 @@ def magnetic(self):
166174
self._unpack_and_scale(z_top, z_bot),
167175
)
168176

169-
def _unpack_and_scale(self, top, bottom): # pylint: disable=no-self-use
177+
@staticmethod
178+
def _unpack_and_scale(top: int, bottom: int) -> float:
170179
binval = struct.unpack_from(">h", bytearray([top, bottom]))[0]
171180
binval = binval >> 4
172181
return binval * 0.098

0 commit comments

Comments
 (0)