--- /dev/null
+from Components.Element import Element
+
+# this is not a GUI renderer.
+class FrontpanelLed(Element):
+ def __init__(self):
+ Element.__init__(self)
+
+ def changed(self, *args, **kwargs):
+ print ">> Frontpanel LED changed"
+ print ">> FP led:", self.source.value
+ if self.source.value:
+ pattern = 0x55555555
+ speed = 20
+ else:
+ pattern = 0
+ speed = 1
+
+ try:
+ open("/proc/stb/fp/led0_pattern", "w").write("%08x" % pattern)
+ open("/proc/stb/fp/led_pattern_speed", "w").write("%d" % speed)
+ except IOError:
+ pass
install_PYTHON = \
__init__.py Label.py Progress.py Listbox.py Renderer.py Pixmap.py \
- FixedLabel.py PositionGauge.py Canvas.py Picon.py Pig.py
+ FixedLabel.py PositionGauge.py Canvas.py Picon.py Pig.py \
+ FrontpanelLed.py
from Components.Sources.Source import Source
from Components.Sources.TunerInfo import TunerInfo
from Components.Sources.RecordState import RecordState
+from Components.Renderer.FrontpanelLed import FrontpanelLed
class SessionGlobals(Screen):
def __init__(self, session):
session.nav.event.append(self.serviceEvent)
self.service_state = 0
+ FrontpanelLed().connect(self["RecordState"])
+
def serviceEvent(self, evt):
if evt == iPlayableService.evStart:
self.service_state = 1