Giter Site home page Giter Site logo

spotify_zero's Introduction

Contributors Forks Stargazers Issues MIT License LinkedIn


Spotify Connect With Display For Raspberry Pi With Pirate Audio

Installs raspotify and displays cover art and song information for the currently playing song on a Pirate Audio display.

Table of Contents

About The Project

Ping Troubleshooting Tools Screen Shot

Ping Troubleshooting Tools Screen Shot 2

I wrote some code to display album cover art and song information for the currently playing song on a Pirate Audio display. This code is to be used in conjunction with raspotify (a project I have no affiliation with). The key advantage of this over mopidy is that my solution is lightweight, which results in better performance, especially, on a raspberry pi zero. Text that is too long to fit on the display scrolls, as can be seen in the two still images above.

Prerequisites

The Python packages required to run

spotipy
os
time
Pillow
requests
io
ST7789

Installation

  1. Attach pirate audio to raspberry pi (I used pirate audio with headphone out and a raspberry pi zero)

  2. Connect raspberry pi to internet and ssh onto it (or control with GUI)

  3. Set a new password

passwd
  1. Install all updates
sudo apt-get update
sudo apt-get upgrade
  1. Install the required apt packages
sudo apt-get install python3-rpi.gpio python3-spidev python3-pip python3-pil python3-numpy
sudo apt install libopenjp2-7 libopenjp2-7-dev libopenjp2-tools libatlas-base-dev
  1. Install the required Python packages
pip install st7789 numpy Pillow spotipy os time requests io
  1. Set the following parameters at the bottom of the /boot/config.txt file
sudo vi /boot/config.txt

dtparam=audio=off

dtoverlay=hifiberry-dac gpio=25=op,dh"

  1. Install raspotify
curl -sL https://dtcooper.github.io/raspotify/install.sh | sh
  1. Download this project and enter the project directory
git clone https://github.com/jb10181/spotify_zero
cd spotify_zero
  1. Create your .credentials file
spotify_pirate_zero_create_credentials.py

If you are not using a GUI to control the raspberry pi, you should run this command on another computer that has a GUI and copy the .credentials file into the spotify_zero directory of the raspberry pi afterwards.

  1. Set up the systemd service to run automatically and reboot
sudo cp spotify_pirate.service /lib/systemd/system/spotify_pirate.service
sudo systemctl daemon-reload
sudo systemctl enable spotify_pirate.service
sudo reboot now

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

James Burch - LinkedIn

Project Link: https://github.com/jb10181/spotify_zero

Acknowledgements

spotify_zero's People

Contributors

jb10181 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.