Merge branch 'master' of git.opendreambox.org:/git/enigma2
[enigma2.git] / lib / python / Components / NimManager.py
index 1ee8dddd520aca4bf9b3abff3fd0b195e4a2bc44..e1d3b0689c849d6d67e4f8eb613b6393a0a9464e 100644 (file)
@@ -188,12 +188,11 @@ class SecConfigure:
                                                                loValue = rotorParam.EAST
                                                        else:
                                                                loValue = rotorParam.WEST
-                                                       inputPowerDelta=hw.get_device_name() == "dm8000" and 15 or 50
+                                                       inputPowerDelta=nim.powerThreshold.value
                                                        useInputPower=False
                                                        turning_speed=0
                                                        if nim.powerMeasurement.value:
                                                                useInputPower=True
-                                                               inputPowerDelta=nim.powerThreshold.value
                                                                turn_speed_dict = { "fast": rotorParam.FAST, "slow": rotorParam.SLOW }
                                                                if turn_speed_dict.has_key(nim.turningSpeed.value):
                                                                        turning_speed = turn_speed_dict[nim.turningSpeed.value]
@@ -659,7 +658,7 @@ class NimManager:
        
        def canEqualTo(self, slotid):
                type = self.getNimType(slotid)
-               if self.getNimConfig(slotid) == "DVB-S2":
+               if type == "DVB-S2":
                        type = "DVB-S"
                nimList = self.getNimListOfType(type, slotid)
                for nim in nimList[:]:
@@ -667,10 +666,10 @@ class NimManager:
                        if mode.configMode.value == "loopthrough" or mode.configMode.value == "satposdepends":
                                nimList.remove(nim)
                return nimList
-       
+
        def canDependOn(self, slotid):
                type = self.getNimType(slotid)
-               if self.getNimConfig(slotid) == "DVB-S2":
+               if type == "DVB-S2":
                        type = "DVB-S"
                nimList = self.getNimListOfType(type, slotid)
                positionerList = []
@@ -683,6 +682,13 @@ class NimManager:
                                        if lnb != 0:
                                                nimHaveRotor = True
                                                break
+                               if not nimHaveRotor:
+                                       for sat in mode.advanced.sat.values():
+                                               lnb_num = int(sat.lnb.value)
+                                               diseqcmode = lnb_num and mode.advanced.lnb[lnb_num].diseqcMode.value or ""
+                                               if diseqcmode == "1_2":
+                                                       nimHaveRotor = True
+                                                       break
                        if nimHaveRotor:
                                alreadyConnected = False
                                for testnim in nimList:
@@ -901,7 +907,7 @@ def InitNimManager(nimmgr):
                        nim.latitude = ConfigFloat(default=[50,767], limits=[(0,359),(0,999)])
                        nim.latitudeOrientation = ConfigSelection(choices={"north": _("North"), "south": _("South")}, default="north")
                        nim.powerMeasurement = ConfigYesNo(default=True)
-                       nim.powerThreshold = ConfigInteger(default=50, limits=(0, 100))
+                       nim.powerThreshold = ConfigInteger(default=hw.get_device_name() == "dm8000" and 15 or 50, limits=(0, 100))
                        nim.turningSpeed = ConfigSelection(choices = [("fast", _("Fast")), ("slow", _("Slow")), ("fast epoch", _("Fast epoch")) ], default = "fast")
                        btime = datetime(1970, 1, 1, 7, 0);
                        nim.fastTurningBegin = ConfigDateTime(default = mktime(btime.timetuple()), formatstring = _("%H:%M"), increment = 900)