Monitor GitHub Activity with an RGB LED Matrix


Ever wonder who is forking your code? [Jack] did, so he built a real time GitHub activity display for his company’s repositories. The display is based a Wyolum The Intelligent Matrix (TiM) board. The TiM is an 8 x 16 matrix of the ubiquitous WS2811/Smart Pixel/NeoPixel RGB LEDs with built-in controller. We’re seeing more and more of these serial LEDs as they drop in price. Solder jumpers allow the TiM to be used as 8 parallel rows of LEDs (for higher refresh rates), or connected into one long serial chain.

[Jack] wasn’t worried about speed, so he configured his board into a single serial string of LEDs. An Arduino drives the entire matrix with a single pin. Rather than reinvent the wheel, [Jack] used Adafruit’s NeoMatrix library to drive his display. Since the TiM uses the same LEDs as the Adafruit NeoPixel Matrix, the library will work. Chalk up another victory for open source hardware and software!

An Electric Imp retrieves Github data via WiFi and passes it on to the Arduino. This is a good use of a microcontroller such as the AVR on the Arduino. [Jack’s] display has a scrolling username. Every step in the scroll animation requires all the pixel data be clocked out to the TiM board. The Arduino can handle this while the IMP takes care of higher level duties.

[Read more...]

Hackaday Links: Sunday, June 30th, 2013


The race is on to squeeze cycles out of an 8MHz AVR chip in order to better drive the WS2811 LED protocol.

[Asher] doesn’t want to buy charcoal aquarium filters if he can just build them himself. He filled a couple of plastic drink bottles with charcoal, cut slots in the sides, and hooked them up to his pump system. A gallery of his work is available after the break.

Is the best way to make microscopic sized batteries to 3d print them? Harvard researchers think so. [Thanks Jonathan and Itay]

The Ouya gaming console is now available for the general public. [Hunter Davis] reports that the Retrode works with Ouya out-of-the-box. If you don’t remember hearing about it, Retrode reads your original cartridge ROMs for use with emulators.

Making a cluster computer out of 300 Raspberry Pi boards sounds like a nightmare. Organization is the key to this project.

Hackaday alum [Jeremy Cook] is working on an animatronic cigar box. Here he’s demonstrating it’s ability to listen for voice commands.

A Kelvin clips is a type of crocodile clip that has the two jaws insulated from each other. [Kaushlesh] came up with a way to turn them into tweezer probes.

[Read more...]

LED tie plays Tetris


[Bill] has been working with a gaggle of 8th graders this summer at a STEM camp, impressing them with his geeky attire such as an 8-bit and PCB ties, and an LED illuminated lab coat. The adolescent tinkerers asked him what he would be wearing on the last day. Not wanting to let the kids down, he whipped up an LED Tetris tie in an evening.

The Tetris board is a 20 x 4 grid of WS2811 based RGB LED strips, controlled by a Digispark dev board. Structurally, the tie is just two bits of card stock with the electronic bits sandwiched in between. and taped to a cheap clip-on. In the video below, the tie doesn’t have any sort of input to control the movement and rotation of blocks. [Bill] plans to update his tie with some rudimentary AI so it can play itself.

All the code is over on [Bill]‘s git. It’s still a work in progress, but from the STEM student’s reaction, there’s a lot of potential in this tie.

[Read more...]

WS2811 can be addressed at 800kHz using a 8MHz clock


Timing is everything and that’s why most communication protocols require a very accurate clock source. The WS2811 LED strip controllers are no different. But [Danny] figured out a way to drive them reliably with an 8MHz clock source.

The WS2811 has become one of the most popular controllers for RGB pixels and strips alike. We’ve seen several hacks used to address them, including the 16MHz AVR technique that inspired [Danny] to take on this project. He planned to use that library but the 25-day shipping time for a 16MHz crystal drove home to invent a way to use the internal oscillator instead.

The gist of the hack is that he wrote assembly code to handle pairs of binary bit values. With a code block for each of the four possible combinations in hand he had to find a way to craft the conditional jumps to preserve accurate timing. After hitting the wall trying to solve this puzzle by hand he wrote a C++ program to solve it for home. The proof is in this video which shows one chip driving multiple Larson scanners on a single strip.

[Read more...]

Building huge displays with LED strips


Building RGB LED displays is one of the most interesting programming and engineering challenges we see here on Hackaday. Not only do the creators of large displays and LED cubes have to deal with the power requirements of driving a whole bunch of LEDs, but there’s also the issue of getting the frame rate high enough to display video. It’s a non-trivial task, but [Paul Stoffregen] has an interesting solution. He wrote an LED strip library that can control eight meter-long LED strips that can also be used on daisy chained Teensy 3.0 microcontrollers for really large displays.

[Paul]‘s LED library works with LED strips based on the WS2811 LED controller IC. These chips are the most common controller chips for the individually controllable LED strips you can find at Adafruit or hundreds of Chinese resellers. The library requires DMA transfer to display images, so if you’re looking to build a ginormous RGB LED display, you might want to pick up a few of [Paul]‘s Teensy 3.0 boards

[Paul] also created a Processing app that takes a video file and turns it into serial data for his LED strip library. You can check out a video of this app, library, and a 60×32 RGB LED display after the break.

[Read more...]

A blinky fedora to ring in the New Year


[Garrett Mace] decided to dress festive for New Year’s Eve. What he came up with is a fedora ringed in LEDs that react to music. The hardware uses 5050 LEDs on strips. Three of them encircle the head-gear providing a total of 114 RGB pixels. Each is a WS2811 module — a part which we’re seeing more and more of lately.

The video clip after the break starts off with a few minutes of demonstration. [Garrett] managed to code all kinds of animations for the hardware including several different styles of color sweeps and fades. You may start to think that the three bands always display the same patterns but keep watching and you’ll see a sparkle pattern that proves each dot can be addressed individually.

About 2:20 seconds into the video [Garrett] explains how he pulled it off and shows off the driver hardware. The strips are glued to a band of webbing that slides over the hat. The wires that drive the lights were fed through the center of some paracord and connect to an Arduino housed in a 3D printed case. Power is provided by a portable USB battery with a ShiftBrite shield and an MSGEQ7 chip complete the parts list.

[Read more...]

Three conceptual approaches to driving a WS2811 LED pixel


[Cunning_Fellow] published a post with three proof-of-concept approaches to driving a WS2811 LED pixel. We looked at a project early in December that used an AVR microcontroller to drive the RGB package. [Cunning_Fellow] saw this, and even though he doesn’t have any of these parts on hand he still spent the time hammering out ways to overcome the timing issues involved with address the device. His motto is “put up or shut up” when it comes to criticizing projects featured on Hackaday. We love seeing someone pick up an idea and run with it.

The approach in all three cases aims to conserve clock cycles when timing the communications. This leaves the developer as many cycles as possible to perform other tasks than simply telling the lights what to do. One approach is an assembly routine that is just a shade slower but groups all 14 free cycles into one block. The next looks at using external 7400 series hardware. The final technique is good old-fashioned bit banging.

[Photo Credit]


Get every new post delivered to your Inbox.

Join 94,415 other followers