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.
Description of changes
In the actual code a pin for reading analog values is initialized with pullups enabled. When connecting a potentiometer to the pin this internal resistor is always parallel to the "upper" part of the potentiometer. The internal pullup resistor is ~35kOhm.
This results in a non linear behaviour of the potentiometer. For a 10kOhm potentiometer the deviation is max. 4% at 70% position, this increases for higher values of the potentiometer.
Examples are:
50kOhm: 16% deviation at 70% position
100kOhm: 26% deviation at 70% position
500kOhm: 56% deviation at 80% position
The code change is not to use the internal pullup resistor. Also setting the
pinMode()
is not required as this is done during theanalogRead()
function.Fixes #347