Main Content

Spotify & NeoPixel Controller

Intuitive control of Spotify using Arduino MKR IoT Carrier

This need arose from the fact that within the Electronic Cat’s office there is a sound system where music is played, however only one device has control of the music, it also has an ambient lighting system using NeoPixel strips that were in disuse.

The objective of the project was to create an intuitive system with which any person could intuitively control the music for everyone without the need to have access to another person’s device, since nowadays every device contains sensitive information, in addition to making use of the ambient lighting that was in place to illuminate a shelf of products.

The development of the project was based on the existing project created by a user of the Arduino community, Opla Spotify Controller, with which you can control the playback of music from a Spotify account through an API. From this project, we were making modifications and adding features to meet the objectives set at the beginning.

The main resource for the development is the Arduino products, both the Arduino MKR IoT Carrier and the Arduino MKR WiFi 1010 board since the original project on which this is based makes use of this hardware and it is necessary to have hardware with WiFi connectivity capabilities, with these two products could have an intuitive interface and hardware for the user showing information of the activity about the music playback through Spotify. And all powered by the tiny but very powerful CatSink!

Development
During the development, there were some drawbacks at the hardware level. Arduino MKR IoT Carrier has capacitive buttons capable of detecting the presence of touches without the need to be physically touching these buttons, however, one of these buttons always detected a signal, these can be calibrated by software, but in our application, I could not make it work properly, so it was disabled by software.

Another impediment during development was the differences in libraries used by the different Arduino programmers, such as Arduino IDE, Arduino Web Editor, and Arduino IoT Cloud, and also the lack of knowledge of the number of LEDs that the NeoPixel strip had.

It is recommended to test the Arduino MKR IoT Carrier to rule out failures or take into account calibrations for the capacitive buttons as well as have well-defined functions and hardware that you want to use in the project.

Finally, this project is for those who are excited to learn more about the world of programming and Arduino mainly, since the code is commented in a way that makes it understandable by itself and it is also ready to download and use. However, it is also perfect for those users who have a broader knowledge of both programming and the capabilities of the hardware developed by Arduino being able to customize and add more functionality to the project.”

Link to article