SMS delivery reports cannot be read from SIM storage on EC25-E and EG25-G

with AT+CNMI=2,1,0,2,0 received SMS delivery reports are written into the SIM, but using AT+CMGR to read them (according to TS 127.005) fails. I see this behaviour on both the EC25-E and the EG25-G.

How do I read the SMS delivery report ?

  AT+CGMR
  EC25EFAR08A04M4G

  OK

  [ other setup omitted ]

  AT+CMGF=0
  OK
  AT+CPMS="SM","SM","SM"\r
  +CPMS: 0,30,0,30,0,30

  OK
  AT+CNMI=2,1,0,2,0\r
  OK

  [ other setup omitted ]

  AT+CMGS=18
  > 0031010C91444735XXXXXX0000A904F4F29C0E\x1a
  +CMGS: 136,

  OK

  +CDSI: "SM",0
  AT+CMGR=0
  OK

The expected behaviour (from a huawei E1550)

  ATI0
  Manufacturer: huawei
  Model: E1550
  Revision: 11.608.14.15.311
  IMEI: 35296504823XXXX
  +GCAP: +CGSM,+DS,+ES

  OK

  [ other setup omitted ]

  AT+CMGF=0
  OK
  AT+CPMS="SM","SM","SM"
  +CPMS: 0,50,0,50,0,50

  OK
  AT+CNMI=2,1,0,2,0
  OK

  [ other setup omitted ]

  AT+CMGS=18
  > 0031010C91444735XXXXXX0000A904F4F29C0E\x1a
  +CMGS: 101,

  OK

  +CDSI: "SM",0
  AT+CMGR=0
  +CMGR: 0,,25
  079144775810213106650C91444735XXXXXX428050116100404280501161004000

  OK
  AT+CMGD=0
  OK

What does AT+CPMS=? return?

My RM500Q-AE returns:

+CPMS: ("ME","MT","SM","SR"),("ME","MT","SM","SR"),("ME","MT","SM","SR")

showing that delivery reports have their own storage - “SR”.

Nevertheless, you might want to try:

AT+CPMS="SR";+CMGR=0

to read that report.

Thank you that works, except the response to +CMGR has an invalid format which required yet more special cases.

+CMGR: ,29
should be
+CMGR: 0,,29

AT+CMGS=18
> 0031010C91444735XXXXXX0000A904F4F29C0E\x1a
+CMGS: 149,

OK
+CDSI: "SM",0
AT+CPMS="SR"
+CPMS: 1,20,0,30,0,30

OK
AT+CMGR=0
+CMGR: ,29
0006950C91444735XXXXXX428060013000404280600130004000FFFFFFFF

OK
AT+CPMS="SR"
+CPMS: 1,20,0,30,0,30
OK
AT+CMGD=0
OK

Aditionally the AT+

Additionally this doesn’t do anything an AT+CMGR=0 retreives the status report again.

That’s a bug. Quectel should look into this.

Another bug. Have you tried deleting it from SM storage instead?

I’ve tried to write your status report directly to a couple of my Quectels in order to experiment, but they come up with the “operation not allowed” error 302.

I don’t have a SIM that honours delivery report requests.

AT+CPMS?
+CPMS: "SM",11,20,"SM",11,20,"SM",11,20

OK
AT+CMGW=29,0
> 0006950C91444735111111428060013000404280600130004000FFFFFFFF
+CMS ERROR: 302
AT+CPMS="SR"
+CPMS: 0,0,11,20,11,20

OK
AT+CMGW=29,0
> 0006950C91444735111111428060013000404280600130004000FFFFFFFF
+CMS ERROR: 302

Writing an ordinary SMS-DELIVER SMS PDU works:

AT+CPMS="SM"
+CPMS: 11,20,11,20,11,20
OK
AT+CMGW=24,0
> 000407D0F4F29C0E00004280708070100407F4F29C9E769F01
+CMGW: 11
OK
AT+CPMS?
+CPMS: "SM",12,20,"SM",12,20,"SM",12,20
OK

I’ll give that a shot - but I’m un-keen to do that in case I blow away a legitimate message. Where are you based? happy to send you a burner SIM. I’ve been testing with a combination of SMARTY [an MVNO in the UK] and a LTE simulator hooked up to a RAN in the lab.

I’m in Australia. My Vodafone AU SIM is data only, so no SMS sending is possible. Likewise my Optus SIM.

I’ll have access to a Telstra SIM within a week, and I understand it supports SMS delivery receipts.

My Aldimobile SIMs (Telstra MVNO) do not trigger return receipts when the SRR bit is set in the MO PDU-type octet.