This project was based on the Digital Sputnik Voyager, a RGB LED lightbar that will retail for more than $300 when it's released. This project cost about $50 altogether. The code for this project is available on GitHub.
I wanted a compact and low-cost RGB lightbar for use in filmmaking projects. The light would need to be easily controlled via an app and integrate with existing film equipment
I created a lightbar based off inexpensive RGB LED strips, an arduino nano, and an ESP826 WiFi Module.
I coded the Android app from scratch in Android Studio, using Java Sockets for communication with the lightbar itself. The design was simple - using cards for each different action item allowed easy expandability and future updates. The lightbar creates a wifi network that an Android phone can connect directly to. The android app then etablishes a TCP connection with the lightbar. On the lightbar, there's an Aduino nano and an ESP8266 wifi module. I wrote software for both of these using the arduino IDE and C++ and they communicate with each other using a serial data link. One of the unexpected challenges of the project was getting them to speak each other's language as the WiFi module uses 3.3V logic and the arduino uses 5V.
I'm currently working on a keyframe-based animation engine that the user can use to create custom color and intensity fade animations (i.e. flashing police lights, pulsing, etc) This would be accessed via the floating action button that's already present in the app design.