KMKfw / kmk_firmware

Clackety Keyboards Powered by Python
https://kmkfw.zulipchat.com
Other
1.33k stars 460 forks source link

Added extra construction support to Encoder.py to support pullup direction from Code.py #891

Closed Bob837217 closed 8 months ago

Bob837217 commented 9 months ago

Added support to Encoder.py to allow GPIOEncoder to accept tuple for pin_button construction. This includes allowance for pull resistor (pullup/pulldown) customisation directly from code.py. Additionally the change preserves state generation semantics for pin_button.get_value(self) and depends upon the pull direction. The default pull direction remains as digitalio.Pull.UP

An example config from code.py to customise the pin button pull up direction: encoder_handler.pins = ((board.VOLC_A, board.VOLC_B, (board.VOLC_PUSH, True, digitalio.Pull.DOWN), False, 2),)

Tested this out on my own code.py.

xs5871 commented 9 months ago

On another note: new features require documentation for a merge.