We were decided to do an embedded project because we love embedded. We also wanted to include some kind of IoT and communication between devices. We all love listening to music together, so we were at university and we came up with the bare bones idea of an intelligent music player.
What it does
It allows you to play music based on different music styles, modes, moods, or even tags. It also gets synchronization with the embedded network we built. It gets output based on the music playing (in the prototype with LEDs) and it is also capable of choosing music based on sensors of the Arduino.
How we built it
We built a node.js server to handle the music player, the database and the different views such as the Dragonboard one, or the controller panel. Moreover, we built a communication network between the Dragonboard, which is in charge to issue communications to the node.js server, and the Arduino, which is in charge to handle all sensors and luminous outputs. The interconnection between the server, the DragonBoard and the client is done via a LAN.
Challenges we ran into
- Connect embeddeds to Microsoft Wifi
- Create a propper LAN
- Handle different requests in a server
- Take into account different working modes for the embeded devices
- Do a bare bones media player with no frontend knowledge
Accomplishments that we're proud of
- Connecting different embedded in a complex network
- Reach our goals far from what we expected
- Making a bidirectional serial comunication between arduino and dragonboard.
What we learned
A lot of things:
- We learned a lot of backend, as we are more confortable on embeded technologies and we had to do a lot of backend work
- The frontend basics
- How do really HTTP requests work and how usefull they are when building an embedded network.
- Serial comunication between embedded devices.
- How to configure a LAN to work with the computers and embedded chips.
- Bringing a router to a hackathon and a lot of cables can save your day!
What's next for IoT-SmartSoundSystem
-Machine learning approach to handle the automatic playlist creation. -An app for better user expirience on mobile devices. -A frontend that doesn't look like early internet days. -A higher IoT devices integration with more sensors that can help you to create the perfect playlist. -A better luminous expirience, with a led matrix and fourier transforms that lead to a better music visualization.