S18: RGB LED Sound Behavior on a Skateboard
Contents
Project Title
RGB LED Sound Behavior on a Skateboard
Abstract
Consumers are always looking to customize and decorate their belongings and clothes with lights and flamboyant colors. With music festivals, parties, and LEDs usage on the rise, we can design a behavioral system that influences the intensity and color of the RGB LEDs on products such as a skateboard, t-shirt, bike, or other countless products. The behavior LEDs can be a great attraction to music lovers and to other applications when Internet of Things (IoT) and groups of users are involved. Applications such as an echo or synchronized effect can be done and implemented using IoT.
Objectives & Introduction
The project focuses on the idea manipulating an array of LEDs based on sound input. The array of LEDs could mimic a sound equalizer, change colors based on the sound intensity, beat, or frequency of the music. This project would be placed on a transportation tool such as a bike or skateboard simply for the aesthetics. A microphone would feed the analog data, and then be converted to digital via 16 bit ADC. A PCB board will be used to power all LEDs, have a display terminal for user input features, and microphone connection. The data fed into the SJone board will then be filtered, processed, then sent to display onto the LEDs according to the music.
Team Members & Responsibilities
- Alan Chen
- SJone Code, Drivers, Digital Filters, LED behavior mechanics
- Dhaval Raval
- PCB design, Hardware Design
- Sarvesh Harhare
- Software
- Kathan Patel
- Data logging, IoT
- Niraj Surti
- Availability of data collected over local network to be accessed by other modules.
Schedule
Week# | Date | Planned Work | Actual Work | Progress |
---|---|---|---|---|
1 | 4/10/18 | Project Job Discussion/Parts List | Project Division Discussion/Project Scope | Completed |
2 | 4/17/18 | WikiPage/PCB Design/Parts Ordered/Coding | Majority Parts Received/Drivers Written | In-Complete |
LED Driver | ||||
IoT Driver | ||||
PCB Design | ||||
3 | 4/24/18 | PCB Design/IoT/LED | TBA | In-Progress |
I2C Driver for 16 bit ADC | ||||
LED Driver p2 | ||||
LED Driver p2 | ||||
4 | 5/1/18 | Implementation/Testing PCB/Coding | TBA | TBA |
ADC Input to Filter | ||||
5 | 5/8/18 | Testing | TBA | TBA |
6 | 5/15/18 | Debugging/Finalizing | TBA | TBA |
7 | 5/22/18 | Final Exam/Writing Report | TBA | TBA |
8 | 5/23/18 | Demo/Presentation | TBA | TBA |
Parts List & Cost
Part Name | Cost | Qty | Comments |
---|---|---|---|
SJone Board | 2 | LED behavior & IoT hub (send & receive) | |
Raspberry Pi | 1 | IoT communication | |
Skateboard | 1 | Project Mount | |
LEDs strips | 1 | 2 Meter RGB LED strips | |
PCB | 2 | One for each SJone Board | |
NPN Transistors | 2 | PWM for RGB LED | |
Microphone | 1 | Receiver of Music | |
16 Bit ADC | 1 | Converter | |
SD Card | 1 | ||
ESP WiFi module | 1 |
Design & Implementation
The design section can go over your hardware and software design. Organize this section using sub-sections that go over your design and implementation.
Hardware Design
Discuss your hardware design here. Show detailed schematics, and the interface here.
Hardware Interface
In this section, you can describe how your hardware communicates, such as which BUSes used. You can discuss your driver implementation here, such that the Software Design section is isolated to talk about high level workings rather than inner working of your project.
Software Design
Show your software design. For example, if you are designing an MP3 Player, show the tasks that you are using, and what they are doing at a high level. Do not show the details of the code. For example, do not show exact code, but you may show psuedocode and fragments of code. Keep in mind that you are showing DESIGN of your software, not the inner workings of it.
State Machine -insert state machine-
- PWM - LED's
- SERCOM - IoT (Rasberry Pi)
- Sound Filter - Digital Filter - Bandpass (noise)
- LED algorithm- light change
Implementation
This section includes implementation, but again, not the details, just the high level. For example, you can list the steps it takes to communicate over a sensor, or the steps needed to write a page of memory onto SPI Flash. You can include sub-sections for each of your component implementation.
Testing & Technical Challenges
Describe the challenges of your project. What advise would you give yourself or someone else if your project can be started from scratch again? Make a smooth transition to testing section and described what it took to test your project.
Include sub-sections that list out a problem and solution, such as:
<Bug/issue name>
Discuss the issue and resolution.
Conclusion
Conclude your project here. You can recap your testing and problems. You should address the "so what" part here to indicate what you ultimately learnt from this project. How has this project increased your knowledge?
Project Video
Upload a video of your project and post the link here.
Project Source Code
References
Acknowledgement
Any acknowledgement that you may wish to provide can be included here.
References Used
List any references used in project.
Appendix
You can list the references you used.