Handle multiple HALLCONF values (Resolves #19) #27
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add functionality to handle multiple
HALLCONF
values inAdafruit_MLX90393.py
by mimicking approach used in the Arduino library for this device (as per @caternuson):Add comment listing valid values for
HALLCONF
(i.e., 0x0C or 0x00)Add level of nesting to
_LSB_LOOKUP
to accommodate multipleHALLCONF
valuesAdd lookup information for
HALLCONF = 0x00
to_LSB_LOOKUP
. Confirmed values against most recent datasheet (rev. 06)In
@property magnetic()
:HALLCONF
values and raiseValueError
if not0x0C
or0x00
_LSB_LOOKUP
index as appropriate forHALLCONF
_LSB_LOOKUP
with additional level of nestingNOTE: The code in property
magnetic()
deviates from the Arduino version in that it uses the appropriate_LSB_LOOKUP
values based on the value ofHALLCONF
, whereas the Arduino version has the index hardcoded to[0]
so it always uses theHALLCONF = 0x0C
values in_LSB_LOOKUP
regardless of the actual value ofHALLCONF
. The code to determine and use the appropriate_LSB_LOOKUP
index value based on theHALLCONF
value does not exist in the Arduino version.I am unable to test this since I don't have the MLX90393 device, but am not getting any Python / Pylint errors.