Skip to content

imkenough/spotify-deskthing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spotify Desk Thing

A DIY Spotify controller using an ESP32 and an ILI9341 TFT display. This project allows you to view current track info, album art, and control playback (play/pause, next, previous, volume) directly from your desk.

For more detailed information and setup guides, visit the Wiki.

Features

  • Real-time Spotify playback status.
  • Album art display with dynamic color extraction for the UI theme.
  • Playback controls: Play/Pause, Next, Previous.
  • Volume control.
  • Web-based setup for Spotify authentication.

Hardware Requirements

  • ESP32 Development Board.
  • ILI9341 TFT Display (320x240).
  • Push buttons for controls.

Setup Instructions

  1. Clone the repository.
  2. Configure config.h:
    • Rename config.h.example to config.h.
    • Enter your WiFi SSID and Password.
    • Create a Spotify Application on the Spotify Developer Dashboard.
    • Set the Redirect URI to http://127.0.0.1:8888/callback.
    • Copy the Client ID and Client Secret into config.h.
  3. Install Libraries:
    • TFT_eSPI
    • TJpg_Decoder
    • ArduinoJson
  4. Configure TFT_eSPI:
    • Ensure your User_Setup.h in the TFT_eSPI library folder matches the pins defined in User_Setup.h.example (or copy User_Setup.h.example to your library configuration).
  5. Upload the code to your ESP32.
  6. Authentication:
    • On first boot, the screen will show an IP address.
    • Visit that IP in your browser.
    • Follow the link to log in to Spotify.
    • After being redirected to a broken page (127.0.0.1), copy the entire URL and paste it back into the setup page on the ESP32.

Images

v1.jpg - the reason for the awkward button placement will reveal in final.jpg

"PCB"layout.jpg - the esp is tucked under the screen which itself is on female berg pins (2mm pitch)

v2.jpg - ui changes made, button placeholders were text chars

final.jpg - i managed to cram this into a techcom lcd tv box i had lying around hence the awk button placement.

thoughts?

thoughts and future scope

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

A DIY Spotify desktop controller based on the Spotify Car Thing

Topics

Resources

License

Stars

Watchers

Forks

Contributors