summaryrefslogtreecommitdiffstats
path: root/ofono-end-to-end/osmocom/modem.py
diff options
context:
space:
mode:
Diffstat (limited to 'ofono-end-to-end/osmocom/modem.py')
-rw-r--r--ofono-end-to-end/osmocom/modem.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/ofono-end-to-end/osmocom/modem.py b/ofono-end-to-end/osmocom/modem.py
index 6fe9d6c..d083fbd 100644
--- a/ofono-end-to-end/osmocom/modem.py
+++ b/ofono-end-to-end/osmocom/modem.py
@@ -68,6 +68,9 @@ class Modem(object):
"""
return self.modem.GetProperties()[name]
+ def sim(self):
+ return sim.Sim(self.bus, self.name)
+
def __repr__(self):
return "<Modem('%s')>" % self.name
@@ -94,11 +97,8 @@ def detect_modems(bus):
# Filter out the phonesim
modems = filter(lambda x: x.name != '/phonesim', modems)
- # Force reloading..
wait = []
on = []
- for mod in modems:
- mod.disable()
# Enable each modem...
for mod in modems:
@@ -112,7 +112,8 @@ def detect_modems(bus):
# Now... wait a bit for the modem to do some init
if len(wait) > 0:
import time
- time.sleep(3)
+ print("I need to sleep some time for the modem to wake up")
+ time.sleep(20)
for mod in wait:
if mod.is_enabled():
@@ -124,12 +125,17 @@ def detect_modems(bus):
return modem.manufacturer() != None
def sim_present(modem):
- s = sim.Sim(bus, modem.name)
- print s
- return s.imsi() != None
+ return modem.sim().imsi() != None
on = filter(modem_vendor, on)
on = filter(sim_present, on)
+ # TODO: We could now disable all modems without a SIMcard
+ for mod in modems:
+ if mod in on:
+ continue
+ print("Modem %s is wihtout SIM card. Powering it down." % mod.name)
+ mod.disable()
+
return on