Polar Coordinate Mapping And RGB LED Disks

Last week, Adafruit released the DotStar RGB LED Disk, a 240mm diameter disk packed with 255 individually addressable RGB LEDs. Because blinkey glowey projects are the best projects, [Adam] had to have one. His tests open up some interesting possibilities in the world of blinkey LED stuff, including a polar coordinate display that would be perfect for low-res games and LED clocks.

[Adam] found the Disk sufficiently bright and glowey, but there were two problems. The first was the JST SM connector on the input of the DotStar Disk; with 255 LEDs on the disk, it has a maximum draw of over 10A, while the connector can only supply 7A without getting unreasonably warm. Secondly, there aren’t 60 LEDs around the outer edge of the disk, limiting its application as a clock.

There’s another thing wrong with the DotStar Disk, until you realize it’s effectively a polar coordinate display. RGB LED libraries are usually written for strips or matrices, not circles. The LEDs are sequentially arranged on the DotStar disk spiraling inwards, and after mucking about with some terrible code, [Adam] realized he could control a pixel with only its distance from center and angle from the connector. This makes plotting circles easier, but it also opens this display up to some interesting applications; circular Pong would be cool, and LED clocks are the bees knees.

12 thoughts on “Polar Coordinate Mapping And RGB LED Disks

  1. Looks like there are two connectors, power it from both sides what is the problem.
    $130 for a clock and the guy wants a bigger one? maniac labs is right.
    most people wouldn’t bother counting the number of pixels to get the time.

  2. “perfect for low-res games and LED clocks.”
    “limiting its application as a clock”
    “LED clocks are the bees knees”

    Always good to have a LED clock that cannot be an LED clock and can also be an LED clock…

  3. I don’t see the problem in making this a clock. You don’t need to have 60 pixels on the outer edge and you don’t need to update the display every 1.25 seconds. Just use brightness. Or to think of it another way, image anti-aliasing a virtual higher-resolution display on to the smaller display.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.