-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
GPIO states #156
Comments
Completely agree, you know I was thinking about IO state years ago but we never knew how we would use it. Thanks for pushing on this. As per our discussions, I think we should distinguish by The |
state_representation
comes with a variety of common state types, e.g.JointState
,CartesianState
,Parameter
and more. As robotic applications become more and more complex, engineers are also confronted with GPIOs (General Purpose Input/Outputs). GPIOs are currently not supported with their own class. I would like to change that and I propose the following class name and interfacesAs one can see, I think of an
GPIOGroup
as a list of name-value GPIOs that are grouped under one state. A GPIO is rarely alone, most often a controller will have for example 4 or 8 digital inputs, indexed from 0 to 3 (7). Such a GPIO group would be constructed asGPIOGroup("digital_in", {"0", "1", "2", "3})
.The proposed class inherits from
state_representation::State
like all other classes and hence has all the well-known and proven interfaces likeset_zero
,set_data
,is_incompatible
as well as the standard getters and setters likeset_value
andget_value
.If this suggestion is approved, I would continue to implement these changes throughout the libraries, bindings and clproto such that a
GPIOGroup
object can be serialized and used in python just like any other class ofstate_representation
.The text was updated successfully, but these errors were encountered: