Add constant_current_range selector for LED driving #6
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.
The AW9523 supports 256-step linear constant-current dimming when LED driving. As noted in the datasheet introduction, the maximum current can be configured:
https://cdn-shop.adafruit.com/product-files/4886/AW9523+English+Datasheet.pdf
In Table 10 ("GCR, Global control register (11H)"), the datasheet explains that 4 possible current ranges can be selected - maintaining the 256-step granularity over a shorter current range:
This change updates the
adafruit_aw9523.AW9523class to have aconstant_current_rangeselector field that can be used to set the register value. The 4 options are provided as constants (AW9523_4_4_RANGE,AW9523_3_4_RANGE, etc).An example of using this code would be:
cc @FoamyGuy