sw: Implement rotary encoder for volume

This commit is contained in:
Markus Koch 2020-08-08 17:27:17 +02:00
parent 577ba83a58
commit c4c6446d16
1 changed files with 11 additions and 4 deletions

View File

@ -150,10 +150,17 @@ class radioserv:
elif (key_id == 7): # PRESET elif (key_id == 7): # PRESET
pass pass
# Handle rotary input # Handle rotary input
rotary_delta = int(rdata[1])# - 128 rotary_delta = int(rdata[1])
if (rotary_delta > 0): if (rotary_delta > 127):
print("Rotary: {}".format(rdata[2])) rotary_delta -= 256
# self.mpd.volume(rotary_delta) if (rotary_delta != 0):
print("Rotary: {}".format(rotary_delta))
nvol = int(self.mpd.status()['volume']) + (rotary_delta * 4)
if (nvol < 0):
nvol = 0;
elif (nvol > 100):
nvol = 100
self.mpd.setvol(nvol)
#print("Battery: {}".format(rdata[2])) #print("Battery: {}".format(rdata[2]))
async def io_main(self): async def io_main(self):