I've seen several tiny led matrices based around the diminutive sk6805-ec15 so I thought I'd throw my hat in the ring
To make the experience fit your profile, pick a username and tell us what interests you.
We found and based on your interests.
ws2812 5x7.schLarger WS2812 5x7 Matrix Eagle Schematicsch - 285.90 kB - 01/03/2022 at 20:45 |
|
|
ws2812 5x7_2021-11-12.zipLarger WS2812 5x7 Matrix PCB Gerber FilesZip Archive - 123.20 kB - 01/03/2022 at 20:45 |
|
|
ws2812 5x7.brdLarger WS2812 5x7 Matrix Eagle Boardbrd - 80.68 kB - 01/03/2022 at 20:45 |
|
|
sk6805 matrix.schTinyRGB SK6805-EC15 8x8 Matrix Eagle Schematicsch - 276.33 kB - 01/03/2022 at 20:45 |
|
|
sk6805 matrix.brdTinyRGB SK6805-EC15 8x8 Matrix Eagle Boardbrd - 88.98 kB - 01/03/2022 at 20:45 |
|
Before you can run you must first learn to crawl ... so before going right into the microscopic I decided to design 5x7 matrices around the larger WS2812 5050 LEDs. This decision was threefold: I already had a few hundred WS2812's I amassed during a late night online shopping spree from a few years ago I never got around to using, I wanted to make something I could easily solder with my recent meager stenciling and reflow skills, and finally debugging a larger board with less components would be far easier than the opposite.
So I threw these together and assembled a prototype.
... and shortly after a few more lol. RGB matrices are like potato chips, you cant have just one! Something I learned is that while the reference circuit for the WS2812 shows a series resistor on the data line and a decoupling cap on each LED these aren't really necessary in practice (well at least I got away with omitting them on later prototypes, with many more LEDs).
Ok so that turned out pretty ... well pretty. So now I was comfortable with moving on to the much tinier SK6805-EC15. This really tested my pcb design and layout skills, especially considering I limited myself to double layer and the requirement that the boards had to be soldered side by side with no visible gap. I ended up pushing JLCPCB almost right up to their limits in terms of minimum via and trace dimensions.
After about a week I had a batch of 10 of the new boards in hand. I also ordered a solder stencil ... I'm insane but not the hand solder 64 1.5mm RGB LEDs kind of insane! Quarter for scale (sorry I was fresh out of bananas).
Kind of regretting my life choices up to this point ...
And for the most part they looked fine ... except I cut very close to the top right edge with a single via which the edge route ate into. I've since modified the board to move the via as close as I could away from the edge so we will see how it turns out next time.
I threw together some fast test code using Adafruit's Neopixel library and here's the first demo.
And now to show off something more colorful (and the display exhibited asexual reproduction between coding sessions at that point).
... yet again doubling by the end of the night!
So how about two rows?
It was at this point that I stopped and realized I'd used all 10 pcbs and most of the roughly $65 of SK6805 LEDs I ordered. Oh yeah and I was starting to hear voices and have nightmares about hand placing the little devils.
So here's where I sit at the moment. I ported my text library but ran into a tiny problem ... get it TINY? The astute of you may have noticed how there's a pixel missing from the character 'b' in the pic above. This is because with my current set up trying to drive 640 of these LEDs I've found that I cant control more that exactly 564 LEDs! I don't know if it's a RAM limitation of the ATMEGA328P I am using or the Adafruit library but looks like I'll need to do some more testing. At any rate I've found that trying to use only 1 serial IO to drive this many LEDs causes noticeable refresh delay when updating the display. So it may be just as well to just using one IO pin for each row to solve both of these problems in one fell swoop.
Anyway this is only the beginning of this journey, I have big plans in the future ... erm or should I say tiny plans ... nano plans?
[Quick Update] The issue with the 564 LED limit was in fact the Atmega's limited RAM. Moving to the slightly larger Atmega32u4 with half a kilobyte more RAM allowed me to write to the entire display. This is because the neopixel library allocates a buffer containing 3 bytes per pixel within the function that writes to the LEDs (it has to be done this way since the ws2812 protocol is asynchronous and requires pretty tight timing), so the programmer has to be aware of this so as not to run into issues.
Create an account to leave a comment. Already have an account? Log In.
I only made a couple by hand for myself but if there was enough interest I could get a batch manufactured for me by a company like jlcpcb. How many would you be interested in so I could get a quote?
Hi, 8 or 10 ......To see if I could make small versions of my art pieces : Here is a link to some examples; https://www.johnfrancis-art.com/leds
You mentioned above "Kind of regretting my life choices up to this point ..."
Lol, tell me about it!
I really love this Tileable Tiny 8x8 SK6805 RGB Matrix. and I want to make it for my personal purpose. Can i use eagle cad files without any restrictions?
For personal use I don't mind how you use the files or modify them, have fun with them! If you do post your project online all I ask is you link this page and credit me (sjm4306).
Love how neatly these boards are laid out, and the fact that you can't find the seem between boards when they're tiled together is very satisfying. Nice work!
Thanks, I'm really happy with how they turned out. Now I just need to add a way to squeeze in contacts to chain the data between successive rows so I don't have to manually solder a wire from the last matrix to the first of the next row and I'll be set!
Become a member to follow this project and never miss any updates
Hi , I love these , are , by chance, in production?