PSM Current Consumption Issue on HL7812 After Wake-Up

I’m running into another issue with PSM on the HL7812.

  • During the first entry into PSM hibernate, the current consumption drops to around 1.60 µA, which is great and seems to match the expected behavior.

  • However, after the modem wakes up (in my case, to send an MQTT ping when the 120-second keepalive timer expires), the next entries into PSM no longer reach the low current levels.

  • Instead, the current consumption stays at around 20 µA in all subsequent PSM cycles.

  • PSM Settings:

    • Active Timer (T3324): 30 seconds
    • TAU (T3412): 15 minutes
  • After waking up and completing the MQTT ping (triggered by the 120s keepalive), I correctly pull the wake-up pin low and suspend UART communication upon receiving +PSMEV: 1.

  • I’ve also confirmed that both GPIO6 and VGPIO go low, which typically indicates the modem is entering hibernate mode again.

However, despite these indicators, the current draw remains at ~20 µA, rather than returning to the expected 1.60 µA seen during the first PSM cycle.

and also, I’ve reviewed and compared the logs from the first successful PSM cycle and the following one. On the surface, there’s no noticeable difference in modem activity or PSM signaling, and both transitions appear clean in the logs. The key differences are only evident in power consumption, something internally seems to prevent the modem from fully returning to deep hibernate mode after waking up once.

this is the logs at first psm entery

[00:00:27.770,000] <dbg> aws: publish_message: Published payload:
                              7b 22 63 6f 75 6e 74 65  72 22 3a 30 7d          |{"counte r":0}   
