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

grid module C code assumes 4 quads on device #1307

Open
catfact opened this issue Jan 22, 2021 · 3 comments
Open

grid module C code assumes 4 quads on device #1307

catfact opened this issue Jan 22, 2021 · 3 comments
Labels

Comments

@catfact
Copy link
Collaborator

@catfact catfact commented Jan 22, 2021

the implementation of grid refresh in device_monome.c always assumes 4 quads of LEDs.

after a call to g.all(), all four quads are marked dirty, so 4x map messages will be sent on refresh.

this doesn't appear to cause any problems with most devices, but it seems like older/slower grid models might respond strangely. (flickering, etc.)

so we should probably teach device_monome to respect device size.

@catfact catfact changed the title grid middleware always sends data for 4 quads grid module C code assumes 4 quads on device Jan 22, 2021
@catfact
Copy link
Collaborator Author

@catfact catfact commented Jan 22, 2021

come to think of it, it would probably be a good idea to switch /led/level/map for /led/map on monobright devices. (i don't think libmonome directly exposes a query for monobright, but we can test the result of monome_get_proto() or something.)

@artfwo
Copy link
Member

@artfwo artfwo commented Jan 22, 2021

libmonome automatically translates led_level_map to led_map on monobright devices. why would you want to implement the brightness conversion in the client (matron)?

p. s. it's also possible to detect the varibright (mext) devices by id - it will always be mNNNNNNN or ^m\d+$

@catfact
Copy link
Collaborator Author

@catfact catfact commented Jan 22, 2021

ok thanks. i hadn't got as far as looking in the protocols. so: i wouldn't!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants