3/29/2023 0 Comments Pixelstick images text![]() Name your files propperly so you know later on which picture shows up in the darkness. This might take a while before you can start with the real action. PCB populated with surface mount components.Ĭompleted PCB with Arduino, LCD, and encoders.Be aware that a pixelstick includes computer work upfront. This design can be found in the PCB_Design.pcb file in the root of this repo and there is also a parts list excel file for anyone interested in building their own. This is the final PCB design completed in PCB Artist for easy ordering through advanced circuits. See Encoders.h for the other pin assignments. The second and third encoders have the same connections except their pins are different. Logic Conversion from the 5V LCD to the 3.3V MKR arduino. These files were generated by the dot factory. txt) is a raw byte file of NUM_LEDS * 3 * width size. Sizes.txt contains a list of characters and then their width in pixelsĪ.txt (or. number of repitions of the pattern (evenly over the stick)įonts are organized in the following fashion f/įontNames are things like "Times New Roman" or "Agency".įontSpecifics are the number of LEDs to use (72, 144, 216, or 288) and a character to switch the font type (r - regular, i - italicized, b - bold, c - both italicized and bolded). start index on brushĪ Band file contains 2 + 3*(num bands) numbers: 1. Start:#_Len:#_ // LCD line 1, # signs indicate where dynamic characters will be displayedĪ wand file contains 5 numbers: 1. The specific meaning of each number is explained by using m/9.txt as an example: 3 //number of cursor locations (in this case in front of Continue, Back, and one one more at the very end to quit to mainĢ // number of dynamic strings to display (in this case start and length)ģ // character length of dynamic string 1ģ // character length of dynamic string 2 The numbers indicate the cursor locations and dynamic information locations. Menu File ExplanationĮach menu file contains a list of numbers and the strings that should be displayed on the LCD. In this case the HSV values are converted to RGB before entering the RGB menu to preserve the color. The function that executes when the user enters a menu often adjusts the encoder counts so that they will have certain default or saved values when the menu loads.Īn example of the back button is when the user goes from HSV color selection back a menu to select RGB color selection. The list contains a function to execute continually while that menu is being displayed, a function that runs when that menu is entered, and function to run when that menu's back button is hit.įunctions that run continually would be things such as updating the LED string when making the general shape of a new wand or band pattern. Each struct contains an array of other indices in the menu table corresponding to it's parent menu and submenus as well as a list of 3 function pointers. ![]() See Menus.h, each menu has a corresponding menu struct organized in a large menu_table. ![]() That cost can be drastically lowered if a sparser LED strip is used since that is the main expense (I used two strips of 144 LEDs 1m long). Read this documentation and if you still have questions contact me ( UI is not very intuitive which tends to happen when you are controlling complex LED patterns via three encoders and an LCD.ĭespite my attempts to keep the financial cost low I still ended up spending upwards of $100 on this project. Multiple fonts supported as well as bold and italizied versions of those fonts.Ĭoming soon! (hopefully) Upload any image and have the pixelstick display that image as it is moved at a constant rate. Examples:ĭisplay any custom color on any portion of the stick (a wand).ĭisplay any pattern of colors or their repetition over the length of the whole stick (a band pattern).Īdd any custom string and display the text as the pixelstick is moved at a constant rate. The first company to make one is here: and they have an up and coming competitor here: but I built one myself for fun. It's a programmable LED strip for light painting (long exposure photography).
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |