Closed domchristie closed 2 years ago
series grids have an LED driver that supports 1-bit per LED, plus overall brightness (intensity) so there is no per-LED level addressing hence the reducing to 1 bit. it does this for backwards compatibility to ensure series grids work in some predictable way with newer level messages.
series driver is MAX7219 btw
@tehn got it! thanks!
I'm currently working on providing Series compatibility to halvves/webmonome, and am wondering what the difference is between LED intensity and LED levels. If I understand the docs correctly:
intensity
controls the brightness for all LEDs (and this appears to work for my Walnut 64)level
provides brightness control for either a single LED, rows or columns, an 8x8 block, or the entire gridIf so, is there a reason why the Series protocol reduces the level to a single bit:
https://github.com/monome/libmonome/blob/cd11b2fde61b7ecd1c171cf9f8568918b0199df9/src/proto/series.c#L263-L266
Could it just pass the level value unchanged?
Also, given that my Walnut 64 supports variable brightness for all the LEDs, could it also support varying levels for individual LEDs/row/frames?
Thanks!