Fire up the required software:
Follow the instructions of the creators of the various software instead of ours.. the mopidy documentation is great!
- Fire up your raspberry pi with raspbian pixel
- install mopidy (https://docs.mopidy.com/en/latest/installation/raspberrypi/)
- Install plugins of your choice, we used mopify and simple-web-client
- Set up the Raspberry PI touchscreen: https://thepihut.com/blogs/raspberry-pi-tutorials/45295044-raspberry-pi-7-touch-screen-assembly-guide
- set up the hifiberry amp: https://www.hifiberry.com/build/documentation/configuring-linux-3-18-x/
After following these steps you should be up and running and able to test
Hook everything up and test it:
Everything here is rather straight forward, but we'll cover the pitfalls we encounted
- We mounted the pi to the back of the touchscreen with a set of motherboard spacers, then the amp on top of that again
- To power it we grabbed a 16V IBM thinkpad powersupply we had kicking about, cut off the barrel jack so we could pull the cable through a hole in the case, we soldered on two pairs of wires where one goes to the 5V Buck converter, and the other into the amp hat, in theory the amp+ should be able to power the raspberry and accessories as well but turned out being too weak to handle the touch screen as well so we're using the buck converter to power the display.
Fire it up and finalize software setup:
you should be able to reach the raspberry on whatever IP and port you've set it up to, and if you had set up mopidy as a service its already running, play around just ensure to crank down the volume if you have some petite and sensitive speakers like we have, I have a bit more tinnitus than before starting this project due to the volume being at max.
we set up the raspberry to launch chromium and open the simple-web-client page in kiosk mode, we also tweaked the css for the client a bit so that it is white on black instead of black on white.
Make the case:
- we lasercut our case, the files for it is available in both .svg and .pdf if you wish to make one yourself, the case is assembled with M4 bolts so it is easy to open/fix/modify if needed later
- The display is mounted to the case with double sided tape and all the electronics apart from the buck converter are mounted onto the back of the display, the buck converter is simply hot-glued onto the side.
- If you want to make it extra pretty mount on some form of speaker connectors, we used some basic banana plug sockets for lab power supplies and such.
Set up the slack bot(if desired)
this step is possibly the most painful one as you'll need to install a newer version of golang than what the debian repo supports, we solved this easily by installing golang (apt-get install golang) and then we replaced the binaries with the newest ARM binaries from golang.com and then simply uninstalled the version from the repo, possibly very ugly but it works....
Then install the slack bot from: https://github.com/sosedoff/musicbot
We're running the bot in a tmux session that launches on boot just to wrap everything in a bit of prettyness....
create a bot token for your slack domain and fire up the bot as the documentation specifies and boom! you can control music through slack!
We've done some mods to the bot so that it only plays the first hit when you search for a track instead of the whole lot, we'll come back to you with a link to our fork when we've finalized the tweaks but you could simply replace limit: 10 with limit: 1 on line 155 in the /bot/handlers.go file if you want to do it yourself.