You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current implementation of analog_in.AnalogIn has the old behaviour for the ADS1015 of zero padding to signed 16bit for the 12bit values.
This is part of the same ecosystem, should this be brought into line with the aforementioned full-scaling change? Same issue raised in adafruit/Adafruit_CircuitPython_MCP3xxx#43
The text was updated successfully, but these errors were encountered:
There's also a question here about the unsigned nature of the values. Users of analogio.AnalogIn are accumstomed to the 16 bit unsigned range between 0-65535. I've only just started reading about the TI ADS in detail but they appear to effectively be 15bit ADCs (ignoring noise) when making single ended measurements? The values align with this and the code does too
The value property will return -32767 (or -32768??) to 32767. This has a lot of potential to confuse users coming from CircuitPython's analogio.AnalogIn world unless they are using the voltage property.
And for single-ended use there's a question here as to whether a floor of 0 should be applied to the values as the ADS1115 can return negative value when measuring 0V. I've experienced this myself. Unexpected negative values can cause havoc.
The change in adafruit/circuitpython#4794 (raised by @PaintYourDragon) which appeared in CircuitPython 8 scales values to the full 16 bit range for
analogio.AnalogIn
.The current implementation of analog_in.AnalogIn has the old behaviour for the ADS1015 of zero padding to signed 16bit for the 12bit values.
This is part of the same ecosystem, should this be brought into line with the aforementioned full-scaling change? Same issue raised in adafruit/Adafruit_CircuitPython_MCP3xxx#43
The text was updated successfully, but these errors were encountered: