Arduno Zero analogReadResolution()

Did someone tested if Arduino Zero is aceptable (in terms of WAS precision) using analogReadResolution() instead a ADC?

Arduino-internal ADCs are not supported in AOG out-of-the box any more (since version 4), so better use an external ADS1115.

That’s true, but I was asking if internal ADC from arduino zero is suitable as it has 2 more bits of precision, of course that modifying the .ino

You’re right, the Zero has a 12-bit ADC. So, when you have a range of - let`s say 80° end-to-end, you have 4096 / 80 = about 50 digits per degree. That is fine for sure, but there are 3 other points to mention:

  1. The zero runs with 3V3 instead of 5V => will work fine with all potentiometer-based sensors, but not with intelligent ones supplied with 5V. They would require a voltage divider.
  2. The effective range you have, how much of the 0…3V3 input range can you really use with your setup?
  3. Drift. Drift depends on both the sensor and the ADC in combination. So, does the sensor have its own voltage reference inside or does it use the supply as reference? And we have the same topic on the ADC side: Using the Arduino itself means using the supply voltage as reference, which is not very exact, but it doesn’t matter at all for sensors taking the same voltage as reference (e. g. all simple potentiometers)! Regarding this, using a ADS1115 with a potentiometer is a bad idea, because the ADS has its own precision ref and the potentiometer takes the supply as reference. In that case the Zero can definitely be the better choice. So for this topic, both “partners” should take the same type of reference.
    Hope that helps a bit.
2 Likes