SqueezeButtonPi is a tool some of you might find useful if you are
trying to build a Raspberry Pi based Squeezebox player and you want to
use various buttons or rotary encoders.
It's currently a bit limited - only supports playback control commands
without feedback (play, pause, power, skip, volume) but it could easily
be extended to take server feedback and support things like "favorites"
although for the latter someone should take the time to create a "hold"
gesture detection for a button, something I didn't have the time for so
far.
One nice feature is that it's able to autodetect a common Squeezebox
setup so you often don't need to manually configure the MAC, the server
etc. and it can do automatic server switching.
MAIN FEATURES:
- Supports buttons and rotary encoders
- Can be run as a daemon at startup and is fully command-line
configurable
- Automatically detects the MAC address of your RPi (or you can
configure it manually)
- Automatically detects what server your player is connected to and
switches the server if your player does so it can be used in
multi-server setups without a configuration change
- can use authenticating servers, although only with manual
username/password configuration
Here's the source code and more documentation:
https://github.com/coolio107/SqueezeButtonPi-Daemon
USAGE:
Code:
--------------------
sbpd [OPTION...] [e,pin1,pin2,CMD,edge] [b,pin,CMD,edge...]
--------------------
Options arguments:
Code:
--------------------
-A, --address=Server-Address Set server address. Default: autodetect
-M, --mac=MAC-Address Set MAC address of player. Deafult: autodetect
-p, --password=password Set password for server. Default: none
-P, --port=xxxx Set server control port. Default: autodetect
-u, --username=user name Set user name for server. Default: none
-d, --daemonize Daemonize
-k, --kill Kill daemon
-s, --silent Don't produce output
-v, --verbose Produce verbose output
-?, --help Give this help list
--usage Give a short usage message
-V, --version Print program version
--------------------
Non-Option arguments.
At least one needs to be specified for the daemon to do anything useful
Arguments are a comma-separated list of configuration parameters:
Code:
--------------------
For rotary encoders (one, volume only):
e,pin1,pin2,CMD\[,edge\]
"e" for "Encoder"
p1, p2: GPIO PIN numbers in BCM-notation
CMD: Command. Unused for encoders, always VOLM for Volume
edge: Optional. one of
1 - falling edge
2 - rising edge
0, 3 - both
For buttons:
b,pin,CMD\[,edge\]
"b" for "Button"
pin: GPIO PIN numbers in BCM-notation
CMD: Command. One of:
PLAY: Play/pause
PREV: Jump to previous track
NEXT: Jump to next track
VOL+: Increase volume
VOL-: Decrease volume
POWR: Toggle power state
edge: Optional. one of
1 - falling edge
2 - rising edge
0, 3 - both
--------------------
---
learn more about iPeng, the iPhone and iPad remote for the Squeezebox
and
Logitech UE Smart Radio as well as iPeng Party, the free Party-App,
at penguinlovesmusic.com
*New: iPeng 9, the Universal App for iPhone, iPad and Apple Watch*
------------------------------------------------------------------------
pippin's Profile: http://forums.slimdevices.com/member.php?userid=13777
View this thread: http://forums.slimdevices.com/showthread.php?t=107001
_______________________________________________
diy mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/diy