Example #1
0
 def newNode(self, nodeinfo):
     global lamp,lamps,defaultlamp
     if nodeinfo.multicast == True:
         if len(lamps) == 0 or nodeinfo.node == defaultlamp:
             # insert the node at position one but keep current selection
             lamps.insert(0,nodeinfo.node)
             lamp = 0#(lamp + 1) % len(lamps)
             hid.lcd(0,0,lamps[lamp])
         else:
             lamps.append(nodeinfo.node)
Example #2
0
def refreshlcd():
    global lamp,lamps,colormode,bwstate,lampselectiontimeout,refreshlcdevent
	
    resolveprogress = ' '

    #while True:
		#print "refreshlcd()"
	#refreshlcdevent.clear()
    if len(lamps) > 0:
		if lampselectiontimeout < time.time():
			colormode = 0
			lamp = 0

	#    if mode == 2:
	#        hid.lcd(0,1,'Off   Mode Group')
	#    elif mode == 1:
	#        hid.lcd(0,1,'White Mode Group')
		
		hid.lcd(0,0,lamps[lamp])

		if bwstate:
			bwcaption = "White"
		else:
			bwcaption = "Off  "

		if colormode == 0:
			colorcaption = "HSV"
		elif colormode == 1:
			colorcaption = "HSL"
		else:
			colorcaption = "RGB"
		
		hid.lcd(0,1,"%s %s  Group"%(bwcaption,colorcaption))
		#refreshlcdevent.wait(10)
    else:
		hid.lcd(0,0,"Resolving..%s    "%resolveprogress)
		progress = {
			'.': ' ',
			' ': '.',
			'V': '<',
			'<': '^',
			'^': '>',
			'>': 'V'
		}
		resolveprogress = progress.get(resolveprogress)
		#refreshlcdevent.wait(0.5)
    return True
Example #3
0
 def onButtonPressed(self, node, button):
     global lamp, lamps, mode
     if button == 0:
         hid.clear(7-lamp)
         lamp += 1
         if lamp == len(lamps):
             lamp = 0
         hid.lcd(0,0,lamps[lamp])
     elif button == 1:
         if mode == 1:
             mode = 2
             hid.lcd(0,1,'Off   Mode Group')
         elif mode == 2:
             mode = 1
             hid.lcd(0,1,'White Mode Group')
     elif button == 6:
         a = uberbus.moodlamp.Moodlamp(lamps[lamp],True)
         print "connecting to", lamps[lamp]
         a.connect()
         if mode == 1:
             a.setcolor(255,255,255)
         elif mode == 2:
             a.setcolor(0,0,0)
Example #4
0
    q = v * (1.0 - (f*s))
    t = v * (1.0 - ((1.0 - f) * s))
    return {
        0: (v, t, p),
        1: (q, v, p),
        2: (p, v, t),
        3: (p, q, v),
        4: (t, p, v),
        5: (v, p, q),
    }[hi]

hidname = sys.argv[1]
lamps = sys.argv[2:]

hid = uberbus.hid.HID(hidname)
hid.lcd(0,1,'White Mode Group')
mode = 1
s = 1
v = 1
h = 0

r = g = b = 0
lamp = 0
hid.lcd(0,0,lamps[lamp])
class HIDCallback(uberbus.hid.HIDCallback):
    def onButtonPressed(self, node, button):
        global lamp, lamps, mode
        if button == 0:
            hid.clear(7-lamp)
            lamp += 1
            if lamp == len(lamps):