@@ -60,12 +60,12 @@ class I2CDevice:
60
60
61
61
def __init__ (self , i2c , device_address , probe = True ):
62
62
63
- if probe :
64
- self .__probe_for_device ()
65
-
66
63
self .i2c = i2c
67
64
self .device_address = device_address
68
65
66
+ if probe :
67
+ self .__probe_for_device ()
68
+
69
69
def readinto (self , buf , ** kwargs ):
70
70
"""
71
71
Read into ``buf`` from the device. The number of bytes read will be the
@@ -157,17 +157,17 @@ def __probe_for_device(self):
157
157
if you get an OSError it means the device is not there
158
158
or that the device does not support these means of probing
159
159
"""
160
- while not i2c .try_lock ():
160
+ while not self . i2c .try_lock ():
161
161
pass
162
162
try :
163
- i2c .writeto (device_address , b'' )
163
+ self . i2c .writeto (self . device_address , b'' )
164
164
except OSError :
165
165
# some OS's dont like writing an empty bytesting...
166
166
# Retry by reading a byte
167
167
try :
168
168
result = bytearray (1 )
169
- i2c .readfrom_into (device_address , result )
169
+ self . i2c .readfrom_into (self . device_address , result )
170
170
except OSError :
171
- raise ValueError ("No I2C device at address: %x" % device_address )
171
+ raise ValueError ("No I2C device at address: %x" % self . device_address )
172
172
finally :
173
- i2c .unlock ()
173
+ self . i2c .unlock ()
0 commit comments