Hallo,

das "ctsdsr Protokoll" kann nicht wechseln. Wenn der AT-Command Mode auf ETSI gestellt ist, muss die Signalisierung einer empfangenen SDS auch der Norm entsprechen.

In deinem Log sind mir aber ein paar Sachen aufgefallen.

sds2db: <- ATZ
sds2db: <- AT+CTSP=1,3,130
sds2db: -> OK

Hier ist das OK vermutlich die Antwort auf ATZ, d.h. dass das Kommando AT+CTSP=1,3,130 zu früh gesendet wird.

Kannst du bitte mal ein Log posten, bei dem die Zeitstempel zu sehen sind? Und den Inhalt der pei.init am besten auch.

Hier mal ein Beispiel, wie es aussehen sollte:

Sep 15 19:05:12 statusmonitor2 sdsfwd: tx ATZ
Sep 15 19:05:13 statusmonitor2 sdsfwd: rx OK
Sep 15 19:05:14 statusmonitor2 sdsfwd: tx AT+CTSP=1,2,20
Sep 15 19:05:14 statusmonitor2 sdsfwd: rx OK
Sep 15 19:05:15 statusmonitor2 sdsfwd: tx AT+CTSP=1,3,10
Sep 15 19:05:15 statusmonitor2 sdsfwd: rx OK
Sep 15 19:05:16 statusmonitor2 sdsfwd: tx AT+CTSP=1,3,130
Sep 15 19:05:16 statusmonitor2 sdsfwd: rx OK
Sep 15 19:05:17 statusmonitor2 sdsfwd: tx AT+CTSP=1,1,11
Sep 15 19:05:17 statusmonitor2 sdsfwd: rx OK
Sep 15 19:05:18 statusmonitor2 sdsfwd: tx AT+CTGS=1,2xxxxx2
Sep 15 19:05:19 statusmonitor2 sdsfwd: rx +CTGS: 1,2xxxxx2
Sep 15 19:05:19 statusmonitor2 sdsfwd: tx AT+CNUMF?
Sep 15 19:05:20 statusmonitor2 sdsfwd: rx OK
Sep 15 19:05:20 statusmonitor2 sdsfwd: rx +CNUMF: 0,262100104xxxxx9
Sep 15 19:05:20 statusmonitor2 sdsfwd: rx 2,16xxxxx2
Sep 15 19:05:21 statusmonitor2 sdsfwd: rx 3,16xxxxx2
Sep 15 19:05:21 statusmonitor2 sdsfwd: tx AT+CTGS?
Sep 15 19:05:21 statusmonitor2 sdsfwd: rx 4,262100116xxxxx4
Sep 15 19:05:21 statusmonitor2 sdsfwd: rx OK
Sep 15 19:05:22 statusmonitor2 sdsfwd: rx +CTGS: 1,2xxxxx2
Sep 15 19:05:22 statusmonitor2 sdsfwd: rx OK
Sep 15 19:05:28 statusmonitor2 sdsfwd: rx +CTSDSR: 12,5xxxxx8,0,2xxxxx2,0,416
Sep 15 19:05:28 statusmonitor2 sdsfwd: rx 8200....
Sep 15 19:05:29 statusmonitor2 sdsfwd: rx +CTSDSR: 12,5xxxxx5,0,2xxxxx2,0,416
Sep 15 19:05:29 statusmonitor2 sdsfwd: rx 8200...

Handshake und Geschwindigkeit für /dev/ttyS1 sind passend konfiguriert?

Scheinbar, funktioniert bei dir auch das Senden der Quittung nicht:

sds2db: <- AT+CMGS=473010,32
sds2db: <- 8210004F
sds2db: -> +CME ERROR: 35
sds2db: -> +CMGS: 0

"+CME ERROR:" zeigt immer, dass etwas nicht passt.

Ändere doch im Skript sds2db das Kommando auf "AT+CTSDS=12,0,0,0,1". Das fehlt auch im Log. Bist du sicher, dass die serielle Verbindung einwandfrei ist?