Skip to content

Plans to build your own Plastic Player NFC based Spotify Music Controller

License

Notifications You must be signed in to change notification settings

hgrf/PlasticPlayer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Plastic Player 3

This is a remake of Plastic Player 2 (repo), an NFC based controller for Spotify. This isn't a step by step instructables style build guide but hopefully there's enough information here to build your own version. Knowledge of building stuff like this, soldering and understanding Linux, software compilation and the like would be good.

System overview

*The TCP socket connection between pp3-core and librespot is a quick hack and should be replaced by a clean D-Bus interface. Spotifyd provides a D-Bus media player interface and also uses librespot for playback, but it does not use an up-to-date version of librespot...

Materials

Hardware

Building

Setting up buildroot

docker build -t buildroot docker
docker run --rm -it -v ${PWD}:/workspace buildroot bash
make -C buildroot/ BR2_EXTERNAL=../br-external O=../output raspberrypi4-64-rauc_defconfig
cd br-external && ./openssl-ca.sh

The last line generates an OpenSSL certificate and signing key for RAUC firmware updates. Note that you can only use the firmware update feature if the new firmware was signed with the same key as the old firmware.

If you want to connect to the Plastic Player via SSH, put your public key in the ssh-keys directory.

Building on macOS

On macOS, you might run into two problems:

Building the image

docker run --rm -it -v ${PWD}:/workspace buildroot bash
make -C output/ VERSION=<PUT VERSION HERE>

Developing

SSH config

Host pp3
    HostName 10.42.0.1
    User user
    IdentityFile ~/.ssh/id_ed25519
    StrictHostKeyChecking=no
    UserKnownHostsFile=/dev/null

Syncing the web app

rsync --rsync-path="sudo rsync" -avh --delete web_ui/build/web/ pp3:/usr/html

Appendix

Wiring

docker run --rm -it -v ${PWD}:/workspace buildroot /venv/bin/wireviz -f p wiring.yml

About

Plans to build your own Plastic Player NFC based Spotify Music Controller

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 31.7%
  • Dart 29.5%
  • Shell 12.2%
  • Python 8.8%
  • C++ 8.5%
  • Makefile 6.7%
  • Other 2.6%