def createConfigMode(self): if self.nim.isCompatible("DVB-S"): choices = {"nothing": _("Not configured"), "simple": _("Simple"), "advanced": _("Advanced")} if len(nimmanager.canEqualTo(self.slotid)) > 0: choices["equal"] = _("Equal to") if len(nimmanager.canDependOn(self.slotid)) > 0: choices["satposdepends"] = _("Second cable of motorized LNB") if len(nimmanager.canInternalConnectTo(self.slotid)) > 0: choices["loopthrough_internal"] = _("Internal loopthrough to") if len(nimmanager.canExternalConnectTo(self.slotid)) > 0: choices["loopthrough_external"] = _("External loopthrough to") self.nimConfig.configMode.setChoices(choices, default="simple")
def createConfigMode(self): if self.nim.isCompatible("DVB-S"): choices = {"nothing": _("Not configured"), "simple": _("Simple"), "advanced": _("Advanced")} if len(nimmanager.canEqualTo(self.slotid)) > 0: choices["equal"] = _("Equal to") if len(nimmanager.canDependOn(self.slotid)) > 0: choices["satposdepends"] = _("Second cable of motorized LNB") if len(nimmanager.canInternalConnectTo(self.slotid)) > 0: choices["loopthrough_internal"] = _("Internal loopthrough to") if len(nimmanager.canExternalConnectTo(self.slotid)) > 0: choices["loopthrough_external"] = _("External loopthrough to") self.nimConfig.configMode.setChoices(choices, default = "simple")
def createSetup(self): print "Creating setup" self.list = [ ] self.multiType = None self.configMode = None self.diseqcModeEntry = None self.advancedSatsEntry = None self.advancedLnbsEntry = None self.advancedDiseqcMode = None self.advancedUsalsEntry = None self.advancedLof = None self.advancedPowerMeasurement = None self.turningSpeed = None self.turnFastEpochBegin = None self.turnFastEpochEnd = None self.toneburst = None self.committedDiseqcCommand = None self.uncommittedDiseqcCommand = None self.commandOrder = None self.cableScanType = None self.have_advanced = False self.advancedUnicable = None self.advancedType = None self.advancedManufacturer = None self.advancedSCR = None self.advancedDiction = None self.advancedConnected = None self.advancedUnicableTuningAlgo = None self.showAdditionalMotorOptions = None self.selectSatsEntry = None self.advancedSelectSatsEntry = None self.singleSatEntry = None if self.nim.isMultiType(): multiType = self.nimConfig.multiType self.multiType = getConfigListEntry(_("Tuner type"), multiType) self.list.append(self.multiType) if self.nim.isCompatible("DVB-S"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "simple": #simple setup self.diseqcModeEntry = getConfigListEntry(pgettext("Satellite configuration mode", "Mode"), self.nimConfig.diseqcMode) self.list.append(self.diseqcModeEntry) if self.nimConfig.diseqcMode.value in ("single", "toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"): self.createSimpleSetup(self.list, self.nimConfig.diseqcMode.value) if self.nimConfig.diseqcMode.value in ("positioner", "positioner_select"): self.createPositionerSetup(self.list) elif self.nimConfig.configMode.value == "equal": choices = [] nimlist = nimmanager.canEqualTo(self.nim.slot) for id in nimlist: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "satposdepends": choices = [] nimlist = nimmanager.canDependOn(self.nim.slot) for id in nimlist: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "loopthrough_internal": choices = [] print "internal connectable to:", nimmanager.canInternalConnectTo(self.slotid) connectable = nimmanager.canInternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Internal connected to"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "loopthrough_external": choices = [] print "external connectable to:", nimmanager.canExternalConnectTo(self.slotid) connectable = nimmanager.canExternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("External connected to"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "nothing": pass elif self.nimConfig.configMode.value == "advanced": # advanced # SATs self.advancedSatsEntry = getConfigListEntry(_("Satellite"), self.nimConfig.advanced.sats) self.list.append(self.advancedSatsEntry) current_config_sats = self.nimConfig.advanced.sats.value if current_config_sats in ("3605", "3606"): self.advancedSelectSatsEntry = getConfigListEntry(_("Press OK to select satellites"), self.nimConfig.pressOKtoList) self.list.append(self.advancedSelectSatsEntry) self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[int(current_config_sats)]) else: cur_orb_pos = self.nimConfig.advanced.sats.orbital_position satlist = self.nimConfig.advanced.sat.keys() if cur_orb_pos is not None: if cur_orb_pos not in satlist: cur_orb_pos = satlist[0] self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[cur_orb_pos]) self.have_advanced = True if path.exists("/proc/stb/frontend/%d/tone_amplitude" % self.nim.slot) and config.usage.setup_level.index >= 2: # expert self.list.append(getConfigListEntry(_("Tone amplitude"), self.nimConfig.toneAmplitude)) elif self.nim.isCompatible("DVB-C"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "enabled": self.list.append(getConfigListEntry(_("Network ID"), self.nimConfig.cable.scan_networkid)) self.cableScanType=getConfigListEntry(_("Used service scan type"), self.nimConfig.cable.scan_type) self.list.append(self.cableScanType) if self.nimConfig.cable.scan_type.value == "provider": self.list.append(getConfigListEntry(_("Provider to scan"), self.nimConfig.cable.scan_provider)) else: if self.nimConfig.cable.scan_type.value == "bands": # TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF I"), self.nimConfig.cable.scan_band_EU_VHF_I)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU MID"), self.nimConfig.cable.scan_band_EU_MID)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF III"), self.nimConfig.cable.scan_band_EU_VHF_III)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF IV"), self.nimConfig.cable.scan_band_EU_UHF_IV)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF V"), self.nimConfig.cable.scan_band_EU_UHF_V)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU SUPER"), self.nimConfig.cable.scan_band_EU_SUPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU HYPER"), self.nimConfig.cable.scan_band_EU_HYPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US LOW"), self.nimConfig.cable.scan_band_US_LOW)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US MID"), self.nimConfig.cable.scan_band_US_MID)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US HIGH"), self.nimConfig.cable.scan_band_US_HIGH)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US SUPER"), self.nimConfig.cable.scan_band_US_SUPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US HYPER"), self.nimConfig.cable.scan_band_US_HYPER)) elif self.nimConfig.cable.scan_type.value == "steps": self.list.append(getConfigListEntry(_("Frequency scan step size(khz)"), self.nimConfig.cable.scan_frequency_steps)) # TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' self.list.append(getConfigListEntry(_("Scan %s") % ("QAM16"), self.nimConfig.cable.scan_mod_qam16)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM32"), self.nimConfig.cable.scan_mod_qam32)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM64"), self.nimConfig.cable.scan_mod_qam64)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM128"), self.nimConfig.cable.scan_mod_qam128)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM256"), self.nimConfig.cable.scan_mod_qam256)) self.list.append(getConfigListEntry(_("Scan %s") % ("SR6900"), self.nimConfig.cable.scan_sr_6900)) self.list.append(getConfigListEntry(_("Scan %s") % ("SR6875"), self.nimConfig.cable.scan_sr_6875)) self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext1)) self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext2)) self.have_advanced = False elif self.nim.isCompatible("DVB-T"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) self.have_advanced = False if self.nimConfig.configMode.value == "enabled": self.list.append(getConfigListEntry(_("Terrestrial provider"), self.nimConfig.terrestrial)) self.list.append(getConfigListEntry(_("Enable 5V for active antenna"), self.nimConfig.terrestrial_5V)) else: self.have_advanced = False self["config"].list = self.list self["config"].l.setList(self.list)
def fillListWithAdvancedSatEntrys(self, Sat): lnbnum = int(Sat.lnb.value) currLnb = self.nimConfig.advanced.lnb[lnbnum] diction = None if isinstance(currLnb, ConfigNothing): currLnb = None # LNBs self.advancedLnbsEntry = getConfigListEntry(_("LNB"), Sat.lnb) self.list.append(self.advancedLnbsEntry) if currLnb: if self.nim.isFBCLink(): if currLnb.lof.value != "unicable": currLnb.lof.value = "unicable" self.list.append(getConfigListEntry(_("Priority"), currLnb.prio)) self.advancedLof = getConfigListEntry("LOF", currLnb.lof) self.list.append(self.advancedLof) if currLnb.lof.value == "user_defined": self.list.append(getConfigListEntry("LOF/L", currLnb.lofl)) self.list.append(getConfigListEntry("LOF/H", currLnb.lofh)) self.list.append(getConfigListEntry(_("Threshold"), currLnb.threshold)) if currLnb.lof.value == "unicable": self.advancedUnicable = getConfigListEntry("Unicable "+_("Configuration mode"), currLnb.unicable) self.list.append(self.advancedUnicable) if currLnb.unicable.value == "unicable_user": self.advancedDiction = getConfigListEntry(_("Diction"), currLnb.dictionuser) self.list.append(self.advancedDiction) if currLnb.dictionuser.value == "EN50494": satcr = currLnb.satcruserEN50494 stcrvco = currLnb.satcrvcouserEN50494[currLnb.satcruserEN50494.index] elif currLnb.dictionuser.value == "EN50607": satcr = currLnb.satcruserEN50607 stcrvco = currLnb.satcrvcouserEN50607[currLnb.satcruserEN50607.index] self.advancedSCR = getConfigListEntry(_("Channel"), satcr) self.list.append(self.advancedSCR) self.list.append(getConfigListEntry(_("Frequency"), stcrvco)) self.list.append(getConfigListEntry("LOF/L", currLnb.lofl)) self.list.append(getConfigListEntry("LOF/H", currLnb.lofh)) self.list.append(getConfigListEntry(_("Threshold"), currLnb.threshold)) elif currLnb.unicable.value == "unicable_matrix": nimmanager.sec.reconstructUnicableDate(currLnb.unicableMatrixManufacturer, currLnb.unicableMatrix, currLnb) manufacturer_name = currLnb.unicableMatrixManufacturer.value manufacturer = currLnb.unicableMatrix[manufacturer_name] product_name = manufacturer.product.value self.advancedManufacturer = getConfigListEntry(_("Manufacturer"), currLnb.unicableMatrixManufacturer) self.list.append(self.advancedManufacturer) if product_name in manufacturer.scr: diction = manufacturer.diction[product_name].value self.advancedType = getConfigListEntry(_("Type"), manufacturer.product) self.advancedSCR = getConfigListEntry(_("Channel"), manufacturer.scr[product_name]) self.list.append(self.advancedType) self.list.append(self.advancedSCR) self.list.append(getConfigListEntry(_("Frequency"), manufacturer.vco[product_name][manufacturer.scr[product_name].index])) elif currLnb.unicable.value == "unicable_lnb": nimmanager.sec.reconstructUnicableDate(currLnb.unicableLnbManufacturer, currLnb.unicableLnb, currLnb) manufacturer_name = currLnb.unicableLnbManufacturer.value manufacturer = currLnb.unicableLnb[manufacturer_name] product_name = manufacturer.product.value self.advancedManufacturer = getConfigListEntry(_("Manufacturer"), currLnb.unicableLnbManufacturer) self.list.append(self.advancedManufacturer) if product_name in manufacturer.scr: diction = manufacturer.diction[product_name].value self.advancedType = getConfigListEntry(_("Type"), manufacturer.product) self.advancedSCR = getConfigListEntry(_("Channel"), manufacturer.scr[product_name]) self.list.append(self.advancedType) self.list.append(self.advancedSCR) self.list.append(getConfigListEntry(_("Frequency"), manufacturer.vco[product_name][manufacturer.scr[product_name].index])) self.advancedUnicableTuningAlgo = getConfigListEntry(_("Tuning algorithm"), currLnb.unicableTuningAlgo) self.list.append(self.advancedUnicableTuningAlgo) choices = [] connectable = nimmanager.canInternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id) + _(" (internal connection)"))) connectable = nimmanager.canExternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id) + _(" (external connection)"))) if len(choices): if self.nim.isFBCLink(): if self.nimConfig.advanced.unicableconnected.value != True: self.nimConfig.advanced.unicableconnected.value = True self.advancedConnected = getConfigListEntry(_("connected"), self.nimConfig.advanced.unicableconnected) self.list.append(self.advancedConnected) if self.nimConfig.advanced.unicableconnected.value == True: self.nimConfig.advanced.unicableconnectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Connected to"),self.nimConfig.advanced.unicableconnectedTo)) print "[Satconfig] unicableconnectedTo choices : ", choices else: #no Unicable self.list.append(getConfigListEntry(_("Voltage mode"), Sat.voltage)) self.list.append(getConfigListEntry(_("Increased voltage"), currLnb.increased_voltage)) self.list.append(getConfigListEntry(_("Tone mode"), Sat.tonemode)) if lnbnum < 65 and diction !="EN50607": self.advancedDiseqcMode = getConfigListEntry(_("DiSEqC mode"), currLnb.diseqcMode) self.list.append(self.advancedDiseqcMode) if currLnb.diseqcMode.value != "none": self.list.append(getConfigListEntry(_("Fast DiSEqC"), currLnb.fastDiseqc)) self.toneburst = getConfigListEntry(_("Toneburst"), currLnb.toneburst) self.list.append(self.toneburst) self.committedDiseqcCommand = getConfigListEntry(_("DiSEqC 1.0 command"), currLnb.commitedDiseqcCommand) self.list.append(self.committedDiseqcCommand) if currLnb.diseqcMode.value == "1_0": if currLnb.toneburst.index and currLnb.commitedDiseqcCommand.index: self.list.append(getConfigListEntry(_("Command order"), currLnb.commandOrder1_0)) else: self.uncommittedDiseqcCommand = getConfigListEntry(_("DiSEqC 1.1 command"), currLnb.uncommittedDiseqcCommand) self.list.append(self.uncommittedDiseqcCommand) if currLnb.uncommittedDiseqcCommand.index: if currLnb.commandOrder.value == "ct": currLnb.commandOrder.value = "cut" elif currLnb.commandOrder.value == "tc": currLnb.commandOrder.value = "tcu" else: if currLnb.commandOrder.index & 1: currLnb.commandOrder.value = "tc" else: currLnb.commandOrder.value = "ct" self.commandOrder = getConfigListEntry(_("Command order"), currLnb.commandOrder) if 1 < ((1 if currLnb.uncommittedDiseqcCommand.index else 0) + (1 if currLnb.commitedDiseqcCommand.index else 0) + (1 if currLnb.toneburst.index else 0)): self.list.append(self.commandOrder) if currLnb.uncommittedDiseqcCommand.index: self.list.append(getConfigListEntry(_("DiSEqC 1.1 repeats"), currLnb.diseqcRepeats)) self.list.append(getConfigListEntry(_("Sequence repeat"), currLnb.sequenceRepeat)) if currLnb.diseqcMode.value == "1_2": if SystemInfo["CanMeasureFrontendInputPower"]: self.advancedPowerMeasurement = getConfigListEntry(_("Use power measurement"), currLnb.powerMeasurement) self.list.append(self.advancedPowerMeasurement) if currLnb.powerMeasurement.value: self.list.append(getConfigListEntry(_("Power threshold in mA"), currLnb.powerThreshold)) self.turningSpeed = getConfigListEntry(_("Rotor turning speed"), currLnb.turningSpeed) self.list.append(self.turningSpeed) if currLnb.turningSpeed.value == "fast epoch": self.turnFastEpochBegin = getConfigListEntry(_("Begin time"), currLnb.fastTurningBegin) self.turnFastEpochEnd = getConfigListEntry(_("End time"), currLnb.fastTurningEnd) self.list.append(self.turnFastEpochBegin) self.list.append(self.turnFastEpochEnd) else: if currLnb.powerMeasurement.value: currLnb.powerMeasurement.value = False currLnb.powerMeasurement.save() self.advancedUsalsEntry = getConfigListEntry(_("Use USALS for this sat"), Sat.usals) if lnbnum < 65: self.list.append(self.advancedUsalsEntry) if Sat.usals.value: self.list.append(getConfigListEntry(_("Longitude"), currLnb.longitude)) self.list.append(getConfigListEntry(" ", currLnb.longitudeOrientation)) self.list.append(getConfigListEntry(_("Latitude"), currLnb.latitude)) self.list.append(getConfigListEntry(" ", currLnb.latitudeOrientation)) else: self.list.append(getConfigListEntry(_("Stored position"), Sat.rotorposition)) if not hasattr(self, 'additionalMotorOptions'): self.additionalMotorOptions = ConfigYesNo(False) self.showAdditionalMotorOptions = getConfigListEntry(_("Extra motor options"), self.additionalMotorOptions) self.list.append(self.showAdditionalMotorOptions) if self.additionalMotorOptions.value: self.list.append(getConfigListEntry(" " + _("Horizontal turning speed") + " [" + chr(176) + "/sec]", currLnb.turningspeedH)) self.list.append(getConfigListEntry(" " + _("Vertical turning speed") + " [" + chr(176) + "/sec]", currLnb.turningspeedV)) self.list.append(getConfigListEntry(" " + _("Turning step size") + " [" + chr(176) + "]", currLnb.tuningstepsize)) self.list.append(getConfigListEntry(" " + _("Max memory positions"), currLnb.rotorPositions))
def createSetup(self): self.list = [ ] self.multiType = None self.configMode = None self.diseqcModeEntry = None self.advancedSatsEntry = None self.advancedLnbsEntry = None self.advancedDiseqcMode = None self.advancedUsalsEntry = None self.advancedLof = None self.advancedPowerMeasurement = None self.turningSpeed = None self.turnFastEpochBegin = None self.turnFastEpochEnd = None self.toneburst = None self.committedDiseqcCommand = None self.uncommittedDiseqcCommand = None self.commandOrder = None self.cableScanType = None self.cableConfigScanDetails = None self.have_advanced = False self.advancedUnicable = None self.advancedFormat = None self.advancedPosition = None self.advancedType = None self.advancedManufacturer = None self.advancedSCR = None self.advancedConnected = None self.showAdditionalMotorOptions = None self.selectSatsEntry = None self.advancedSelectSatsEntry = None self.singleSatEntry = None self.terrestrialRegionsEntry = None self.cableRegionsEntry = None if not hasattr(self, "terrestrialCountriesEntry"): self.terrestrialCountriesEntry = None if not hasattr(self, "cableCountriesEntry"): self.cableCountriesEntry = None self.toneamplitude = None self.scpc = None self.forcelnbpower = None self.forcetoneburst = None self.terrestrialRegionsEntry = None self.cableRegionsEntry = None if not hasattr(self, "terrestrialCountriesEntry"): self.terrestrialCountriesEntry = None if not hasattr(self, "cableCountriesEntry"): self.cableCountriesEntry = None if self.nim.isMultiType(): multiType = self.nimConfig.multiType self.multiType = getConfigListEntry(_("Tuner type"), multiType) self.list.append(self.multiType) if self.nim.isCompatible("DVB-S"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "simple": #simple setup self.diseqcModeEntry = getConfigListEntry(pgettext("Satellite configuration mode", "Mode"), self.nimConfig.diseqcMode) self.list.append(self.diseqcModeEntry) if self.nimConfig.diseqcMode.value in ("single", "toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"): self.createSimpleSetup(self.list, self.nimConfig.diseqcMode.value) if self.nimConfig.diseqcMode.value in ("positioner", "positioner_select"): self.createPositionerSetup(self.list) elif self.nimConfig.configMode.value == "equal": choices = [] nimlist = nimmanager.canEqualTo(self.nim.slot) for id in nimlist: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "satposdepends": choices = [] nimlist = nimmanager.canDependOn(self.nim.slot) for id in nimlist: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "loopthrough_internal": choices = [] print "internal connectable to:", nimmanager.canInternalConnectTo(self.slotid) connectable = nimmanager.canInternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Internal connected to"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "loopthrough_external": choices = [] print "external connectable to:", nimmanager.canExternalConnectTo(self.slotid) connectable = nimmanager.canExternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("External connected to"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "nothing": pass elif self.nimConfig.configMode.value == "advanced": # advanced # SATs self.advancedSatsEntry = getConfigListEntry(_("Satellite"), self.nimConfig.advanced.sats) self.list.append(self.advancedSatsEntry) current_config_sats = self.nimConfig.advanced.sats.value if current_config_sats in ("3605", "3606"): self.advancedSelectSatsEntry = getConfigListEntry(_("Press OK to select satellites"), self.nimConfig.pressOKtoList) self.list.append(self.advancedSelectSatsEntry) self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[int(current_config_sats)]) else: cur_orb_pos = self.nimConfig.advanced.sats.orbital_position satlist = self.nimConfig.advanced.sat.keys() if cur_orb_pos is not None: if cur_orb_pos not in satlist: cur_orb_pos = satlist[0] self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[cur_orb_pos]) self.have_advanced = True if self.nimConfig.configMode.value != "nothing" and config.usage.setup_level.index >= 2: if fileExists("/proc/stb/frontend/%d/tone_amplitude" % self.nim.slot): self.toneamplitude = getConfigListEntry(_("Tone amplitude"), self.nimConfig.toneAmplitude) self.list.append(self.toneamplitude) if fileExists("/proc/stb/frontend/%d/use_scpc_optimized_search_range" % self.nim.slot): self.scpc = getConfigListEntry(_("SCPC optimized search range"), self.nimConfig.scpcSearchRange) self.list.append(self.scpc) if SystemInfo["HasForceLNBOn"] and self.nim.isFBCRoot(): self.forcelnbpower = getConfigListEntry(_("Force LNB Power"), config.misc.forceLnbPower) self.list.append(self.forcelnbpower) if SystemInfo["HasForceToneburst"] and self.nim.isFBCRoot(): self.forcetoneburst = getConfigListEntry(_("Force ToneBurst"), config.misc.forceToneBurst) self.list.append(self.forcetoneburst) elif self.nim.isCompatible("DVB-C"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "enabled": self.list.append(getConfigListEntry(_("Network ID"), self.nimConfig.cable.scan_networkid)) self.cableScanType=getConfigListEntry(_("Used service scan type"), self.nimConfig.cable.scan_type) self.list.append(self.cableScanType) if self.nimConfig.cable.scan_type.value == "provider": # country/region tier one if self.cableCountriesEntry is None: cablecountrycodelist = nimmanager.getCablesCountrycodeList() cablecountrycode = nimmanager.getCableCountrycode(self.slotid) default = cablecountrycode in cablecountrycodelist and cablecountrycode or None choices = [("all", _("All"))]+sorted([(x, self.countrycodeToCountry(x)) for x in cablecountrycodelist], key=lambda listItem: listItem[1]) self.cableCountries = ConfigSelection(default = default, choices = choices) self.cableCountriesEntry = getConfigListEntry(_("Country"), self.cableCountries) self.originalCableRegion = self.nimConfig.cable.scan_provider.value # country/region tier two if self.cableCountries.value == "all": cableNames = [x[0] for x in sorted(sorted(nimmanager.getCablesList(), key=lambda listItem: listItem[0]), key=lambda listItem: self.countrycodeToCountry(listItem[2]))] else: cableNames = sorted([x[0] for x in nimmanager.getCablesByCountrycode(self.cableCountries.value)]) default = self.nimConfig.cable.scan_provider.value in cableNames and self.nimConfig.cable.scan_provider.value or None self.cableRegions = ConfigSelection(default = default, choices = cableNames) def updateCableProvider(configEntry): self.nimConfig.cable.scan_provider.value = configEntry.value self.nimConfig.cable.scan_provider.save() self.cableRegions.addNotifier(updateCableProvider) self.cableRegionsEntry = getConfigListEntry(_("Region"), self.cableRegions) self.list.append(self.cableCountriesEntry) self.list.append(self.cableRegionsEntry) else: self.cableConfigScanDetails = getConfigListEntry(_("Config Scan Details"), self.nimConfig.cable.config_scan_details) self.list.append(self.cableConfigScanDetails) if self.nimConfig.cable.config_scan_details.value: if self.nimConfig.cable.scan_type.value == "bands": # TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF I"), self.nimConfig.cable.scan_band_EU_VHF_I)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU MID"), self.nimConfig.cable.scan_band_EU_MID)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF III"), self.nimConfig.cable.scan_band_EU_VHF_III)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF IV"), self.nimConfig.cable.scan_band_EU_UHF_IV)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF V"), self.nimConfig.cable.scan_band_EU_UHF_V)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU SUPER"), self.nimConfig.cable.scan_band_EU_SUPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU HYPER"), self.nimConfig.cable.scan_band_EU_HYPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US LOW"), self.nimConfig.cable.scan_band_US_LOW)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US MID"), self.nimConfig.cable.scan_band_US_MID)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US HIGH"), self.nimConfig.cable.scan_band_US_HIGH)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US SUPER"), self.nimConfig.cable.scan_band_US_SUPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US HYPER"), self.nimConfig.cable.scan_band_US_HYPER)) else: self.list.append(getConfigListEntry(_("Frequency scan step size(khz)"), self.nimConfig.cable.scan_frequency_steps)) # TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' self.list.append(getConfigListEntry(_("Scan %s") % ("QAM16"), self.nimConfig.cable.scan_mod_qam16)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM32"), self.nimConfig.cable.scan_mod_qam32)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM64"), self.nimConfig.cable.scan_mod_qam64)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM128"), self.nimConfig.cable.scan_mod_qam128)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM256"), self.nimConfig.cable.scan_mod_qam256)) self.list.append(getConfigListEntry(_("Scan %s") % ("SR6900"), self.nimConfig.cable.scan_sr_6900)) self.list.append(getConfigListEntry(_("Scan %s") % ("SR6875"), self.nimConfig.cable.scan_sr_6875)) self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext1)) self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext2)) self.have_advanced = False elif self.nim.isCompatible("DVB-T"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) self.have_advanced = False if self.nimConfig.configMode.value == "enabled": # country/region tier one if self.terrestrialCountriesEntry is None: terrestrialcountrycodelist = nimmanager.getTerrestrialsCountrycodeList() terrestrialcountrycode = nimmanager.getTerrestrialCountrycode(self.slotid) default = terrestrialcountrycode in terrestrialcountrycodelist and terrestrialcountrycode or None choices = [("all", _("All"))]+sorted([(x, self.countrycodeToCountry(x)) for x in terrestrialcountrycodelist], key=lambda listItem: listItem[1]) self.terrestrialCountries = ConfigSelection(default = default, choices = choices) self.terrestrialCountriesEntry = getConfigListEntry(_("Country"), self.terrestrialCountries) self.originalTerrestrialRegion = self.nimConfig.terrestrial.value # country/region tier two if self.terrestrialCountries.value == "all": terrstrialNames = [x[0] for x in sorted(sorted(nimmanager.getTerrestrialsList(), key=lambda listItem: listItem[0]), key=lambda listItem: self.countrycodeToCountry(listItem[2]))] else: terrstrialNames = sorted([x[0] for x in nimmanager.getTerrestrialsByCountrycode(self.terrestrialCountries.value)]) default = self.nimConfig.terrestrial.value in terrstrialNames and self.nimConfig.terrestrial.value or None self.terrestrialRegions = ConfigSelection(default = default, choices = terrstrialNames) def updateTerrestrialProvider(configEntry): self.nimConfig.terrestrial.value = configEntry.value self.nimConfig.terrestrial.save() self.terrestrialRegions.addNotifier(updateTerrestrialProvider) self.terrestrialRegionsEntry = getConfigListEntry(_("Region"), self.terrestrialRegions) self.list.append(self.terrestrialCountriesEntry) self.list.append(self.terrestrialRegionsEntry) self.list.append(getConfigListEntry(_("Enable 5V for active antenna"), self.nimConfig.terrestrial_5V)) elif self.nim.isCompatible("ATSC"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "enabled": self.list.append(getConfigListEntry(_("ATSC provider"), self.nimConfig.atsc)) self.have_advanced = False else: self.have_advanced = False self["config"].list = self.list self["config"].l.setList(self.list) self.setTextKeyYellow()
def createSetup(self): print "Creating setup" self.list = [ ] self.multiType = None self.configMode = None self.diseqcModeEntry = None self.advancedSatsEntry = None self.advancedLnbsEntry = None self.advancedDiseqcMode = None self.advancedUsalsEntry = None self.advancedLof = None self.advancedPowerMeasurement = None self.turningSpeed = None self.turnFastEpochBegin = None self.turnFastEpochEnd = None self.toneburst = None self.committedDiseqcCommand = None self.uncommittedDiseqcCommand = None self.commandOrder = None self.cableScanType = None self.have_advanced = False self.advancedUnicable = None self.advancedType = None self.advancedManufacturer = None self.advancedSCR = None self.advancedConnected = None self.showAdditionalMotorOptions = None self.selectSatsEntry = None self.advancedSelectSatsEntry = None self.singleSatEntry = None if self.nim.isMultiType(): multiType = self.nimConfig.multiType self.multiType = getConfigListEntry(_("Tuner type"), multiType) self.list.append(self.multiType) if self.nim.isCompatible("DVB-S"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "simple": #simple setup self.diseqcModeEntry = getConfigListEntry(pgettext("Satellite configuration mode", "Mode"), self.nimConfig.diseqcMode) self.list.append(self.diseqcModeEntry) if self.nimConfig.diseqcMode.value in ("single", "toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"): self.createSimpleSetup(self.list, self.nimConfig.diseqcMode.value) if self.nimConfig.diseqcMode.value in ("positioner", "positioner_select"): self.createPositionerSetup(self.list) elif self.nimConfig.configMode.value == "equal": choices = [] nimlist = nimmanager.canEqualTo(self.nim.slot) for id in nimlist: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "satposdepends": choices = [] nimlist = nimmanager.canDependOn(self.nim.slot) for id in nimlist: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "loopthrough_internal": choices = [] print "internal connectable to:", nimmanager.canInternalConnectTo(self.slotid) connectable = nimmanager.canInternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Internal connected to"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "loopthrough_external": choices = [] print "external connectable to:", nimmanager.canExternalConnectTo(self.slotid) connectable = nimmanager.canExternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("External connected to"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "nothing": pass elif self.nimConfig.configMode.value == "advanced": # advanced # SATs self.advancedSatsEntry = getConfigListEntry(_("Satellite"), self.nimConfig.advanced.sats) self.list.append(self.advancedSatsEntry) current_config_sats = self.nimConfig.advanced.sats.value if current_config_sats in ("3605", "3606"): self.advancedSelectSatsEntry = getConfigListEntry(_("Press OK to select satellites"), self.nimConfig.pressOKtoList) self.list.append(self.advancedSelectSatsEntry) self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[int(current_config_sats)]) else: cur_orb_pos = self.nimConfig.advanced.sats.orbital_position satlist = self.nimConfig.advanced.sat.keys() if cur_orb_pos is not None: if cur_orb_pos not in satlist: cur_orb_pos = satlist[0] self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[cur_orb_pos]) self.have_advanced = True if path.exists("/proc/stb/frontend/%d/tone_amplitude" % self.nim.slot) and config.usage.setup_level.index >= 2: # expert self.list.append(getConfigListEntry(_("Tone amplitude"), self.nimConfig.toneAmplitude)) elif self.nim.isCompatible("DVB-C"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "enabled": self.list.append(getConfigListEntry(_("Network ID"), self.nimConfig.cable.scan_networkid)) self.cableScanType=getConfigListEntry(_("Used service scan type"), self.nimConfig.cable.scan_type) self.list.append(self.cableScanType) if self.nimConfig.cable.scan_type.value == "provider": self.list.append(getConfigListEntry(_("Provider to scan"), self.nimConfig.cable.scan_provider)) else: if self.nimConfig.cable.scan_type.value == "bands": # TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF I"), self.nimConfig.cable.scan_band_EU_VHF_I)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU MID"), self.nimConfig.cable.scan_band_EU_MID)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF III"), self.nimConfig.cable.scan_band_EU_VHF_III)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF IV"), self.nimConfig.cable.scan_band_EU_UHF_IV)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF V"), self.nimConfig.cable.scan_band_EU_UHF_V)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU SUPER"), self.nimConfig.cable.scan_band_EU_SUPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU HYPER"), self.nimConfig.cable.scan_band_EU_HYPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US LOW"), self.nimConfig.cable.scan_band_US_LOW)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US MID"), self.nimConfig.cable.scan_band_US_MID)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US HIGH"), self.nimConfig.cable.scan_band_US_HIGH)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US SUPER"), self.nimConfig.cable.scan_band_US_SUPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US HYPER"), self.nimConfig.cable.scan_band_US_HYPER)) elif self.nimConfig.cable.scan_type.value == "steps": self.list.append(getConfigListEntry(_("Frequency scan step size(khz)"), self.nimConfig.cable.scan_frequency_steps)) # TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' self.list.append(getConfigListEntry(_("Scan %s") % ("QAM16"), self.nimConfig.cable.scan_mod_qam16)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM32"), self.nimConfig.cable.scan_mod_qam32)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM64"), self.nimConfig.cable.scan_mod_qam64)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM128"), self.nimConfig.cable.scan_mod_qam128)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM256"), self.nimConfig.cable.scan_mod_qam256)) self.list.append(getConfigListEntry(_("Scan %s") % ("SR6900"), self.nimConfig.cable.scan_sr_6900)) self.list.append(getConfigListEntry(_("Scan %s") % ("SR6875"), self.nimConfig.cable.scan_sr_6875)) self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext1)) self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext2)) self.have_advanced = False elif self.nim.isCompatible("DVB-T"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) self.have_advanced = False if self.nimConfig.configMode.value == "enabled": self.list.append(getConfigListEntry(_("Terrestrial provider"), self.nimConfig.terrestrial)) self.list.append(getConfigListEntry(_("Enable 5V for active antenna"), self.nimConfig.terrestrial_5V)) else: self.have_advanced = False self["config"].list = self.list self["config"].l.setList(self.list)
def fillListWithAdvancedSatEntrys(self, Sat): lnbnum = int(Sat.lnb.value) currLnb = self.nimConfig.advanced.lnb[lnbnum] if isinstance(currLnb, ConfigNothing): currLnb = None # LNBs self.advancedLnbsEntry = getConfigListEntry(_("LNB"), Sat.lnb) self.list.append(self.advancedLnbsEntry) if currLnb: self.list.append(getConfigListEntry(_("Priority"), currLnb.prio)) self.advancedLof = getConfigListEntry("LOF", currLnb.lof) self.list.append(self.advancedLof) if currLnb.lof.value == "user_defined": self.list.append(getConfigListEntry("LOF/L", currLnb.lofl)) self.list.append(getConfigListEntry("LOF/H", currLnb.lofh)) self.list.append(getConfigListEntry(_("Threshold"), currLnb.threshold)) if currLnb.lof.value == "unicable" or currLnb.lof.value == "jess": self.advancedUnicable = getConfigListEntry("Unicable "+_("Configuration mode"), currLnb.unicable) self.list.append(self.advancedUnicable) if currLnb.unicable.value == "unicable_user": self.advancedSCR = getConfigListEntry(_("Channel"), currLnb.satcruser) self.list.append(self.advancedSCR) self.list.append(getConfigListEntry(_("Frequency"), currLnb.satcrvcouser[currLnb.satcruser.index])) self.list.append(getConfigListEntry("LOF/L", currLnb.lofl)) self.list.append(getConfigListEntry("LOF/H", currLnb.lofh)) self.list.append(getConfigListEntry(_("Threshold"), currLnb.threshold)) elif currLnb.unicable.value == "unicable_matrix": manufacturer_name = currLnb.unicableMatrixManufacturer.value manufacturer = currLnb.unicableMatrix[manufacturer_name] product_name = manufacturer.product.value self.advancedManufacturer = getConfigListEntry(_("Manufacturer"), currLnb.unicableMatrixManufacturer) self.advancedType = getConfigListEntry(_("Type"), manufacturer.product) self.advancedSCR = getConfigListEntry(_("Channel"), manufacturer.scr[product_name]) self.list.append(self.advancedManufacturer) self.list.append(self.advancedType) self.list.append(self.advancedSCR) self.list.append(getConfigListEntry(_("Frequency"), manufacturer.vco[product_name][manufacturer.scr[product_name].index])) elif currLnb.unicable.value == "unicable_lnb": manufacturer_name = currLnb.unicableLnbManufacturer.value manufacturer = currLnb.unicableLnb[manufacturer_name] product_name = manufacturer.product.value self.advancedManufacturer = getConfigListEntry(_("Manufacturer"), currLnb.unicableLnbManufacturer) self.advancedType = getConfigListEntry(_("Type"), manufacturer.product) self.advancedSCR = getConfigListEntry(_("Channel"), manufacturer.scr[product_name]) self.list.append(self.advancedManufacturer) self.list.append(self.advancedType) self.list.append(self.advancedSCR) self.list.append(getConfigListEntry(_("Frequency"), manufacturer.vco[product_name][manufacturer.scr[product_name].index])) choices = [] connectable = nimmanager.canInternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id) + _(" (internal connection)"))) connectable = nimmanager.canExternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id) + _(" (external connection)"))) if len(choices): self.advancedConnected = getConfigListEntry(_("connected"), self.nimConfig.advanced.unicableconnected) self.list.append(self.advancedConnected) if self.nimConfig.advanced.unicableconnected.value == True: self.nimConfig.advanced.unicableconnectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Connected to"),self.nimConfig.advanced.unicableconnectedTo)) else: #kein Unicable self.list.append(getConfigListEntry(_("Voltage mode"), Sat.voltage)) self.list.append(getConfigListEntry(_("Increased voltage"), currLnb.increased_voltage)) self.list.append(getConfigListEntry(_("Tone mode"), Sat.tonemode)) if lnbnum < 65 and not currLnb.unicable.value == "unicable_matrix" and not currLnb.unicable.value == "unicable_lnb": self.advancedDiseqcMode = getConfigListEntry(_("DiSEqC mode"), currLnb.diseqcMode) self.list.append(self.advancedDiseqcMode) if currLnb.diseqcMode.value != "none": self.list.append(getConfigListEntry(_("Fast DiSEqC"), currLnb.fastDiseqc)) self.toneburst = getConfigListEntry(_("Toneburst"), currLnb.toneburst) self.list.append(self.toneburst) self.committedDiseqcCommand = getConfigListEntry(_("DiSEqC 1.0 command"), currLnb.commitedDiseqcCommand) self.list.append(self.committedDiseqcCommand) if currLnb.diseqcMode.value == "1_0": if currLnb.toneburst.index and currLnb.commitedDiseqcCommand.index: self.list.append(getConfigListEntry(_("Command order"), currLnb.commandOrder1_0)) else: self.uncommittedDiseqcCommand = getConfigListEntry(_("DiSEqC 1.1 command"), currLnb.uncommittedDiseqcCommand) self.list.append(self.uncommittedDiseqcCommand) if currLnb.uncommittedDiseqcCommand.index: if currLnb.commandOrder.value == "ct": currLnb.commandOrder.value = "cut" elif currLnb.commandOrder.value == "tc": currLnb.commandOrder.value = "tcu" else: if currLnb.commandOrder.index & 1: currLnb.commandOrder.value = "tc" else: currLnb.commandOrder.value = "ct" self.commandOrder = getConfigListEntry(_("Command order"), currLnb.commandOrder) if 1 < ((1 if currLnb.uncommittedDiseqcCommand.index else 0) + (1 if currLnb.commitedDiseqcCommand.index else 0) + (1 if currLnb.toneburst.index else 0)): self.list.append(self.commandOrder) if currLnb.uncommittedDiseqcCommand.index: self.list.append(getConfigListEntry(_("DiSEqC 1.1 repeats"), currLnb.diseqcRepeats)) self.list.append(getConfigListEntry(_("Sequence repeat"), currLnb.sequenceRepeat)) if currLnb.diseqcMode.value == "1_2": if SystemInfo["CanMeasureFrontendInputPower"]: self.advancedPowerMeasurement = getConfigListEntry(_("Use power measurement"), currLnb.powerMeasurement) self.list.append(self.advancedPowerMeasurement) if currLnb.powerMeasurement.value: self.list.append(getConfigListEntry(_("Power threshold in mA"), currLnb.powerThreshold)) self.turningSpeed = getConfigListEntry(_("Rotor turning speed"), currLnb.turningSpeed) self.list.append(self.turningSpeed) if currLnb.turningSpeed.value == "fast epoch": self.turnFastEpochBegin = getConfigListEntry(_("Begin time"), currLnb.fastTurningBegin) self.turnFastEpochEnd = getConfigListEntry(_("End time"), currLnb.fastTurningEnd) self.list.append(self.turnFastEpochBegin) self.list.append(self.turnFastEpochEnd) else: if currLnb.powerMeasurement.value: currLnb.powerMeasurement.value = False currLnb.powerMeasurement.save() self.advancedUsalsEntry = getConfigListEntry(_("Use USALS for this sat"), Sat.usals) if lnbnum < 65: self.list.append(self.advancedUsalsEntry) if Sat.usals.value: self.list.append(getConfigListEntry(_("Longitude"), currLnb.longitude)) self.list.append(getConfigListEntry(" ", currLnb.longitudeOrientation)) self.list.append(getConfigListEntry(_("Latitude"), currLnb.latitude)) self.list.append(getConfigListEntry(" ", currLnb.latitudeOrientation)) else: self.list.append(getConfigListEntry(_("Stored position"), Sat.rotorposition)) if not hasattr(self, 'additionalMotorOptions'): self.additionalMotorOptions = ConfigYesNo(False) self.showAdditionalMotorOptions = getConfigListEntry(_("Extra motor options"), self.additionalMotorOptions) self.list.append(self.showAdditionalMotorOptions) if self.additionalMotorOptions.value: self.list.append(getConfigListEntry(" " + _("Horizontal turning speed") + " [" + chr(176) + "/sec]", currLnb.turningspeedH)) self.list.append(getConfigListEntry(" " + _("Vertical turning speed") + " [" + chr(176) + "/sec]", currLnb.turningspeedV)) self.list.append(getConfigListEntry(" " + _("Turning step size") + " [" + chr(176) + "]", currLnb.tuningstepsize)) self.list.append(getConfigListEntry(" " + _("Max memory positions"), currLnb.rotorPositions))
def createSetup(self): self.list = [ ] self.multiType = None self.configMode = None self.diseqcModeEntry = None self.advancedSatsEntry = None self.advancedLnbsEntry = None self.advancedDiseqcMode = None self.advancedUsalsEntry = None self.advancedLof = None self.advancedPowerMeasurement = None self.turningSpeed = None self.turnFastEpochBegin = None self.turnFastEpochEnd = None self.toneburst = None self.committedDiseqcCommand = None self.uncommittedDiseqcCommand = None self.commandOrder = None self.cableScanType = None self.cableConfigScanDetails = None self.have_advanced = False self.advancedUnicable = None self.advancedFormat = None self.advancedPosition = None self.advancedType = None self.advancedManufacturer = None self.advancedSCR = None self.advancedConnected = None self.showAdditionalMotorOptions = None self.selectSatsEntry = None self.advancedSelectSatsEntry = None self.singleSatEntry = None self.terrestrialRegionsEntry = None self.cableRegionsEntry = None if not hasattr(self, "terrestrialCountriesEntry"): self.terrestrialCountriesEntry = None if not hasattr(self, "cableCountriesEntry"): self.cableCountriesEntry = None self.toneamplitude = None self.scpc = None self.forcelnbpower = None self.forcetoneburst = None if self.nim.isMultiType(): multiType = self.nimConfig.multiType self.multiType = getConfigListEntry(_("Tuner type"), multiType) self.list.append(self.multiType) if self.nim.isCompatible("DVB-S"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "simple": #simple setup self.diseqcModeEntry = getConfigListEntry(pgettext("Satellite configuration mode", "Mode"), self.nimConfig.diseqcMode) self.list.append(self.diseqcModeEntry) if self.nimConfig.diseqcMode.value in ("single", "toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"): self.createSimpleSetup(self.list, self.nimConfig.diseqcMode.value) if self.nimConfig.diseqcMode.value in ("positioner", "positioner_select"): self.createPositionerSetup(self.list) elif self.nimConfig.configMode.value == "equal": choices = [] nimlist = nimmanager.canEqualTo(self.nim.slot) for id in nimlist: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "satposdepends": choices = [] nimlist = nimmanager.canDependOn(self.nim.slot) for id in nimlist: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "loopthrough_internal": choices = [] print "internal connectable to:", nimmanager.canInternalConnectTo(self.slotid) connectable = nimmanager.canInternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("Internal connected to"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "loopthrough_external": choices = [] print "external connectable to:", nimmanager.canExternalConnectTo(self.slotid) connectable = nimmanager.canExternalConnectTo(self.slotid) for id in connectable: choices.append((str(id), nimmanager.getNimDescription(id))) self.nimConfig.connectedTo.setChoices(choices) self.list.append(getConfigListEntry(_("External connected to"), self.nimConfig.connectedTo)) elif self.nimConfig.configMode.value == "nothing": pass elif self.nimConfig.configMode.value == "advanced": # advanced # SATs self.advancedSatsEntry = getConfigListEntry(_("Satellite"), self.nimConfig.advanced.sats) self.list.append(self.advancedSatsEntry) current_config_sats = self.nimConfig.advanced.sats.value if current_config_sats in ("3605", "3606"): self.advancedSelectSatsEntry = getConfigListEntry(_("Press OK to select satellites"), self.nimConfig.pressOKtoList) self.list.append(self.advancedSelectSatsEntry) self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[int(current_config_sats)]) else: cur_orb_pos = self.nimConfig.advanced.sats.orbital_position satlist = self.nimConfig.advanced.sat.keys() if cur_orb_pos is not None: if cur_orb_pos not in satlist: cur_orb_pos = satlist[0] self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[cur_orb_pos]) self.have_advanced = True if self.nimConfig.configMode.value != "nothing" and config.usage.setup_level.index >= 2: if fileExists("/proc/stb/frontend/%d/tone_amplitude" % self.nim.slot): self.toneamplitude = getConfigListEntry(_("Tone amplitude"), self.nimConfig.toneAmplitude) self.list.append(self.toneamplitude) if fileExists("/proc/stb/frontend/%d/use_scpc_optimized_search_range" % self.nim.slot): self.scpc = getConfigListEntry(_("SCPC optimized search range"), self.nimConfig.scpcSearchRange) self.list.append(self.scpc) if SystemInfo["HasForceLNBOn"] and self.nim.isFBCRoot(): self.forcelnbpower = getConfigListEntry(_("Force LNB Power"), config.misc.forceLnbPower) self.list.append(self.forcelnbpower) if SystemInfo["HasForceToneburst"] and self.nim.isFBCRoot(): self.forcetoneburst = getConfigListEntry(_("Force ToneBurst"), config.misc.forceToneBurst) self.list.append(self.forcetoneburst) elif self.nim.isCompatible("DVB-C"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "enabled": self.list.append(getConfigListEntry(_("Network ID"), self.nimConfig.cable.scan_networkid)) self.cableScanType=getConfigListEntry(_("Used service scan type"), self.nimConfig.cable.scan_type) self.list.append(self.cableScanType) if self.nimConfig.cable.scan_type.value == "provider": # country/region tier one if self.cableCountriesEntry is None: cablecountrycodelist = nimmanager.getCablesCountrycodeList() cablecountrycode = nimmanager.getCableCountrycode(self.slotid) default = cablecountrycode in cablecountrycodelist and cablecountrycode or None choices = [("all", _("All"))]+sorted([(x, self.countrycodeToCountry(x)) for x in cablecountrycodelist], key=lambda listItem: listItem[1]) self.cableCountries = ConfigSelection(default = default, choices = choices) self.cableCountriesEntry = getConfigListEntry("Country", self.cableCountries) self.originalCableRegion = self.nimConfig.cable.scan_provider.value # country/region tier two if self.cableCountries.value == "all": cableNames = [x[0] for x in sorted(sorted(nimmanager.getCablesList(), key=lambda listItem: listItem[0]), key=lambda listItem: self.countrycodeToCountry(listItem[2]))] else: cableNames = sorted([x[0] for x in nimmanager.getCablesByCountrycode(self.cableCountries.value)]) default = self.nimConfig.cable.scan_provider.value in cableNames and self.nimConfig.cable.scan_provider.value or None self.cableRegions = ConfigSelection(default = default, choices = cableNames) def updateCableProvider(configEntry, extra_args): extra_args[0].value = configEntry.value extra_args[0].save() self.cableRegions.addNotifier(updateCableProvider, extra_args = [self.nimConfig.cable.scan_provider]) self.cableRegionsEntry = getConfigListEntry("Region", self.cableRegions) self.list.append(self.cableCountriesEntry) self.list.append(self.cableRegionsEntry) else: self.cableConfigScanDetails = getConfigListEntry(_("Config Scan Details"), self.nimConfig.cable.config_scan_details) self.list.append(self.cableConfigScanDetails) if self.nimConfig.cable.config_scan_details.value: if self.nimConfig.cable.scan_type.value == "bands": # TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF I"), self.nimConfig.cable.scan_band_EU_VHF_I)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU MID"), self.nimConfig.cable.scan_band_EU_MID)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF III"), self.nimConfig.cable.scan_band_EU_VHF_III)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF IV"), self.nimConfig.cable.scan_band_EU_UHF_IV)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF V"), self.nimConfig.cable.scan_band_EU_UHF_V)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU SUPER"), self.nimConfig.cable.scan_band_EU_SUPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("EU HYPER"), self.nimConfig.cable.scan_band_EU_HYPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US LOW"), self.nimConfig.cable.scan_band_US_LOW)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US MID"), self.nimConfig.cable.scan_band_US_MID)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US HIGH"), self.nimConfig.cable.scan_band_US_HIGH)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US SUPER"), self.nimConfig.cable.scan_band_US_SUPER)) self.list.append(getConfigListEntry(_("Scan %s band") % ("US HYPER"), self.nimConfig.cable.scan_band_US_HYPER)) else: self.list.append(getConfigListEntry(_("Frequency scan step size(khz)"), self.nimConfig.cable.scan_frequency_steps)) # TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' self.list.append(getConfigListEntry(_("Scan %s") % ("QAM16"), self.nimConfig.cable.scan_mod_qam16)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM32"), self.nimConfig.cable.scan_mod_qam32)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM64"), self.nimConfig.cable.scan_mod_qam64)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM128"), self.nimConfig.cable.scan_mod_qam128)) self.list.append(getConfigListEntry(_("Scan %s") % ("QAM256"), self.nimConfig.cable.scan_mod_qam256)) self.list.append(getConfigListEntry(_("Scan %s") % ("SR6900"), self.nimConfig.cable.scan_sr_6900)) self.list.append(getConfigListEntry(_("Scan %s") % ("SR6875"), self.nimConfig.cable.scan_sr_6875)) self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext1)) self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext2)) self.have_advanced = False elif self.nim.isCompatible("DVB-T"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) self.have_advanced = False if self.nimConfig.configMode.value == "enabled": # country/region tier one if self.terrestrialCountriesEntry is None: terrestrialcountrycodelist = nimmanager.getTerrestrialsCountrycodeList() terrestrialcountrycode = nimmanager.getTerrestrialCountrycode(self.slotid) default = terrestrialcountrycode in terrestrialcountrycodelist and terrestrialcountrycode or None choices = [("all", _("All"))]+sorted([(x, self.countrycodeToCountry(x)) for x in terrestrialcountrycodelist], key=lambda listItem: listItem[1]) self.terrestrialCountries = ConfigSelection(default = default, choices = choices) self.terrestrialCountriesEntry = getConfigListEntry("Country", self.terrestrialCountries) self.originalTerrestrialRegion = self.nimConfig.terrestrial.value # country/region tier two if self.terrestrialCountries.value == "all": terrestrialNames = [x[0] for x in sorted(sorted(nimmanager.getTerrestrialsList(), key=lambda listItem: listItem[0]), key=lambda listItem: self.countrycodeToCountry(listItem[2]))] else: terrestrialNames = sorted([x[0] for x in nimmanager.getTerrestrialsByCountrycode(self.terrestrialCountries.value)]) default = self.nimConfig.terrestrial.value in terrestrialNames and self.nimConfig.terrestrial.value or None self.terrestrialRegions = ConfigSelection(default = default, choices = terrestrialNames) def updateTerrestrialProvider(configEntry, extra_args): extra_args[0].value = configEntry.value extra_args[0].save() self.terrestrialRegions.addNotifier(updateTerrestrialProvider, extra_args = [self.nimConfig.terrestrial]) self.terrestrialRegionsEntry = getConfigListEntry("Region", self.terrestrialRegions) self.list.append(self.terrestrialCountriesEntry) self.list.append(self.terrestrialRegionsEntry) self.list.append(getConfigListEntry(_("Enable 5V for active antenna"), self.nimConfig.terrestrial_5V)) elif self.nim.isCompatible("ATSC"): self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) self.list.append(self.configMode) if self.nimConfig.configMode.value == "enabled": self.list.append(getConfigListEntry(_("ATSC provider"), self.nimConfig.atsc)) self.have_advanced = False else: self.have_advanced = False self["config"].list = self.list self["config"].l.setList(self.list) self.setTextKeyYellow()