@@ -112,47 +112,6 @@ def _r_w_reg(self, reg, dat, mask):
112
112
self .rb [0 ] = (self .rb [0 ] & mask ) | dat
113
113
self ._setreg (reg , self .rb [0 ])
114
114
115
- def is_connected (self ):
116
- """
117
- Checks whether the IMU is connected
118
-
119
- :return: True if WHO_AM_I value is correct, otherwise False
120
- :rtype: bool
121
- """
122
- who_am_i = self ._getreg (LSM_REG_WHO_AM_I )
123
- return who_am_i == 0x6C
124
-
125
- def reset (self , wait_for_reset = True , wait_timeout_ms = 100 ):
126
- """
127
- Resets the IMU, and restores all registers to their default values
128
-
129
- :param wait_for_reset: Whether to wait for reset to complete
130
- :type wait_for_reset: bool
131
- :param wait_timeout_ms: Timeout in milliseconds when waiting for reset
132
- :type wait_timeout_ms: int
133
- :return: False if timeout occurred, otherwise True
134
- :rtype: bool
135
- """
136
- # Set BOOT and SW_RESET bits
137
- self .reg_ctrl3_c_byte [0 ] = self ._getreg (LSM_REG_CTRL3_C )
138
- self .reg_ctrl3_c_bits .BOOT = 1
139
- self .reg_ctrl3_c_bits .SW_RESET = 1
140
- self ._setreg (LSM_REG_CTRL3_C , self .reg_ctrl3_c_byte [0 ])
141
-
142
- # Wait for reset to complete, if requested
143
- if wait_for_reset :
144
- # Loop with timeout
145
- t0 = time .ticks_ms ()
146
- while time .ticks_ms () < (t0 + wait_timeout_ms ):
147
- # Check if register has returned to default value (0x04)
148
- self .reg_ctrl3_c_byte [0 ] = self ._getreg (LSM_REG_CTRL3_C )
149
- if self .reg_ctrl3_c_byte [0 ] == 0x04 :
150
- return True
151
- # Timeout occurred
152
- return False
153
- else :
154
- return True
155
-
156
115
def _set_bdu (self , bdu = True ):
157
116
"""
158
117
Sets Block Data Update bit
@@ -243,6 +202,47 @@ def _get_acc_gyro_rates(self):
243
202
Public facing API Methods
244
203
"""
245
204
205
+ def is_connected (self ):
206
+ """
207
+ Checks whether the IMU is connected
208
+
209
+ :return: True if WHO_AM_I value is correct, otherwise False
210
+ :rtype: bool
211
+ """
212
+ who_am_i = self ._getreg (LSM_REG_WHO_AM_I )
213
+ return who_am_i == 0x6C
214
+
215
+ def reset (self , wait_for_reset = True , wait_timeout_ms = 100 ):
216
+ """
217
+ Resets the IMU, and restores all registers to their default values
218
+
219
+ :param wait_for_reset: Whether to wait for reset to complete
220
+ :type wait_for_reset: bool
221
+ :param wait_timeout_ms: Timeout in milliseconds when waiting for reset
222
+ :type wait_timeout_ms: int
223
+ :return: False if timeout occurred, otherwise True
224
+ :rtype: bool
225
+ """
226
+ # Set BOOT and SW_RESET bits
227
+ self .reg_ctrl3_c_byte [0 ] = self ._getreg (LSM_REG_CTRL3_C )
228
+ self .reg_ctrl3_c_bits .BOOT = 1
229
+ self .reg_ctrl3_c_bits .SW_RESET = 1
230
+ self ._setreg (LSM_REG_CTRL3_C , self .reg_ctrl3_c_byte [0 ])
231
+
232
+ # Wait for reset to complete, if requested
233
+ if wait_for_reset :
234
+ # Loop with timeout
235
+ t0 = time .ticks_ms ()
236
+ while time .ticks_ms () < (t0 + wait_timeout_ms ):
237
+ # Check if register has returned to default value (0x04)
238
+ self .reg_ctrl3_c_byte [0 ] = self ._getreg (LSM_REG_CTRL3_C )
239
+ if self .reg_ctrl3_c_byte [0 ] == 0x04 :
240
+ return True
241
+ # Timeout occurred
242
+ return False
243
+ else :
244
+ return True
245
+
246
246
def get_acc_x (self ):
247
247
"""
248
248
:return: The current reading for the accelerometer's X-axis, in mg
0 commit comments