diff options
Diffstat (limited to 'ledctl.py')
| -rw-r--r-- | ledctl.py | 39 |
1 files changed, 37 insertions, 2 deletions
@@ -62,11 +62,46 @@ def rgbval(colorname): 'cyan': (0, 255, 255), 'pink': (255, 0, 255), } - return switch.get(colorname, 'Valid colors are black, white, ired, green, blue, yellow, on, off') + return switch.get(colorname, (255, 255, 255)) + +def hexval(letter): + switch = { + '0': 0, + '1': 1, + '2': 2, + '3': 3, + '4': 4, + '5': 5, + '6': 6, + '7': 7, + '8': 8, + '9': 9, + 'A': 10, + 'a': 10, + 'B': 11, + 'b': 11, + 'C': 12, + 'c': 12, + 'D': 13, + 'd': 13, + 'E': 14, + 'e': 14, + 'F': 15, + 'f': 15, + } + return switch.get(letter, 0) if args.color: #print('color ' + args.color) - leds_color = rgbval(args.color); + if args.color[:1] == '#': + red = 16 * hexval(args.color[1:2]) + hexval(args.color[2:3]); + green = 16 * hexval(args.color[3:4]) + hexval(args.color[4:5]); + blue = 16 * hexval(args.color[5:6]) + hexval(args.color[6:7]); + leds_color = (red, green, blue); + #print ('color %d %d %d' % leds_color) + + else: + leds_color = rgbval(args.color); if (leds_num > 0): #print('setting LED %d' % leds_num) |
