# Lithium. My first real LED project!

My first original (as far as I am aware) build! It was an absolute pain to assemble and there are a lot of things I would do differently if I did it again but it turned out descent.

I am just beginning to learn PB Java so the patterns are all from the community aside from the last one. Thanks for an awesome controller and baffling code patterns!

7 Likes

Did you map this? With LEDs on both sides are they independent or connected?

I used neopixel half rings on one side and connected them in series. I have yet to learn mapping, sadly, but im beginning the tutorials you are putting out

1 Like

Oh wow, I didnâ€™t imagine that layout, very nice.

That should be pretty simple to map in 3D, itâ€™s 3 rings, with an axial rotation applied to 2 of them relative to the first.

So if you consider the first ring alone, take the 2D example map, which generates X and Y coordinates, and add a flat Zero for Z (so weâ€™re defining Z as up/down here) since no height for any of those pixels, right?

Then itâ€™s a matter of calculating the other two rings where the Z changes, and since itâ€™s symmetrical, one is the opposite of the otherâ€¦

Just like with X and Y, Z will vary with the sin or cos of the angle (I havenâ€™t done the math, so Iâ€™m not sure which to use), so if the 2nd ring Z is sin(angle), then the 3rd ring would be -sin(angle)

Sorry, donâ€™t have time to work out the whole map (plus unsure how much pixels in a ring or what the wiring is, what angles have no lights, etc), but hopefully thatâ€™ll jumpstart you.

If you just want to make it 2D, just use code for 3 flat rings in a row in your map, and thatâ€™ll be half your battle anyway, then you can improve for 3D.

2 Likes

Thanks! That will put me at a good start