Skip to content

[draft] Add support for n3 style devices#546

Draft
jeinstei wants to merge 4 commits intoStreamController:mainfrom
jeinstei:add-support-for-N3-style-devices
Draft

[draft] Add support for n3 style devices#546
jeinstei wants to merge 4 commits intoStreamController:mainfrom
jeinstei:add-support-for-N3-style-devices

Conversation

@jeinstei
Copy link
Copy Markdown
Contributor

@jeinstei jeinstei commented Feb 1, 2026

Merging support for N3 layout and a framework for possibly adding other layouts.

image

@jeinstei jeinstei changed the title Add support for n3 style devices [draft] Add support for n3 style devices Feb 1, 2026
@jeinstei
Copy link
Copy Markdown
Contributor Author

jeinstei commented Feb 1, 2026

I would like some thoughts from the maintainers as to how you want to handle such things, if at all. This could be a plugin model, with a hook in DeckConfig, a check like I am doing, or a few different things depending on how layout is also included in.

@jeinstei
Copy link
Copy Markdown
Contributor Author

jeinstei commented Feb 1, 2026

An option would be to have a list of "layout" classes that are matched, instead of the current DeckConfig architecture.

@Core447 Core447 marked this pull request as draft February 13, 2026 17:11
@jeinstei
Copy link
Copy Markdown
Contributor Author

So lets try changing this to a "layout" class, such that plugins could even register their own layout. Some sort of a dictionary with "default" being the usual layout, and others can be added and such.

@jeinstei
Copy link
Copy Markdown
Contributor Author

jeinstei commented Mar 6, 2026

  • Convert layout system to allow for class selection based on device (somehow) for non SD layouts
  • Determine "Standard" layout components (dials, dials w/ touchscreens, keys, etc) and better abstract
  • Determine how this interacts with lower-level control library
  • Are new devices able to be plugins? Add "layout registration" feature

for device in devices:
try:
# Check if it's a StreamDeck
if device.idProduct in [
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be a new PR and automated somewhat. Especially as it is StreamDeck specific. I'll make a new PR for that separately.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

1 participant