Chromecast audio devices are a great way to stream internet music. Just connect the device to a stereo or amplified speakers, and you can stream music from your phone or Google Play Music library. The small device sits unobtrusively behind your stereo, and doesn’t add yet another eyesore to your entertainment center. The downside is that you don’t get any hardware volume control, but Ákos Melczer’s 3D-printed CastVolumeKnob will let you add that.
You can, of course, just adjust the Chromecast volume using your smartphone. But that’s pretty inconvenient for simple volume changes — particularly if you want other people to be able to control the volume, too. The CastVolumeKnob is small enough to sit comfortably in the palm of your hand, and gives you an easy way to quickly change the volume. Melczer’s design is a simple circular setup, with the control knob on top and a NeoPixel LED ring for the indicator. But, you could easily adapt this to suit your decor.
The control hardware is a simple and inexpensive ESP8266 microcontroller development board, which Melczer programmed in MicroPython. To build this, you’ll need a WeMos D1 Mini ESP8266, an ATtiny85 microcontroller, a clickable rotary encoder, an Adafruit NeoPixel ring, an 18650 LiPo battery, and a handful of miscellaneous discrete components. Just 3D print the case, configure the code for your setup, flash it, and follow Melczer’s instructions to assemble the device!