Introduction: Persistence of Vision LED Display
Wanted to create a spinning LED similar to this, but have it send notifications based on tweets, emails, or other notifications.
We decided to split up the project into multiple components.
Step 2: Motor Controller/Interenet Interface
The first of the main components was our motor controller/Internet Interface device. We chose to use a ChipKit WF32 board from Diligent for this component. We chose this board due to a familiarity with the processor on the board as was as an integrated WIFI chip allowing us to access the board from the internet. The board was programmed in C and we also made use of several Arduino compatible libraries. The internet interface was completed following a very helpful tutorial from joshwolstad. Over wifi, were able to toggle the PWM signal on the chipkit. Right now, we are only able to control it with the click of a mouse, but with more time we would be able to integrate social media and control the motor that way.
Step 3: LED Controller
The LEDs used for this project were WS2812B. These LEDS allow us to independently control each diode, with each diode being able to display over 16.5 million unique colors. We controlled the LEDs using an Arduino Uno utilizing the Adafruit neopixel library. A variety of other popular libraries support these diodes and we also made use of the Fast LED library while designing the project.
Step 4: Bluetooth Controller
We chose to interface our boards together using a bluetooth connection to avoid the difficulty of routing wires onto a rotating platform without a slip joint. This was accomplished using 2 Diligent Pmod BT2 adapters configured over serial, a Teensy2.0 micro controller along with an Arduino Mega. The bluetooth connection was still in development at the end of our hackathon, we were able to transmit data across boards but we did not complete integration with our Arduino Uno LED controller.
Step 5: Final Thoughts
As we developed our project, several technical challenges presented themselves. Providing a reliable and compact 5v power source to the LED controller on the rotating platform proved to be more difficult than we initially anticipated. Communicating with the Teensy board was also not as straightforward as we initially thought. Configuring the teensy to communicate RGB values over bluetooth turned out to be not such a teensy task.
Despite delays much of the planned functional components were completed. Continuations such as a mount, pulling content from the internet, and animations are capabilities that could extend our work at a later point. Limitations of the motors and LEDs restricted the overall capabilities completable but not.