DownloadYou can download the latest version of the software below: Windows: pixelpaint-0.3-installer.exe Mac OS X: pixelpaint-0.3.dmg Linux/Unix: PixelPaint-0.3.tar.gz (also requires the pyserial library). Source Code: The source is hosted at bitbucket. Additional Software: You must also download and install the Arduino IDE as well as the latest version of the total control lighting arduino library. InstructionsAfter downloading and installing all the software, load the "serialcontrol" example sketch into the Arduino. If you have properly installed the total control lighting arduino library it can be found under the "File>Examples>TCL" menu. Compile and load the sketch onto the arduino and make a note of the name of the com port of the Arduino. You will need to enter this into the PixelPaint application in order to control the lights in real time. On windows it will be named something like COM3, while on a Mac it will have a name like /dev/tty.usbmodemfd341. Before beginning to play around with PixelPaint you can arrange your total control lighting pixels in a grid. This is accomplished by starting in a corner and stringing the pixels back and forth row by row or column by column. PixelPaint requires that your first pixel occupy a corner. You will need to specify this corner in the software, but it could be any of the 4 corners of the grid. You must also specify in which direction you begin stringing the LEDs, either horizontally if you string row by row, or vertically if you string column by column. The grid doesn't need to be square, but it must be rectangular. Hook the lights up to the Arduino and the Arduino up to the computer's USB port. When the pixels receive power, they will generally be in random states. Start up PixelPaint. It will start with a default grid, but you can change that to match the geometry of your grid by selecting "Images>Change Pixel Grid" from the drop-down menus. Enter the number of horizontal and vertical pixels and the grid will change. Next you will want to connect to your Arduino by selecting "Arduino>Connect..." from the dropdown menu. A Popup menu will appear which asks for the port (which you noted above) and the corner in which the first pixel is located and the orientation of the stringing of the pixels (either horizontal or vertical). Make sure these match the layout (as seen from in front of the pixels) and click ok. If all goes well the pixels should turn solid black in 2 seconds. If something goes wrong an error dialog should popup. Try clicking a few of the black disks in the PixelPaint window and they should turn red. The corresponding LEDs should also turn red. You can change the color by using the "Color Select" button. The "Reset" button sets all the lights to black. At the moment, clicking the "Previous Frame" and "Next Frame" wont do anything, but I'll get to those. If you make an image you would like to keep, use the "File>Save Image" option. It will save the single frame as a file with a ".led" extension. So, how do you make sequences of frames? Under the "Images" menu there are two options to add frames. One adds a blank frame and the other adds a copy of the current frame. Both add a frame immediately following the current frame. If you select "Images>Add Blank Frame" you notice that all the pixels go black. To get back to the previous frame, use the "Previous Frame" button. You can also delete frames using the "Images>Delete Frame" option. Right now there is no way to reorder frames except by saving an individual image, deleting the frame, and then creating a blank frame and reloading the image there. Once you make a couple of frames you can see them all animated by using the "Images>Play Show" menu item. By default there is a 1 second delay between frames, but this can be adjusted using the "Images>Set Frame Delay" menu option which allows you to set the delay in milliseconds between frames. If you like a sequence, you can save it using the "File>Save Show" option. To load a show directly onto an Arduino, load in the show you want and use the "Arduino>Create Sketch" menu item. Once again you will have to specify the corner in which the first pixel is located and the direction in which pixels are strung, but then PixelPaint will save an Arduino sketch which can be loaded into the Arduino IDE and compiled and loaded directly into the Arduino. |