{"id":26856729,"url":"https://github.com/filipporaciti/spotifydisplay","last_synced_at":"2026-03-27T04:41:43.178Z","repository":{"id":285137096,"uuid":"946511565","full_name":"filipporaciti/SpotifyDisplay","owner":"filipporaciti","description":"This project uses an ESP32 connected to an ILI9341 display, allowing real-time display of various information about the song currently playing on Spotify.","archived":false,"fork":false,"pushed_at":"2025-03-29T19:07:14.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-29T19:28:09.495Z","etag":null,"topics":["esp32","ili9341","spotify","spotify-api","tft","tft-display"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/filipporaciti.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-11T08:58:35.000Z","updated_at":"2025-03-29T19:08:11.000Z","dependencies_parsed_at":"2025-03-29T19:38:23.068Z","dependency_job_id":null,"html_url":"https://github.com/filipporaciti/SpotifyDisplay","commit_stats":null,"previous_names":["filipporaciti/spotifydisplay"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filipporaciti%2FSpotifyDisplay","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filipporaciti%2FSpotifyDisplay/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filipporaciti%2FSpotifyDisplay/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filipporaciti%2FSpotifyDisplay/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/filipporaciti","download_url":"https://codeload.github.com/filipporaciti/SpotifyDisplay/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246397410,"owners_count":20770549,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["esp32","ili9341","spotify","spotify-api","tft","tft-display"],"created_at":"2025-03-31T00:23:22.575Z","updated_at":"2026-03-27T04:41:43.103Z","avatar_url":"https://github.com/filipporaciti.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📌 SpotifyDisplay\n\n## 📖 Description\nThis project uses an **ESP32** connected to an **ILI9341 display**, allowing real-time display of various information about the song currently playing on Spotify.\n⚠️ WARNING!!! You have to need a spotify premium account.\n\n## 🛠️ Hardware Used\n- **ESP32**\n- **ILI9341 display with touchscreen**\n\n## 📦 Dependencies\nTo compile the project, the following libraries are required:\n\n```\nXPT2046_Touchscreen\nAdafruit_ILI9341\nArduino_JSON\nHTTPClient\nJPEGDEC\nbase64\n```\n\n## 🔧 Installation\n1. Connect the components following the schematic below:\n   ![schema](./images/Schematic_esp32_display.png)\n2. Clone the repository:\n   ```bash\n   git clone https://github.com/filipporaciti/SpotifyDisplay.git\n   ```\n3. Before uploading the project, we need to calculate the calibration values for the touchscreen:\n* Open the project in the `displayCalibration` folder\n* Upload the project to the ESP32\n* Touch the red square and note down the x and y values displayed on the screen\n* Touch the yellow square and note down the x and y values displayed on the screen\n4. Open the project in the `SpotifyDisplay` folder\n5. Change the TS_MINX value with the x value from the red square, TS_MINY with the y value from the red square, TS_MAXX with the x value from the yellow square, TS_MAXY with the y value from the yellow square\n6. Rename the `secrets.h.example` file to `secrets.h` and modify it with the correct values: \n* WIFI_SSID and WIFI_PASSWORD with correct wifi credentials (you don't have to set both wifi credentials)\n* For CLIENT_ID and CLIENT_SECRET values you have to create a new app [here](https://developer.spotify.com/dashboard) (you have to set `Redirect URIs = http://127.0.0.1:5000/redirect` and `APIs used = Web API`)\n* For ACCESS_TOKEN and REFRESH_TOKEN you can use [get_spotify_token.py](./get_spotify_token.py) file. \n7. Upload the code to the ESP32\n8. (Optional) The files to 3D print the case are located in the `case_spotify_display` folder\n\n## 🚀 Features \nThe firmware allows you to:\n* Display the name of the song, artist, and album image currently playing\n* Play, pause, skip forward, or go back through the song using the touchscreen\n* You can set up to two Wi-Fi networks to connect the ESP32 to the internet\n\n## ❌ Known Issues\n* The artist and song names get cut off when they reach the edge of the display (see demo image)\n* Sometimes the image may not display (this happened to me only once)\n\n## 📸 Screenshot/Demo\n* Currently playing song on Spotify\n\n\u003cimg src=\"./images/song.jpg\" width=\"50%\"\u003e\n\n\n* Display calibration firmware\n\n\u003cimg src=\"./images/display_calibration.jpg\" width=\"50%\"\u003e\n\n\n* Side of the case\n\n\u003cimg src=\"./images/side.jpg\" width=\"50%\"\u003e\n\n\n* Back of the case\n\n\u003cimg src=\"./images/back.jpg\" width=\"50%\"\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilipporaciti%2Fspotifydisplay","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffilipporaciti%2Fspotifydisplay","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilipporaciti%2Fspotifydisplay/lists"}