Hello !
We observe an issue that looks like a TCP half‑open connection on a Monarch 2 modem when using MQTT.
Setup:
-
Monarch 2, firmware 8.2.1.0
-
MQTT over TCP, keep‑alive = 300 s
Reproduction:
-
Connect the modem to the MQTT broker.
-
Physically disconnect the antenna.
→ The modem must report+CEREG: 80(detached / lost coverage). -
While the antenna is disconnected, send an MQTT downlink message.
-
Reconnect the antenna to restore coverage.
→ Upon reconnection, we must observe+CEREG: 2followed by a successful attachment (+CEREG: 1or5).
→ If+CEREG: 0is reported, the scenario is not valid.
After the modem reattaches to the network (CEREG=1 or 5), incoming MQTT messages are not received anymore. The connection appears to remain open, but downlink traffic is blocked.
The situation only recovers after the MQTT keep‑alive timeout (300 s). At that point, communication resumes and queued messages are received in a burst, causing duplicates.
It looks like after the network interruption, the TCP socket is not correctly reset, and RX traffic only resumes once the modem initiates a new exchange.
Reducing the keep‑alive is not an option due to power consumption constraints. As a workaround, we currently force an MQTT transmission after detecting network detach/reattach, which restores communication.
Is this behavior expected or known on Monarch 2 (FW 8.2.1.0)?
Could this issue be related to LTE‑M network behavior, such as NAS signaling, context preservation, or LTE‑M specific TCP/NAT handling after coverage loss?
Thanks


