Skip to content
main
Switch branches/tags
Go to file
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 

knobby

🎵 A little remote to remind you that there's a lot of music out there.

  • Spin the knob and explore over 5,200 music genres and 160 countries with playlists from everynoise.com and your own library
  • Control playback and see what's playing on any Spotify Connect device
  • Switch between multiple Spotify accounts and devices

demo of genre selection

knobby with coin knobby side view

Hardware

Connect the rotary encoder A and B pins to GPIO 12 and 13 and the button pin to GPIO 15.

Make it

  • LilyGO TTGO T-Display ESP32 board with ST7789 240x135 display
  • Bourns PEC11R-4215F-S0024 rotary encoder
  • MakerFocus 1100mAh LiPo battery
  • 3D printed case and knob

Flashing the firmware

To flash the firmware, you will need to have Python and esptool.py installed. If the serial device is not detected, you might need to install the CP210x drivers.

  1. Go to the latest release and download the firmware zip for your hardware: knobby-firmware.zip for the original knobby or twatch-firmware.zip for the T-Watch encoder version.
  2. With the USB cable connected, run the flash script in the directory of the extracted firmware zip:
  • on Linux or Mac: ./flash.sh
  • on Windows: ./flash.bat

Compiling from source

  1. Edit data/data.json and enter your wifi network information (if you want; it can also be configured later)
  2. Build and upload with PlatformIO: platformio run && platformio run --target upload && platformio run --target uploadfs

If data.json is not configured or there is a problem connecting to your network, knobby will enter configuration mode. Join the temporary wifi network displayed on screen and wait for the configuration portal to appear or visit http://192.168.4.1. Enter your wifi network information, then switch back to your normal wifi network and visit http://knobby.local to continue.

Usage

  • Rotate and click the knob to select or play
  • Hold down and rotate the knob to switch menus and sort modes
  • Hold down the knob for a few seconds for a random genre, country, or playlist from the last open menu
    • Keep holding the knob until the progress bar reaches the end to play automatically
    • Release the knob before the progress bar reaches the end to continue browsing
    • Rotate the knob to cancel randomizing or switch menus
  • When browsing genres, double click the knob to switch sort modes
  • When playing something, double click the knob to skip to the next track
  • Visit http://knobby.local/authorize to add additional Spotify accounts

License

All code is released under the MIT license. The case design is released under the CC-BY-NC 4.0 license.

Credits