-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
No support for panels stacked up high instead of wide? #1003
Comments
Yes, writing a pixel-mapper would be the way to go Ideally, we had a generic mapper that parses some configuration string describing the layout; something like a newline separated format describing the physical layout with each line with panels represented as square-bracket enclosed
I've not implemented such mapper yet, I'd like to leave that as an exercise to whoever needs it first :) |
@hzeller thanks for confirming, and smart man about leaving this as a programming exercise to the reader :)
It's actually a bit more complicated if anyone is interested somehow, just wrote this for someone else:
I still have a fair amount of work left in the arduino port to rPi, including porting the file API somehow. This will probably have to come first. |
Ah, and you need to support http://spixels.org/ of course :) |
@hzeller nice, I didn't know about that. |
@hzeller I was looking at a more basic issue.
but it looks like U-mapper wasn't really meant for this, was it?
But if not/in the meantime, Z-mapper referenced in #980 might (without the parallel support just mentioned) might work I'm just trying to find where the default mapping is done when not overriden by pixel-mapper.cc |
The U-mapper maps each chain forward-backward, so the display is half as long but double as high (also with parallel). The size of the final matrix is adjusted accordingly, so your program then sees the new pixel size. The place where that is applied happens here: |
@hzeller Thanks much for the pointer to the right place. Also, U-mapper indeed gives me a clue that it won't work a U-mapper for 1 column wide: It works for --led-chain=4, but given that it doesn't take a geometry input, it guesses that I want 2x2 and not 1x4. |
There is only one arrangement that satisfies the U-ness of a chain of a particular lengh: it will be half long and double high; this is why it does not need more geometry input. There are some pull requests (#657) which are roughly like that (but they contain some unrelated changes and do a non-backward compatible naming). If you keep the U-mapper name and add some fold-parameter to it, that could be a winner. |
Ok, there you go: I didn't quite get sucked into modifying U-Mapper since that was more work and currently my panels are wired with longer cables with everything pointing in the up direction, so U-Mapper would have broken me anyway |
@hzeller The natural orientation for them was 3x5, which meant another set of 3 parallel chains with 5 panels going up, but to use the very short cables I had been stocking and never use it, every other panel is upside down. Do you have a preference? |
It sounds like a parameter to the V-Mapper might be more natural. |
#1014 ready for review: added Z configuration of vertically stacked panels. |
With 12 panels, with 3 chains of 4 panels of 128x64, I need the chains to be
128x256 (4 panels of 128x64 on top of one another)
I'm not sure the mapper function allows this, and if I go 4 panels wide, I get 512x64 x 3 = 512x 192
when I'd much rather have 128x256x3 = 384x256.
Is that possible at all with existing --led-pixel-mapper options ? (it didn't seem like it)
If so, am I stuck having to write my own mapper as per
https://github.com/hzeller/rpi-rgb-led-matrix/tree/master/examples-api-use#remapping-coordinates ?
The text was updated successfully, but these errors were encountered: