Pārlūkot izejas kodu

Reihenfolge des Setups geändert
Zeitsynchronisation des Modems mit dem Netz eingebaut
PIN vor Netzoperationen
Timer wieder eingeschaltet

Chris Hoelzel 3 gadi atpakaļ
vecāks
revīzija
d8e7b72c2a
1 mainītis faili ar 9 papildinājumiem un 6 dzēšanām
  1. 9 6
      SIM.py

+ 9 - 6
SIM.py

@@ -13,6 +13,7 @@
 # 2022-04-13 - devnull             : SIN Inserted Abfrage
 # 2022-04-17 - devnull             : Umstellung auf Loggerklasse für Debug und Verbose
 # 2022-04-28 - devnull             : AT Kommandos ergänzt, RSSI und OperatorAusgabe gefixt
+#                                  : PIN vor Modem Setup und Netzregistrierung und Runtime Werten
 
 import sys, os
 import utime
@@ -56,17 +57,18 @@ class SIM:
 
         # todo: hier muss eine Prfung rein, ob das Modem berhaupt erriechbar ist.
         self.sio = UART(1, baudrate=self.getBaud(), rx=self.getPINRX(), tx=self.getPINTX()) # ESP
-        self.devSetup()
 
         # sammle Modem Informationen
-
         # wir fhren hier erstmal einen first Runtimecheck aus, damit anschlieend der PIN erfolgreich geschickt werden kann
         self.devRuntime()
-        #self.SIMtim.init(period=10000, callback=self.devRuntime)
+        self.SIMtim.init(period=10000, callback=self.devRuntime)
 
-        # PIN bergabe
+        # PIN Uebergabe zur Freischaltung der SIM
         self.sendPIN(simpin)
 
+        # Steuerung des Modems nach der PIN
+        self.devSetup()
+
 
     #bermittelt ein AT Command, aber bitte nur eine Zeile als Rckgabewert
     def sendAT(self,AT):
@@ -161,8 +163,9 @@ class SIM:
     # Konfigurationsoptionen fr das Modem
     def devSetup(self):
         self.logger.verbose("Modem Setup")
-        self.sendAT('AT+COPS=0') # Automatisch den Operator aussuchen
         self.sendAT('ATE0') # Echo Off auf der Schnittstelle
+        self.sendAT('AT+COPS=0') # Automatisch den Operator aussuchen
+        self.sendAT('AT+CLTS=1')
         self.sendAT('AT+CRSL=100')
         self.sendAT('AT+CSCS="GSM"')
         self.sendAT('AT+CMGF=1')
@@ -225,7 +228,7 @@ class SIM:
     # todo: Netzqualittsanzeige (RSSI)
     def getDevRSSI(self):
         #debugausgabe zum herausfinden der Ausgabe
-        self.setRSSI(>>> sim.sendAT("AT+CSQ").partition(",")[0].partition(": ")[2])
+        self.setRSSI(self.sendAT("AT+CSQ").partition(",")[0].partition(": ")[2])
         self.logger.debug("RSSI: " + self.getRSSI())
 
     # todo: Netzprovider Anzeige