from config import config, ConfigSubsection, ConfigSelection, ConfigFloat, ConfigSatlist, ConfigYesNo, ConfigInteger, ConfigSubList, ConfigNothing, ConfigSubDict, ConfigOnOff
-from enigma import eDVBSatelliteEquipmentControl, \
+from enigma import eDVBSatelliteEquipmentControl as secClass, \
eDVBSatelliteLNBParameters as lnbParam, \
eDVBSatelliteDiseqcParameters as diseqcParam, \
eDVBSatelliteSwitchParameters as switchParam, \
return self.satList
def update(self):
- sec = eDVBSatelliteEquipmentControl.getInstance()
+ sec = secClass.getInstance()
sec.clear() ## this do unlinking NIMs too !!
print "sec config cleared"
self.satList = []
sec.setLNBLOFH(currLnb.lofh.value * 1000)
sec.setLNBThreshold(currLnb.threshold.value * 1000)
- if currLnb.output_12v.value == "0V":
- pass # nyi in drivers
- elif currLnb.output_12v.value == "12V":
- pass # nyi in drivers
+# if currLnb.output_12v.value == "0V":
+# pass # nyi in drivers
+# elif currLnb.output_12v.value == "12V":
+# pass # nyi in drivers
if currLnb.increased_voltage.value:
sec.setLNBIncreasedVoltage(lnbParam.ON)
return self.cablesList[0]
def getCableTrustNit(self, nim):
- return (config.Nims[nim].cabletype.value == "quick")
+ return config.Nims[nim].cabletype.value == "quick"
def getTerrestrialDescription(self, nim):
return self.terrestrialsList[config.Nims[nim].terrestrial.index][0]
lastsocket = -1
+ entries = {}
while 1:
line = nimfile.readline()
if line == "":
parts = line.strip().split(" ")
id = int(parts[2][:1])
lastsocket = int(id)
- self.nimSocketCount += 1
+ entries[lastsocket] = {}
elif line.strip().startswith("Type:"):
- self.nimTypes[lastsocket] = str(line.strip()[6:])
- #self.nimTypes[lastsocket] = str("DVB-T")
+ entries[lastsocket]["type"] = str(line.strip()[6:])
+ #entries[lastsocket]["type"] = str("DVB-S2")
elif line.strip().startswith("Name:"):
- self.nimNames[lastsocket] = str(line.strip()[6:])
+ entries[lastsocket]["name"] = str(line.strip()[6:])
elif line.strip().startswith("empty"):
- self.nimNames[lastsocket] = _("N/A")
- self.nimTypes[lastsocket] = "empty/unknown"
-
+ entries[lastsocket]["type"] = "empty/unknown"
+ entries[lastsocket]["name"] = _("N/A")
nimfile.close()
+
+ for id,entry in entries.items():
+ if not(entry.has_key("name") and entry.has_key("type") and self.nimType.has_key(entry["type"])):
+ entry["name"] = _("N/A")
+ entry["type"] = "empty/unknown"
+ self.nimNames[id] = entry["name"]
+ self.nimTypes[id] = entry["type"]
+ self.nimSocketCount += 1
def getNimType(self, slotID):
if slotID >= self.nimCount:
#print "nimDiseqcD set to " + str(val)
pass
+def InitSecParams():
+ config.sec = ConfigSubsection()
+
+ x = ConfigInteger(default=15, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_CONT_TONE, configElement.value))
+ config.sec.delay_after_continuous_tone_change = x
+
+ x = ConfigInteger(default=10, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_FINAL_VOLTAGE_CHANGE, configElement.value))
+ config.sec.delay_after_final_voltage_change = x
+
+ x = ConfigInteger(default=120, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_BETWEEN_DISEQC_REPEATS, configElement.value))
+ config.sec.delay_between_diseqc_repeats = x
+
+ x = ConfigInteger(default=50, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_LAST_DISEQC_CMD, configElement.value))
+ config.sec.delay_after_last_diseqc_command = x
+
+ x = ConfigInteger(default=50, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_TONEBURST, configElement.value))
+ config.sec.delay_after_toneburst = x
+
+ x = ConfigInteger(default=120, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_ENABLE_VOLTAGE_BEFORE_SWITCH_CMDS, configElement.value))
+ config.sec.delay_after_enable_voltage_before_switch_command = x
+
+ x = ConfigInteger(default=700, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_BETWEEN_SWITCH_AND_MOTOR_CMD, configElement.value))
+ config.sec.delay_between_switch_and_motor_command = x
+
+ x = ConfigInteger(default=150, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_VOLTAGE_CHANGE_BEFORE_MEASURE_IDLE_INPUTPOWER, configElement.value))
+ config.sec.delay_after_voltage_change_before_measure_idle_inputpower = x
+
+ x = ConfigInteger(default=750, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_ENABLE_VOLTAGE_BEFORE_MOTOR_CMD, configElement.value))
+ config.sec.delay_after_enable_voltage_before_motor_command = x
+
+ x = ConfigInteger(default=150, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_MOTOR_STOP_CMD, configElement.value))
+ config.sec.delay_after_motor_stop_command = x
+
+ x = ConfigInteger(default=150, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.DELAY_AFTER_VOLTAGE_CHANGE_BEFORE_MOTOR_CMD, configElement.value))
+ config.sec.delay_after_voltage_change_before_motor_command = x
+
+ x = ConfigInteger(default=120, limits = (0, 9999))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.MOTOR_RUNNING_TIMEOUT, configElement.value))
+ config.sec.motor_running_timeout = x
+
+ x = ConfigInteger(default=1, limits = (0, 5))
+ x.addNotifier(lambda configElement: secClass.setParam(secClass.MOTOR_COMMAND_RETRIES, configElement.value))
+ config.sec.motor_command_retries = x
+
+
def InitNimManager(nimmgr):
+ InitSecParams()
+
config.Nims = ConfigSubList()
for x in range(nimmgr.nimCount):
config.Nims.append(ConfigSubsection())
-
+
# def nimConfigModeChanged(slotid, configElement):
# nimmgr.nimConfigModeChanged(slotid, configElement.value)
def nimDiseqcModeChanged(slotid, configElement):
nimmgr.nimDiseqcModeChanged(slotid, configElement.value)
-
+
def nimPortAChanged(slotid, configElement):
nimmgr.nimPortAChanged(slotid, configElement.value)
def nimPortBChanged(slotid, configElement):
x = slot.slotid
cname = nimmgr.getConfigPrefix(x)
nim = config.Nims[x]
-
+
if slot.nimType == nimmgr.nimType["DVB-S"]:
if slot.slotid == 0:
nim.configMode = ConfigSelection(
nim.equalTo = ConfigSelection(choices = satNimListNames)
nim.linkedTo = ConfigSelection(choices = satNimListNames)
nim.satposDependsTo = ConfigSelection(choices = satNimListNames)
-
+
#perhaps the instance of the slot is more useful?
# nim.configMode.addNotifier(boundFunction(nimConfigModeChanged,x))
nim.diseqcMode.addNotifier(boundFunction(nimDiseqcModeChanged,x))
nim.diseqcB.addNotifier(boundFunction(nimPortBChanged,x))
nim.diseqcC.addNotifier(boundFunction(nimPortCChanged,x))
nim.diseqcD.addNotifier(boundFunction(nimPortDChanged,x))
-
+
# advanced config:
nim.advanced = ConfigSubsection()
nim.advanced.sats = getConfigSatlist(192,nimmgr.satList)
csw = [("none", _("None")), ("AA", _("AA")), ("AB", _("AB")), ("BA", _("BA")), ("BB", _("BB"))]
for y in range(0, 16):
csw.append((str(0xF0|y), "Input " + str(y+1)))
-
+
ucsw = [("0", _("None"))]
for y in range(1, 17):
ucsw.append((str(y), "Input " + str(y)))
-
+
nim.advanced.lnb = ConfigSubList()
nim.advanced.lnb.append(ConfigNothing())
for x in range(1, 33):
nim.advanced.lnb[x].lofl = ConfigInteger(default=9750, limits = (0, 99999))
nim.advanced.lnb[x].lofh = ConfigInteger(default=10600, limits = (0, 99999))
nim.advanced.lnb[x].threshold = ConfigInteger(default=11700, limits = (0, 99999))
- nim.advanced.lnb[x].output_12v = ConfigSelection(choices = [("0V", _("0 V")), ("12V", _("12 V"))], default="0V")
+# nim.advanced.lnb[x].output_12v = ConfigSelection(choices = [("0V", _("0 V")), ("12V", _("12 V"))], default="0V")
nim.advanced.lnb[x].increased_voltage = ConfigYesNo(default=False)
nim.advanced.lnb[x].toneburst = ConfigSelection(choices = [("none", _("None")), ("A", _("A")), ("B", _("B"))], default = "none")
nim.advanced.lnb[x].diseqcMode = ConfigSelection(choices = [("none", _("None")), ("1_0", _("1.0")), ("1_1", _("1.1")), ("1_2", _("1.2"))], default = "none")
nim.advanced.lnb[x].sequenceRepeat = ConfigYesNo(default=False)
nim.advanced.lnb[x].commandOrder1_0 = ConfigSelection(choices = [("ct", "committed, toneburst"), ("tc", "toneburst, committed")], default = "ct")
nim.advanced.lnb[x].commandOrder = ConfigSelection(choices = [
- ("ct", "committed, toneburst"),
- ("tc", "toneburst, committed"),
- ("cut", "committed, uncommitted, toneburst"),
- ("tcu", "toneburst, committed, uncommitted"),
- ("uct", "uncommitted, committed, toneburst"),
+ ("ct", "committed, toneburst"),
+ ("tc", "toneburst, committed"),
+ ("cut", "committed, uncommitted, toneburst"),
+ ("tcu", "toneburst, committed, uncommitted"),
+ ("uct", "uncommitted, committed, toneburst"),
("tuc", "toneburst, uncommitted, commmitted")],
default="ct")
nim.advanced.lnb[x].uncommittedDiseqcCommand = ConfigSelection(choices = ucsw)
nim.advanced.lnb[x].powerThreshold = ConfigInteger(default=50, limits=(0, 100))
elif slot.nimType == nimmgr.nimType["DVB-C"]:
- nim.cabletype = ConfigSelection(choices = [("quick", _("Quick")), ("complete", _("Complete"))])
+ nim.cabletype = ConfigSelection(choices = [("quick", _("Quick")), ("complete", _("Complete"))], default = "complete")
elif slot.nimType == nimmgr.nimType["DVB-T"]:
list = []
n = 0