Remapping Outputs
  • Can anyone tell me how or point me into the right direction to remap the outputs? Ideally I want to be able to remap pixel position A1 to something like LED spot D801.  Is that even possible? I know I could work around what I'm trying to achieve through hardware but it would be much cleaner if I could do it through software.  Thanks!
  • Can you please give a little context? Is this for a Peggy 2? And, in what context are you trying to "remap" it-- are you trying to do this from within a particular program or programming environment?
  • Yes it is for a Peggy 2.  Im trying to recreate something very similar to Jim Campbell's Exploded Views.  image

    I want from all sides for the LEDs to look randomly placed and floating however from the front or back you would be able to view animation. Im running 2 conductor wire to each LED position then to the LED.  The wire will be routed through a piece of material with holes drilled to form a 25 x 25 grid with 1 inch between each hole. To create the randomness I would need to change the depth for the each LED on the top row.  I could manually just drop the wire down a different hole to create the randomness but it would create a mess of wires and use more material.  If I could remap the output then I could just go 1 to 1 with the LED position to holes then use the software to set where each pixel pops up.  I don't have a preferred program or environment to do this in.  I would like to keep everything as close to the current code and setup as it is now so that I could explore other ways to mess with input following write ups others have done. Thanks
  • First off, read this note about wiring off-board arrays with the Peggy 2: http://www.evilmadscientist.com/2012/mailbag-hacking-peggy/ 

    Second, it's still not clear to me in what context you want to remap the wires. The display is addressable-- for whatever context you want send the data in, it's also possible to remap the data before you send it. That is to say, where does that "A1" come from? D801 is just row 8, column 1. You can build a lookup table to do a mapping like that in any programming environment.
  • Thanks for the link to the off-board array.  It doesn't really save me any effort as I would still have to construct an array of that size.  I'm probably a little in over my head here. I have some very basic programing knowledge but tend to pick it up quickly.  It seems like a lookup table might be my answer.  Is there any latency with that?  Do you have any examples of a lookup table being used with a Peggy 2?  
  • The best location for the table will depend upon what your setup looks like. There is not necessarily any latency that would go along with it.

    If you have a computer feeding video to the Peggy, then it will be fastest to do the lookup between generating the video frames and sending them to the Peggy.

    If you have an animation stored on the Peggy (possibly made in the PeggyDraw 2 program), then it would be fastest to use the lookup table in the PeggyDraw 2 program itself-- so that the animation frames are stored with the alternate mapping. 
  • So looking at PeggyDraw in Processing where would the table go and how would I build the table? Most table examples just use two values written as 250, 1.4 how would that work for xy coordinates?  Thanks again for all your help.  Im sure this is quite elementary to you.
  • One way would be to use two tables -- one for X, one for Y. 
  • Can you show me how or where I would start building the lookup table?
  • If you're going to do this from within PeggyDraw, the first step would be to download the code, and make sure that you can run it without any modifications.