Hexagonal 60 degree offset Ws2812B panel #296
Replies: 4 comments
-
Vi Hart agrees. :-) I'm also a fan of BigClive and his teardowns. Educational and funny. Just yesterday, I'd stumbled across his teardown on the earlier generation of addressable bulbs that also shifted and reclocked the data down the wire. If you like Clive and Dave, Dave Jones (eevblog) is another good source of info in this genre... So how does this present itself electrically? Is it one very long strand of WS2812's? Is #271 literally 270 hops down the bucket brigade from #1? Is it possibly chunked in some geometrically useful way to keep the strand length low and allow it to take multiple inputs from the controller? (Imagine a pizza cutter making it into fourths or sixths.) Probably the most visually pleasing things to do with a lamp like this requires you to have a concept of a center and axes. If the parts were laid out in a boustrophedon (didn't think I'd get to use that word....ever) it would probably be possible to build a map of X/Y that would still let you do some amount of operations that required operating on sequential members in the pixel buffer. So it would be most natural (easy/fast) to operate in whatever direction they're laid out. If you did boustrophedon it up in horizontal rows from top to bottom, things like rainbow_fill() or fill_solid() are going to work most easily on sequential items. So if you were trying to make, say, a video display, you'd want them strung left to right. If you were trying to go for "infinity mirror" style, depth-oriented displays, you'd want them laid out in a spiral between the center and the outermost edge. HOWEVER, it looks like there's already a level of abstraction between struct CRGB[] and the wigglies on each frame of the wire. You could PROBABLY build a mapping when you initially call addLeds() at startup and build a virtually discontiguous mapping to the physical sockets and make it work either spirally or like scan lines. You may need some big, dumb tables to describe the geometry, but flash is likely plentiful. Of course, for video or photos instead of just blinkage, you also still have to know about the "missing" pixels to mask out so they're not enqueued into the space in the clocked bitstream. In all, there are a bucket of interesting problems to solve on that display. I've probably only scratched it, but I'd start at the bottom and work my way up. How do you want this to LOOK? Do you want this to look like a grid, mimicking the X/Y model of a screen or do you want this to look like a coiled up strand that looks like a strand light that's still on the reel? ("Both" is an acceptable answer, but if you're relying on external developers to do the work for free, some compromises and prioritization seems wise...) Electric/routing splices that improve one may make the other less awesome. |
Beta Was this translation helpful? Give feedback.
-
You could have written that in Russian and I don't think I'd be any less clueless about anything you said lol. I'm not a coder. The board is a boustrophedon layout, 1 long string. I don't think the 60 degree layout will lend itself to being a video board or for displaying text (unless you like REALLY italic fonts). The board does exactly what I originally designed it for which was basic random flashing effects. I never had any thoughts of specific board patterns until I saw Dave's video last week. I know what the community is like, they like to tinker. I'm not relying on other people's work, I'm just hoping that people want to do their own experiments. For my next project that does require specific code, I'll just do what I always do when I need something done and can't do it myself. I'll pay some Indian guy to do it on Fiverr lol. |
Beta Was this translation helpful? Give feedback.
-
I'll put my pocket protector away for a minute. Sorry. If you're trying to carefully aim pixels, as you would to display GIFs, Text, Memes, clocks, etc. this layout provides formidable challenges. This would even extend to patterns like a pie chart or concentric circles. Just mapping pixels on this into an x/y graph is hard. Sounds like you knew this. If you're just looking for pretty blinky lights that look cool, I think there's a lot that can be done with it. "Just" treating it as a long strand with some minor tweaks depending on whether the native layout is spiral or snaking could get you some interesting results. If you're looking for someone to help explore that space a bit, PM me. I'd like to explore that bit above and maybe try some hex-specific effects. It's just math...and if we can't figure out the math, we'll get out graph paper and precompute some tables. |
Beta Was this translation helpful? Give feedback.
-
There is no PM system on GitHub and no contact details on your website. Check mine and contact me through my site or instagram. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Some of you may have watched BigClive's YouTube channel in the past. He created a simple panel and populated it with flashing LEDs. It mimicked the computers you'd see in the background of the original Star Trek.
I made my own version but in a hexagonal form factor because hexagons are the best shape.
Then Dave P introduced me to addressable LEDs so I had to make a hexagonal panel.
https://youtu.be/JtwubreMYLM
Currently I'm just running generic effects with WLED since I am not a coder and no one has made a 60 degree offset panel, let alone a hexagonal one. So currently there are no specific effects for this panel but I'm hoping to give a few away so people can create specific effects.
I have already offered one to Dave P.
I also have another project for these LEDs that will require the ingenuity of you coders but I'll create a new post once the boards arrive.
Beta Was this translation helpful? Give feedback.
All reactions