Problem:
The SIM7080G modem can detect there are multiple blocks in a CoAP response from a server but is only able to read the first block.
AT commands used:
AT+CCOAPINIT
AT+CCOAPURL="coap://coap.mydomain.no:5683"
AT+CCOAPPARA="CODE",1,uri-path,0,"certificate/fcd15ca1600f045/ca",token,0,"UBXTRDGZALKNPME"
Writing: AT+CCOAPACTION
Reponse: +CCOAPACTION: 0,0
OK
+CCOAPRECV: 8671,532,512 <- Package size of 532, payload size 512, This is correct for the first package
Writing: AT+CCOAPACTION=4
Response: AT+CCOAPACTION=4
+CCOAPACTION: 4,2,8671 <- 2 blocks on queue
OK
Writing: AT+CCOAPHEAD=8671,1
Response: AT+CCOAPHEAD=8671,1
+CCOAPHEAD: 1,1,0,8,2.05,8671,554258545244475A,50,,,,,0,,,,,,,,,0:1:512,,619 <- block 1
OK
Writing: AT+CCOAPREAD=8671
Response: AT+CCOAPREAD=8671
+CCOAPREAD: 512, first 512 characters of the looong string sent by the server...
OK
+CCOAPRECV: 8671,532,512
(repeat AT+CCOAPACTION=4, AT+CCOAPHEAD, and AT+CCOAPREAD for subsequent blocks)
Repeating the commands only reads out the first block on the receive queue.
Expected response:
The modem should be able to read out all blocks (2 in this example) from the CoAP response either by looping the commands or by specifying which block to read.
Investigated documentation:
SIM7070_SIM7080_SIM7090 Series_AT Command Manual v1.04
SIM7070_SIM7080_SIM7090 Series_CoAP(S)_Application Note v1.03
Question:
Which AT commands and sequence are required to read multiple or a specific block from the queue (e.g., block 2) on the SIM7080G modem when using CoAP?
Just to be clear: CoAP comes in the meantime with two extensions addressing larger payload:
the traditional one is RFC 7959, which converts the transfer of a larger payload in common standard requests with smaller payload (multiple request/response exchanges).
a different one, RFC 9177.
and you may use CoAP over TCP, RFC 8323
The issue will be, what the modem supports. I guess, with RFC 7959 you may have the best chance, but that may be wrong.