[00:00:27.770,000] <dbg> hl78xx_socket: offload_ioctl: 1506 offload_ioctl 258
[00:00:27.770,000] <dbg> hl78xx_socket: offload_ioctl: poll_prepare: fd=5, events=0x1
[00:00:33.757,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  2 1
[00:00:33.757,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  2 1
[00:00:33.757,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 2
[00:00:33.757,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 2
[00:01:03.717,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  4      "00001111" "00000111"
[00:01:03.718,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:01:03.718,000] <dbg> modem_chat: modem_chat_log_received_command: +PSMEV:  1
[00:01:03.718,000] <dbg> hl78xx_dev: hl78xx_on_psmev: 289 hl78xx_on_psmev 2
[00:01:03.718,000] <dbg> hl78xx_dev: hl78xx_log_event: event deregistered
[00:01:03.718,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1978 hl78xx_on_state_leave 12
[00:01:03.718,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from carrier on to await registered
[00:01:03.818,000] <dbg> hl78xx_dev: hl78xx_log_event: event timeout
[00:01:03.818,000] <dbg> hl78xx_dev: hl78xx_await_registered_event_handler: 1635 hl78xx_await_registered_event_handler: PSM event received, modem is in PSM mode
[00:01:03.818,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1978 hl78xx_on_state_leave 10
[00:01:03.818,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_enter: 1822: Wake pin is enabled, setting it to low
[00:01:03.818,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_enter: PM state BF: 0 rc: 0
[00:01:03.818,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from await registered to idle
[00:01:04.507,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 0
[00:01:04.507,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:01:04.507,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:01:04.507,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:01:04.507,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 0
[00:01:08.602,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 1
[00:01:08.602,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 1
[00:01:08.602,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:01:08.602,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:01:08.602,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:01:09.461,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 0
[00:01:09.461,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:01:09.461,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:01:09.461,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:01:11.237,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 0

this is the next one:

[00:02:32.618,000] <dbg> aws: mqtt_event_cb: MQTT event: PINGRESP [9] result: 0
[00:02:32.618,000] <dbg> hl78xx_socket: offload_ioctl: 1506 offload_ioctl 258
[00:02:32.618,000] <dbg> hl78xx_socket: offload_ioctl: poll_prepare: fd=5, events=0x1
[00:02:38.161,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  2 1
[00:02:38.161,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  2 1
[00:02:38.161,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 2
[00:02:38.161,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 2
[00:03:08.152,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  4      "00001111" "00000111"
[00:03:08.152,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:03:08.152,000] <dbg> modem_chat: modem_chat_log_received_command: +PSMEV:  1
[00:03:08.152,000] <dbg> hl78xx_dev: hl78xx_on_psmev: 289 hl78xx_on_psmev 2
[00:03:08.152,000] <dbg> hl78xx_dev: hl78xx_log_event: event deregistered
[00:03:08.152,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1978 hl78xx_on_state_leave 12
[00:03:08.152,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from carrier on to await registered
[00:03:08.252,000] <dbg> hl78xx_dev: hl78xx_log_event: event timeout
[00:03:08.252,000] <dbg> hl78xx_dev: hl78xx_await_registered_event_handler: 1635 hl78xx_await_registered_event_handler: PSM event received, modem is in PSM mode
[00:03:08.252,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1978 hl78xx_on_state_leave 10
[00:03:08.252,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_enter: 1822: Wake pin is enabled, setting it to low
[00:03:08.252,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_enter: PM state BF: 0 rc: 0
[00:03:08.252,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from await registered to idle
[00:03:08.940,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 0
[00:03:08.940,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 0
[00:03:08.940,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:03:08.940,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:03:08.940,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:03:13.048,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 1
[00:03:13.048,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 1
[00:03:13.048,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:03:13.048,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:03:13.048,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:03:13.822,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 0
[00:03:13.822,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:03:13.822,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:03:13.822,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:03:13.822,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 0

Verson: HL7812.5.5.17

Thanks in advance.

i saw there is " +CEREG: 4 “00001111” “00000111” message.
did you send AT+CPSMS after MQTT operation?

No I didnt send anything after setting cpsm AT+CPSMS=1,“10101111”,“00001111” at boot.

+CEREG: 4 “00001111” “00000111”

I just checked. This should be negotiated network PSM values, right? Anyway it doesnt look bad as far as I see.

TAU: 10 minutes x 15 = 150 minutes = 2.50 hours
T3324: 2 seconds x 7 = 14 seconds

Would there be any improvement if you send this again just like what you did at boot up?

I tried it, and no improvment the result is still the same.

This is the log after wake request to send tcp data that show where I send cpsms again

[00:02:32.090,000] <dbg> hl78xx_dev: hl78xx_log_event: event resume
[00:02:32.090,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1983 hl78xx_on_state_leave 0
[00:02:32.090,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_leave: PM state BF: 1 rc: 0
[00:02:32.090,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from idle to await wakeup
[00:02:32.090,000] <dbg> hl78xx_dev: hl78xx_log_event: event device awake
[00:02:32.090,000] <dbg> modem_backend_uart_async: modem_backend_uart_async_open: 157
[00:02:32.090,000] <dbg> hl78xx_dev: hl78xx_log_event: event bus opened
[00:02:32.091,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 1
[00:02:32.180,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 1
[00:02:32.180,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 0 rc: 0
[00:02:32.180,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:02:32.180,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 0 rc: 0
[00:02:32.735,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  0 1
[00:02:32.735,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  0 1
[00:02:32.735,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 0
[00:02:32.735,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 0
[00:02:34.582,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  5 "2332" "02E9F81F" 9   "00001111" "00000111"
[00:02:34.582,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:02:34.582,000] <dbg> hl78xx_dev: hl78xx_log_event: event registered
[00:02:34.582,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1983 hl78xx_on_state_leave 11
[00:02:34.582,000] <dbg> hl78xx_dev: hl78xx_on_carrier_on_state_enter: 1668 hl78xx_on_carrier_on_state_enter: Entering carrier on state 0 1 5 4
[00:02:34.582,000] <dbg> hl78xx_dev: hl78xx_on_carrier_on_state_enter: 1677 psm 0 1
[00:02:34.582,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  2 1
[00:02:34.582,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  2 1
[00:02:34.582,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 2
[00:02:34.582,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 2
[00:02:34.583,000] <dbg> modem_chat: modem_chat_script_start: running script: dynamic_script
[00:02:34.583,000] <dbg> modem_chat: modem_chat_script_next: dynamic_script: step: 0
[00:02:34.583,000] <dbg> modem_chat: modem_chat_script_next: sending: AT+CPSMS=1,,,"10101111","00001111"
[00:02:34.583,000] <dbg> modem_chat: modem_chat_log_received_command: +KCELLMEAS:  -95.0 120.0   1.0 1 1
[00:02:34.583,000] <dbg> hl78xx_dev: hl78xx_on_kcellmeas: 585 8 [+KCELLMEAS: ] [-95.0] [120.0]
[00:02:34.583,000] <dbg> hl78xx_dev: hl78xx_on_kcellmeas: 588 hl78xx_on_kcellmeas RSRP: -95
[00:02:34.623,000] <dbg> modem_chat: modem_chat_log_received_command: OK
[00:02:34.623,000] <dbg> modem_chat: modem_chat_script_stop: dynamic_script: complete
[00:02:34.623,000] <dbg> hl78xx_dev: modem_cmd_send_int: Chat script executed successfully.
[00:02:34.623,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from await wakeup to carrier on
[00:02:34.623,000] <dbg> hl78xx_dev: hl78xx_log_event: event registered
[00:02:34.623,000] <dbg> modem_chat: modem_chat_script_start: running script: dynamic_script
[00:02:34.623,000] <dbg> modem_chat: modem_chat_script_next: dynamic_script: step: 0
[00:02:34.623,000] <dbg> modem_chat: modem_chat_script_next: sending: AT+KTCPSND=2,69
[00:02:34.665,000] <dbg> modem_chat: modem_chat_log_received_command: CONNECT
[00:02:34.665,000] <dbg> modem_chat: modem_chat_script_stop: dynamic_script: complete
[00:02:34.665,000] <dbg> hl78xx_dev: modem_cmd_send_int: Chat script executed successfully.
[00:02:34.665,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 2
[00:02:34.671,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 2
[00:02:34.671,000] <dbg> modem_chat: modem_chat_script_start: running script: dynamic_script
[00:02:34.671,000] <dbg> modem_chat: modem_chat_script_next: dynamic_script: step: 0
[00:02:34.712,000] <dbg> modem_chat: modem_chat_log_received_command: +PSMEV:  0
[00:02:34.712,000] <dbg> hl78xx_dev: hl78xx_on_psmev: 289 hl78xx_on_psmev 2
[00:02:34.712,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  3 1
[00:02:34.712,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  3 1
[00:02:34.712,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 3
[00:02:34.712,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Socket 6 connected
[00:02:34.712,000] <dbg> modem_chat: modem_chat_log_received_command: OK
[00:02:34.712,000] <dbg> modem_chat: modem_chat_script_stop: dynamic_script: complete
[00:02:34.712,000] <dbg> hl78xx_dev: modem_cmd_send_int: Chat script executed successfully.
[00:02:34.712,000] <dbg> hl78xx_socket: send_socket_data: 1445 send_socket_data 69 0
[00:02:34.712,000] <dbg> hl78xx_socket: offload_ioctl: 1506 offload_ioctl 258
[00:02:34.712,000] <dbg> hl78xx_socket: offload_ioctl: poll_prepare: fd=5, events=0x1
[00:02:34.924,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  5 1
[00:02:34.924,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  5 1
[00:02:34.924,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 5
[00:02:34.924,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Data ready on socket 6
[00:02:35.507,000] <dbg> modem_chat: modem_chat_log_received_command: +KTCP_DATA:  2 69
[00:02:35.507,000] <dbg> hl78xx_dev: hl78xx_on_socknotifydata: 457 2 69
[00:02:35.507,000] <dbg> hl78xx_socket: socknotifydata: 1684 new total: 69 sckid2
[00:02:35.507,000] <dbg> hl78xx_socket: offload_ioctl: 1506 offload_ioctl 259
[00:02:35.507,000] <dbg> hl78xx_socket: offload_ioctl: poll_update: fd=5
[00:02:35.507,000] <dbg> hl78xx_socket: offload_recvfrom: 1211 offload_recvfrom
[00:02:35.507,000] <dbg> hl78xx_socket: offload_recvfrom: 1240 offload_recvfrom socket_fd: 6, socket_id: 2, expected_data_len: 29
[00:02:35.507,000] <dbg> hl78xx_socket: offload_recvfrom: sending
                                        41 54 2b 4b 54 43 50 52  43 56 3d 32 2c 35 0d 0a |AT+KTCPR CV=2,5..
[00:02:35.507,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 2
[00:02:35.509,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 2
[00:02:35.527,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 1
[00:02:35.527,000] <dbg> hl78xx_socket: modem_process_handler: Received bytes:
                                        0d 0a 43 4f 4e 4e 45 43  54 0d 0a 17 03 03 00 40 |..CONNEC T......@
                                        2d 2d 45 4f 46 2d 2d 50  61 74 74 65 72          |--EOF--P atter   
[00:02:35.527,000] <dbg> hl78xx_socket: socket_process_bytes: CONNECT matched. Expecting 29 more bytes.
[00:02:35.527,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 1
[00:02:35.527,000] <dbg> hl78xx_socket: modem_process_handler: Received bytes:
                                        6e 2d 2d 0d 0a 4f 4b 0d  0a                      |n--..OK. .       
[00:02:35.527,000] <dbg> hl78xx_socket: socket_process_bytes: OK matched.
[00:02:35.527,000] <dbg> hl78xx_socket: modem_process_handler: All data received: 4 bytes
[00:02:35.527,000] <dbg> hl78xx_socket: on_cmd_sockread_common: 830 on_cmd_sockread_common
[00:02:35.527,000] <dbg> hl78xx_socket: on_cmd_sockread_common: Received Data:
                                        17 03 03 00 40                                   |....@            
[00:02:35.527,000] <err> hl78xx_socket: Packet size mismatch! Expected: 5, Actual: 69
[00:02:35.527,000] <dbg> hl78xx_socket: offload_recvfrom: 1269 offload_recvfrom 0 5
[00:02:35.527,000] <dbg> hl78xx_socket: offload_recvfrom: 1211 offload_recvfrom
[00:02:35.527,000] <dbg> hl78xx_socket: offload_recvfrom: 1240 offload_recvfrom socket_fd: 6, socket_id: 2, expected_data_len: 88
[00:02:35.527,000] <dbg> hl78xx_socket: offload_recvfrom: sending
                                        41 54 2b 4b 54 43 50 52  43 56 3d 32 2c 36 34 0d |AT+KTCPR CV=2,64.
                                        0a                                               |.                
[00:02:35.527,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 2
[00:02:35.529,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 2
[00:02:35.577,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 1
[00:02:35.577,000] <dbg> hl78xx_socket: modem_process_handler: Received bytes:
                                        0d 0a 2b 4b 54 43 50 5f  44 41 54 41 3a 20 32 2c |..+KTCP_ DATA: 2,
                                        36 34 0d 0a 0d 0a 43 4f  4e 4e 45 43 54 0d 0a 7f |64....CO NNECT...
[00:02:35.577,000] <dbg> hl78xx_socket: socket_process_bytes: CONNECT matched. Expecting 88 more bytes.
[00:02:35.577,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 1
[00:02:35.577,000] <dbg> hl78xx_socket: modem_process_handler: Received bytes:
                                        d9 c9 06 15 91 40 ed c5  53 e5 12 12 9c 60 af de |.....@.. S....`..
                                        21 e3 ee d5 51 51 77 8c  79 b2 66 55 71 6e 81 07 |!...QQw. y.fUqn..
[00:02:35.577,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 1
[00:02:35.577,000] <dbg> hl78xx_socket: modem_process_handler: Received bytes:
                                        01 8a e0 81 21 4f 40 60  a8 64 0f bc 1e a0 8b 8f |....!O@` .d......
                                        d2 f9 7b 4a b9 9c a7 45  6c 4c 67 92 90 f2 37 2d |..{J...E lLg...7-
[00:02:35.577,000] <dbg> hl78xx_socket: modem_pipe_callback: 692 modem_pipe_callback Pipe event received: 1
[00:02:35.577,000] <dbg> hl78xx_socket: modem_process_handler: Received bytes:
                                        2d 45 4f 46 2d 2d 50 61  74 74 65 72 6e 2d 2d 0d |-EOF--Pa ttern--.
                                        0a 4f 4b 0d 0a                                   |.OK..            
[00:02:35.577,000] <dbg> hl78xx_socket: socket_process_bytes: OK matched.
[00:02:35.577,000] <dbg> hl78xx_socket: modem_process_handler: All data received: 4 bytes
[00:02:35.577,000] <dbg> hl78xx_socket: on_cmd_sockread_common: 830 on_cmd_sockread_common
[00:02:35.577,000] <dbg> hl78xx_socket: on_cmd_sockread_common: Received Data:
                                        7f d9 c9 06 15 91 40 ed  c5 53 e5 12 12 9c 60 af |......@. .S....`.
                                        de 21 e3 ee d5 51 51 77  8c 79 b2 66 55 71 6e 81 |.!...QQw .y.fUqn.
                                        07 01 8a e0 81 21 4f 40  60 a8 64 0f bc 1e a0 8b |.....!O@ `.d.....
                                        8f d2 f9 7b 4a b9 9c a7  45 6c 4c 67 92 90 f2 37 |...{J... ElLg...7
[00:02:35.577,000] <dbg> hl78xx_socket: offload_recvfrom: 1269 offload_recvfrom 0 64
[00:02:35.579,000] <dbg> hl78xx_socket: offload_ioctl: 1506 offload_ioctl 3
[00:02:35.579,000] <dbg> aws: mqtt_event_cb: MQTT event: PINGRESP [9] result: 0
[00:02:35.579,000] <dbg> hl78xx_socket: offload_ioctl: 1506 offload_ioctl 258
[00:02:35.579,000] <dbg> hl78xx_socket: offload_ioctl: poll_prepare: fd=5, events=0x1
[00:02:41.224,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  2 1
[00:02:41.224,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  2 1
[00:02:41.224,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 2
[00:02:41.224,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 2
[00:03:11.214,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  4      "00001111" "00000111"
[00:03:11.214,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:03:11.214,000] <dbg> modem_chat: modem_chat_log_received_command: +PSMEV:  1
[00:03:11.214,000] <dbg> hl78xx_dev: hl78xx_on_psmev: 289 hl78xx_on_psmev 2
[00:03:11.214,000] <dbg> hl78xx_dev: hl78xx_log_event: event deregistered
[00:03:11.214,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1983 hl78xx_on_state_leave 12
[00:03:11.214,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from carrier on to await registered
[00:03:11.314,000] <dbg> hl78xx_dev: hl78xx_log_event: event timeout
[00:03:11.314,000] <dbg> hl78xx_dev: hl78xx_await_registered_event_handler: 1625 hl78xx_await_registered_event_handler: PSM event received, modem is in PSM mode
[00:03:11.314,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1983 hl78xx_on_state_leave 10
[00:03:11.314,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_enter: 1817: Wake pin is enabled, setting it to low
[00:03:11.314,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_enter: PM state BF: 0 rc: 0
[00:03:11.314,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from await registered to idle
[00:03:11.998,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 0
[00:03:11.998,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:03:11.998,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:03:11.998,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:03:11.998,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 0
[00:03:16.110,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 1
[00:03:16.110,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 1
[00:03:16.110,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:03:16.110,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:03:16.110,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:03:16.881,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 0
[00:03:16.881,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 0
[00:03:16.881,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:03:16.881,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:03:16.881,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0

I guess you already set AT+KSIMDET=0, right?

On the other hand, after you send the TCP data, if you restart the stack by AT+CFUN=0/1, will this overcome the issue?

correct, its always disabled.

After waking up from psm, I tested with cfun=4,0 and cfun=1,0 but no luck. still the same issue:

[00:02:32.792,000] <dbg> hl78xx_dev: hl78xx_log_event: event resume
[00:02:32.792,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1986 hl78xx_on_state_leave 0
[00:02:32.792,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_leave: PM state BF: 1 rc: 0
[00:02:32.793,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from idle to await wakeup
[00:02:32.793,000] <dbg> hl78xx_dev: hl78xx_log_event: event device awake
[00:02:32.793,000] <dbg> modem_backend_uart_async: modem_backend_uart_async_open: 157
[00:02:32.793,000] <dbg> hl78xx_dev: hl78xx_log_event: event bus opened
[00:02:32.793,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 1
[00:02:32.882,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 1
[00:02:32.882,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 0 rc: 0
[00:02:32.882,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:02:32.882,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 0 rc: 0
[00:02:33.438,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  0 1
[00:02:33.438,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  0 1
[00:02:33.438,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 0
[00:02:33.438,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 0
[00:02:34.793,000] <dbg> hl78xx_dev: hl78xx_log_event: event timeout
[00:02:34.793,000] <dbg> modem_chat: modem_chat_script_start: running script: hl78xx_periodic_chat_script
[00:02:34.793,000] <dbg> modem_chat: modem_chat_script_next: hl78xx_periodic_chat_script: step: 0
[00:02:34.793,000] <dbg> modem_chat: modem_chat_script_next: sending: AT+KSIMDET?
[00:02:34.831,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KSIMDET: 0
[00:02:34.831,000] <dbg> modem_chat: modem_chat_log_received_command: OK
[00:02:34.831,000] <dbg> modem_chat: modem_chat_script_stop: hl78xx_periodic_chat_script: complete
[00:02:34.831,000] <dbg> hl78xx_dev: hl78xx_log_event: event script success
[00:02:35.114,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  5 "2332" "02E9F81F" 9   "00001111" "00000111"
[00:02:35.114,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:02:35.114,000] <dbg> hl78xx_dev: hl78xx_log_event: event registered
[00:02:35.114,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1986 hl78xx_on_state_leave 11
[00:02:35.114,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  2 1
[00:02:35.114,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  2 1
[00:02:35.114,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 2
[00:02:35.114,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 2
[00:02:35.115,000] <dbg> modem_chat: modem_chat_script_start: running script: dynamic_script
[00:02:35.115,000] <dbg> modem_chat: modem_chat_script_next: dynamic_script: step: 0
[00:02:35.115,000] <dbg> modem_chat: modem_chat_script_next: sending: AT+KSRAT?
[00:02:35.150,000] <dbg> modem_chat: modem_chat_log_received_command: +KCELLMEAS:  -94.0 122.0   3.0 1 1
[00:02:35.150,000] <dbg> hl78xx_dev: hl78xx_on_kcellmeas: 585 8 [+KCELLMEAS: ] [-94.0] [122.0]
[00:02:35.150,000] <dbg> hl78xx_dev: hl78xx_on_kcellmeas: 588 hl78xx_on_kcellmeas RSRP: -94
[00:02:35.150,000] <dbg> modem_chat: modem_chat_log_received_command: +KSRAT:  1
[00:02:35.150,000] <dbg> hl78xx_dev: hl78xx_on_ksrat: KSRAT: +KSRAT:  1
[00:02:35.150,000] <dbg> modem_chat: modem_chat_script_stop: dynamic_script: complete
[00:02:35.150,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: OK
[00:02:35.150,000] <dbg> hl78xx_dev: modem_cmd_send_int: Chat script executed successfully.
[00:02:35.150,000] <inf> hl78xx_utility: Default band config: 0808189F
[00:02:35.150,000] <dbg> hl78xx_dev: hl78xx_band_cfg: The band configs (808189F) matched with exist configs (808189F) for rat: [1]
[00:02:35.150,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from await wakeup to run rat cfg script
[00:02:35.150,000] <dbg> hl78xx_dev: hl78xx_log_event: event script success
[00:02:35.150,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1986 hl78xx_on_state_leave 7
[00:02:35.150,000] <dbg> modem_chat: modem_chat_script_start: running script: dynamic_script
[00:02:35.150,000] <dbg> modem_chat: modem_chat_script_next: dynamic_script: step: 0
[00:02:35.150,000] <dbg> modem_chat: modem_chat_script_next: sending: AT+CFUN=4,0
[00:02:35.767,000] <dbg> modem_chat: modem_chat_log_received_command: OK
[00:02:35.767,000] <dbg> modem_chat: modem_chat_script_stop: dynamic_script: complete
[00:02:35.767,000] <dbg> modem_chat: modem_chat_log_received_command: +PSMEV:  0
[00:02:35.767,000] <dbg> hl78xx_dev: hl78xx_on_psmev: 289 hl78xx_on_psmev 2
[00:02:35.767,000] <dbg> hl78xx_dev: modem_cmd_send_int: Chat script executed successfully.
[00:02:35.767,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  3 1
[00:02:35.767,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  3 1
[00:02:35.767,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 3
[00:02:35.767,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Socket 6 connected
[00:02:35.767,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  5 1
[00:02:35.767,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  5 1
[00:02:35.767,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 5
[00:02:35.767,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Data ready on socket 6
[00:02:35.767,000] <dbg> modem_chat: modem_chat_script_start: running script: dynamic_script
[00:02:35.767,000] <dbg> modem_chat: modem_chat_script_next: dynamic_script: step: 0
[00:02:35.767,000] <dbg> modem_chat: modem_chat_script_next: sending: AT+CGDCONT=1,"IPV4V6","netfeasavodiot"
[00:02:35.767,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  0       "00000111"
[00:02:35.768,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:02:35.799,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +CGEV: ME DETACH
[00:02:35.799,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  0       "00000111"
[00:02:35.799,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:02:35.799,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: Registration status unchanged: 0
[00:02:35.799,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KTCP_NOTIF: 2,0
[00:02:35.800,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KUDP_NOTIF: 1,0
[00:02:35.800,000] <dbg> modem_chat: modem_chat_log_received_command: OK
[00:02:35.800,000] <dbg> modem_chat: modem_chat_script_stop: dynamic_script: complete
[00:02:35.800,000] <dbg> hl78xx_dev: modem_cmd_send_int: Chat script executed successfully.
[00:02:35.800,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KCNX_IND: 1,5,30
[00:02:35.800,000] <dbg> modem_chat: modem_chat_script_start: running script: dynamic_script
[00:02:35.800,000] <dbg> modem_chat: modem_chat_script_next: dynamic_script: step: 0
[00:02:35.800,000] <dbg> modem_chat: modem_chat_script_next: sending: AT+KCNXCFG=1,"GPRS","netfeasavodiot",,,"IPV4V6"
[00:02:35.851,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KCNX_IND: 1,0,1
[00:02:35.852,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KCNX_IND: 1,0,0
[00:02:35.852,000] <dbg> modem_chat: modem_chat_log_received_command: OK
[00:02:35.852,000] <dbg> modem_chat: modem_chat_script_stop: dynamic_script: complete
[00:02:35.852,000] <dbg> hl78xx_dev: modem_cmd_send_int: Chat script executed successfully.
[00:02:35.852,000] <dbg> modem_chat: modem_chat_script_start: running script: dynamic_script
[00:02:35.852,000] <dbg> modem_chat: modem_chat_script_next: dynamic_script: step: 0
[00:02:35.852,000] <dbg> modem_chat: modem_chat_script_next: sending: AT+CFUN=1,0
[00:02:36.514,000] <dbg> modem_chat: modem_chat_log_received_command: OK
[00:02:36.514,000] <dbg> modem_chat: modem_chat_script_stop: dynamic_script: complete
[00:02:36.514,000] <dbg> hl78xx_dev: modem_cmd_send_int: Chat script executed successfully.
[00:02:36.514,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from run rat cfg script to run enable gprs script
[00:02:36.514,000] <dbg> hl78xx_dev: hl78xx_log_event: event deregistered
[00:02:36.514,000] <dbg> hl78xx_dev: hl78xx_log_event: event script success
[00:02:36.514,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  2       "00000111"
[00:02:36.514,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:02:36.514,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  0 1
[00:02:36.514,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  0 1
[00:02:36.514,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 0
[00:02:36.514,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 0
[00:02:36.514,000] <dbg> hl78xx_dev: hl78xx_log_event: event deregistered
[00:02:38.514,000] <dbg> hl78xx_dev: hl78xx_log_event: event timeout
[00:02:40.258,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  0       "00000111"
[00:02:40.258,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:02:40.258,000] <dbg> hl78xx_dev: hl78xx_log_event: event deregistered
[00:02:40.296,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  2 1
[00:02:40.296,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  2 1
[00:02:40.296,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 2
[00:02:40.296,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 2
[00:02:40.296,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  2       "00000111"
[00:02:40.296,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:02:40.296,000] <dbg> hl78xx_dev: hl78xx_log_event: event deregistered
[00:02:40.297,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  3 1
[00:02:40.297,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  3 1
[00:02:40.297,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 3
[00:02:40.297,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Socket 6 connected
[00:02:40.569,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  5 1
[00:02:40.569,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  5 1
[00:02:40.569,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 5
[00:02:40.569,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Data ready on socket 6
[00:02:41.504,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  2      "00001111" "00000111"
[00:02:41.504,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:02:41.504,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: Registration status unchanged: 2
[00:02:41.605,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +CGEV: ME PDN ACT 1
[00:02:41.605,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  5 "2332" "02E9F81F" 9   "00001111" "00000111"
[00:02:41.605,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:02:41.605,000] <dbg> hl78xx_dev: hl78xx_log_event: event registered
[00:02:41.605,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1986 hl78xx_on_state_leave 9
[00:02:41.605,000] <dbg> hl78xx_dev: hl78xx_on_carrier_on_state_enter: 1670 hl78xx_on_carrier_on_state_enter: Entering carrier on state 0 1 5 2
[00:02:41.605,000] <dbg> hl78xx_dev: hl78xx_on_carrier_on_state_enter: 1679 psm 1 0
[00:02:41.605,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from run enable gprs script to carrier on
[00:02:41.605,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KCNX_IND: 1,1,0
[00:02:41.605,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KUDP_IND: 1,1
[00:02:46.859,000] <dbg> modem_chat: modem_chat_log_received_command: +KSTATEV:  2 1
[00:02:46.859,000] <dbg> hl78xx_dev: hl78xx_on_kstatev: KSTATEV: +KSTATEV:  2 1
[00:02:46.859,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: KSTATEV: socket 6 state 2
[00:02:46.859,000] <dbg> hl78xx_socket: hl78xx_on_kstatev_parser: Unhandled KSTATEV for socket 6 state 2
[00:03:05.805,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KCNX_IND: 1,4,1
[00:03:05.805,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KCNX_IND: 1,1,0
[00:03:06.818,000] <dbg> modem_chat: modem_chat_on_unknown_command_received: +KCNX_IND: 1,3
[00:03:16.850,000] <dbg> modem_chat: modem_chat_log_received_command: +CEREG:  4      "00001111" "00000111"
[00:03:16.850,000] <dbg> hl78xx_dev: hl78xx_on_cxreg: 247 hl78xx_on_cxreg 9 +CEREG: 
[00:03:16.850,000] <dbg> modem_chat: modem_chat_log_received_command: +PSMEV:  1
[00:03:16.850,000] <dbg> hl78xx_dev: hl78xx_on_psmev: 289 hl78xx_on_psmev 2
[00:03:16.850,000] <dbg> hl78xx_dev: hl78xx_log_event: event deregistered
[00:03:16.850,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1986 hl78xx_on_state_leave 12
[00:03:16.850,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from carrier on to await registered
[00:03:16.950,000] <dbg> hl78xx_dev: hl78xx_log_event: event timeout
[00:03:16.950,000] <dbg> hl78xx_dev: hl78xx_await_registered_event_handler: 1627 hl78xx_await_registered_event_handler: PSM event received, modem is in PSM mode
[00:03:16.950,000] <dbg> hl78xx_dev: hl78xx_on_state_leave: 1986 hl78xx_on_state_leave 10
[00:03:16.950,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_enter: 1820: Wake pin is enabled, setting it to low
[00:03:16.950,000] <dbg> hl78xx_dev: hl78xx_on_idle_state_enter: PM state BF: 0 rc: 0
[00:03:16.950,000] <dbg> hl78xx_dev: hl78xx_log_state_changed: switch from await registered to idle
[00:03:17.631,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 0
[00:03:17.631,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 0
[00:03:17.631,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:03:17.631,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:03:17.631,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:03:21.746,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 1
[00:03:21.746,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 1
[00:03:21.746,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:03:21.746,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:03:21.746,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0
[00:03:22.514,000] <dbg> hl78xx_dev: mdm_vgpio_callback_isr: VGPIO ISR callback gpio@42020400 2 0
[00:03:22.514,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: GPIO6 ISR callback gpio@42020000 8 0
[00:03:22.514,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state BF: 1 rc: 0
[00:03:22.514,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM act rc: 0
[00:03:22.514,000] <dbg> hl78xx_dev: mdm_gpio6_callback_isr: PM state af: 1 rc: 0

The thing is I can see VGPIO is low. so doesnt this indicate the modem is in the hibernate?

If just tested with pure sleep and wake up, i.e. no tcp communication, is there any issue?

Btw, sending of +cpsms or not will not bring effect, right?

Lastly, what did you set for +ksleep?

This is exactly what I tested here, these logs belong to that scenario. And also see the attached full log for more detail, please.

correct, it is still consumes 20uA after psmev: 1 and VPIO is low

AT+KSLEEP=1,2,0

I have also attached a full log that show all the modem comms from booting up to 2 consecutive PSMs.
serial-terminal-16062025_132404.txt (192.3 KB)

@jyijyi Moreover, after VGPIO went low, I physically disconnected all the pins between the modem and the host MCU, leaving only the GNDs connected, but it didn’t help. In fact, it got worse: the current consumption increased to 23 µA.

is it working fine if you type AT+CFUN=1,1 after waking up and sending MQTT packet?

BTW, have you tried the latest firmware?
Your firmware version is a bit old…

Yes i tested this case, and it worked.

Yes, the sw ( HL7812.5.5.17.0) im working on is the latest one on this 5.5. series . It is Release 4.3.

serial-terminal-16062025_184934.txt (86.1 KB)

Then can you take AT+CFUN=1,1 as workaround?

BTW, there is R6 and R6.1 firmware now:
https://source.sierrawireless.com/resources/airprime/software/hl781x-and-hl7845-firmware/hl781x-and-hl7845-firmware-release-history-item/#sthash.lghZ1HIn.dpbs

No way. doesnt that really mean there is no differences power-cycle the board and go through the entire initialization process again? whats the point of using PSM then? Is this a known issue?

Have you tried r6 and r6.1 firmware?
Have you reported this issue to distributor?

From “2174229 HL78xx Low Power Modes Application Note r7.pdf”, you can double confirm if you have met all the requirement for hibernate mode:

Just flash the R6.1 to test with. My first experience was that receiving CME ERROR: 3 for ksimdet? which we were not getting with 5.5.17.

at+ksimdet?

+CME ERROR: 3

I couldnt see any note in the at command guide. Is it normal behavior?

i don’t see such issue:


ati3
HL7812.5.7.3.0

OK
at+cpin?
+CPIN: READY

OK
at+ksimdet?
+KSIMDET: 1

OK

try to run it as soon as you receive the +KSUP: 0

seems you need to wait for a while to run it after booting up

I still don’t see such issue after power up for 10 minutes

[2025-06-17 13:30:25.733] +KSUP: 0

[2025-06-17 13:30:26.352] at+ksimdet?+

[2025-06-17 13:30:27.141]

[2025-06-17 13:30:27.141] +CME ERROR: 3

[2025-06-17 13:30:27.903] at+ksimdet?

[2025-06-17 13:30:28.838] +CME ERROR: 3

[2025-06-17 13:30:28.982]

[2025-06-17 13:30:28.982] +CEREG: 2

[2025-06-17 13:30:29.446] at+ksimdet?

[2025-06-17 13:30:30.502] +KSIMDET: 0

[2025-06-17 13:30:30.502]

[2025-06-17 13:30:30.502] OK

see my case: ksimdet is not available for ~4 secs after ksup