0 votes
in Touch Interface by (280 points)
I have the esp32-spotify-remote project mostly working on my Color Kit Grande.  After updating the Spotify certificate, it will successfully authenticate using OAuth 2.0 and I can call the Spotify API and get data back to display in the terminal.  My issue is that the project code seems incomplete.  The code runs until the display shows "Startup completed!" and the progress bar goes to 100 percent and then enters the loop() function which seems to just update the clock and do nothing else.  Other than the example code in SpotifyArduino, I don't see anything pulling song information and displaying it.

Is it in the project and am I missing it?  The display is just sitting on the completed progress bar and not showing any song information or controls.  This matches what I see in the code.  I have started building out a song display/control UI, but my understanding was that it should already be there.  Thx!

1 Answer

0 votes
by (280 points)
 
Best answer

I had some available time over the holidays and made a lot of progress on this project.  I ended up starting fresh and reusing/refactoring a bit of the original project initialization code in the GitHub esp32-spotify-remote project.  With the exception of the certificate being out of date, the code all seemed to work up to initializing the device and authenticating with Spotify.  

For my project, I refactored this code to eliminate dead code from other projects, allow the header files to better be reused, and to generally position it to support a bigger more expansive code base.  I also updated the dependencies to use the latest versions which seems to be working fine.  Using that as a starting point, my working version is currently calling the Spotify API, displaying a landscape UI with two display modes with one including the album art, album title, song time, and artists, refreshes include retry logic and loads Spotify data using the ESP32's native multitasking abilities (currently pinned to one of the two cores), and supports next, skip, and pause.  

I still have a bit more to do, but the GitHub project definitely helped... just don't think of it is a compile and load type of thing like the Weather app is.  However, if you were like me, using the now bricked Spotify Car Thing as a desktop Spotify companion, the Color Kit Grande is everything you need to get a replacement running.  I actually built two to use in various rooms. The advantage of using this kit over some of the efforts to bring the Car Thing back to life is that the Car Thing doesn't seem to have the hardware necessary to stand alone without running companion desktop software.  This is fine if that is the only place Spotify will be running, but if you run Spotify in a variety of settings, don't want need/want software running on the desktop, and/or you want something portable, then the Color Kit Grande offers a lot. 

by (19.9k points)
Would you be willing to contribute parts of your project back to half-finished prototype we have on GitHub? It's been sitting dormant largely due to other projects with higher priority.
by (280 points)
Yes, I am open to that.  I am pretty much done with the 1.0 version of the software; however, I'll need to clean up it a little before contributing.  It came out pretty well and is designed in a way that makes adding new views straightforward.  While I've changed and added a lot, the initial start up is pretty similar and I even kept the ThingPulse logo at start up.  

How would you recommend proceeding? I could fork the GitHub project and go that route. That might make the most sense, since it would allow me to systematically copy my version over, making sure to update or remove things like passwords, personal notes, and other local files. Once that’s done, you could take a look, and I could open a pull request.
by (19.9k points)
Great, looking forward to your contribution! The GitHub fork-branch-PR route is what I would have suggested as well. Once you have the PR up, we can continue the discussion there.
by (19.9k points)
By coincidence, today's Instructables newsletter contained a link to an (ugly) version of such a project built for the Pi: https://github.com/Canterrain/spotipi-eink.
by (280 points)
edited by
Interesting.  Thanks.  I considered doing this on a Pi, but it seems a little heavy and I was looking for an ESP32 project. Honestly, I was hoping I could just build the Color Kit Grande, load the original sample code, and call it a day; however, I am happy with how things turned out and I learned a lot in the process.  The touch screen is nice and offered a lot of possibilities.

I'll start work on the fork.  I'm not sure what my ETA will be, but getting it out there will be my hobby-time priority until it is done.

4/29 - I have forked the ThingPulse repository, cloned it, and started an initial release branch

5/4   - Started prepping codebase, copying configurations over, and source files as they become ready.  Probably about 40% complete.

5/11 – The entire codebase has been copied over, cleaned up, compiled, and committed to my local repository. I also created a design diagram of the project. Next steps: begin testing and review the existing project documentation that references the original version.

5/12 - Initial testing looks great. Everything seems to be working as expected. Took some pictures of the different views to include in the project documentation.

5/14 - Updated README.md with new pics, updated information, and fresh Spotify setup pics.  Ready to submit changes.

Welcome to ThingPulse Q&A, where you can ask questions and receive answers from other members of the community.

https://thingpulse.com

...