Possibly you��will��need to��extend the design to address your needs.��Current model only covers what there��were in our hands:
Board classes define a configuration of pins where they specify a function for every pin. There is only function��for given pin (where PotBasicIOFunction is a default value).��
Functions have not much��responsibility now. They are mostly here for documentation purpose: having the board instance it should be clear what pins are able to do.
I can imagine that we should allow pins to have multiple functions.
IO mode of the pin (PotIOPinMode) is low level thing to implement input/output operations with pins. From the other side they represent how we can interact��with pin��and��It looks like a function. Maybe they can be merged. But that is what we have now.
��
About��"capability request". It would be cool to not specify pin scheme manually.
You can just request pinout/functions in YourBoard>>connect method.