Skip to content
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

API Stablisation #4

Open
3 of 4 tasks
bahorn opened this issue May 25, 2020 · 3 comments
Open
3 of 4 tasks

API Stablisation #4

bahorn opened this issue May 25, 2020 · 3 comments
Labels
enhancement New feature or request

Comments

@bahorn
Copy link
Owner

bahorn commented May 25, 2020

Right now, this library has a somewhat awkward interface, mostly to follow as closely to the SDK servers protocol as possible. This ties pretty heavily into the #2 and #3

Some things that I'd like to change to make the UX a bit better:

  • Iterators for accessing the devices. Seems awkward to require users to call controller_count() when it should be handled by the library.
  • A way of searching for devices. e.g, users mostly want to devices with a linear collection of LEDs, or find keyboards/mice, etc.
  • The current approach is setting multiple LEDs is very awkward. Users need get a LED count for the device, then send a list containing values you want of the right size. Worth expanding on the representation of ORGBDevice to implement this, allowing nice error checking, etc.
  • Make the methods support passing down a ORGBDevice for device_id

Welcome to any suggestions for other things to fix!

@bahorn bahorn added the enhancement New feature or request label May 25, 2020
@bahorn
Copy link
Owner Author

bahorn commented May 25, 2020

Just added generator in a097331 to avoid the awkward use of controller_count()

@bahorn
Copy link
Owner Author

bahorn commented Jun 8, 2020

so in 4560be9 I made various parts of devices their own classes, which let me implement an active() function for controlling modes.

@bahorn
Copy link
Owner Author

bahorn commented Jun 9, 2020

v0.1.0 covers most of issues now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant