Cellular Boron Stuck with Flashing Green Status Light

Hi,
I have a bench device that has been running for months with the same firmware. Starting yesterday the device got "stuck" with flashing green status light. My firmware code is running in the expected loop, but not publishing data as the device is not connected to cellular. Below is the trace from the serial port, any ideas why this is stuck? What can be done to defend against?

0392722468 [net.pppncp] ERROR: Failed to initialize cellular NCP client: -210

0392722568 [ncp.client] TRACE: Powering modem on, ncpId: 0x47

0392722568 [ncp.client] TRACE: Modem already on

0392722569 [net.pppncp] TRACE: NCP event 3

0392722570 [net.pppncp] TRACE: NCP power state changed: IF_POWER_STATE_UP

0392722570 [system.nm] TRACE: Interface 4 power state changed: UP

0392722570 [ncp.client] TRACE: Setting UART voltage translator state 1

0392722671 [ncp.client] TRACE: Setting UART voltage translator state 0

0392722771 [ncp.client] TRACE: Setting UART voltage translator state 1

0392723772 [ncp.at] TRACE: > AT

0392724772 [ncp.at] TRACE: > AT

0392725772 [ncp.at] TRACE: > AT

0392726772 [ncp.at] TRACE: > AT

0392727772 [ncp.at] TRACE: > AT

0392728772 [ncp.at] TRACE: > AT

0392729772 [ncp.at] TRACE: > AT

0392730772 [ncp.at] TRACE: > AT

0392731772 [ncp.at] TRACE: > AT

0392732772 [ncp.at] TRACE: > AT

0392733772 [ncp.at] TRACE: > AT

0392734773 [ncp.at] TRACE: > AT

0392735773 [ncp.at] TRACE: > AT

0392736773 [ncp.at] TRACE: > AT

0392737773 [ncp.at] TRACE: > AT

0392738773 [ncp.client] ERROR: No response from NCP

0392738773 [ncp.client] TRACE: Setting UART voltage translator state 0

0392738774 [ncp.client] TRACE: Hard resetting the modem

0392738974 [net.pppncp] TRACE: NCP event 3

0392738974 [net.pppncp] TRACE: NCP power state changed: IF_POWER_STATE_POWERING_UP

0392738975 [system.nm] TRACE: Interface 4 power state changed: POWERING_UP

0392738975 [ncp.client] TRACE: Emergency hardware shutdown the modem

0392747254 [app] TRACE: Publishing readings... ttl = 1723561240

0392747255 [app] TRACE: Message sent: {"version":12,"deviceid":"xxxxxx460f","datetime":1722956440}

0392747257 [app] TRACE: Free RAM 102312 bytes

0392747258 [app] TRACE: Entering sleep mode loop for 900 mins

0392764476 [net.pppncp] ERROR: Failed to initialize cellular NCP client: -210

0392764576 [ncp.client] TRACE: Powering modem on, ncpId: 0x47

0392764576 [ncp.client] TRACE: Modem already on

0392764577 [net.pppncp] TRACE: NCP event 3

0392764577 [net.pppncp] TRACE: NCP power state changed: IF_POWER_STATE_UP

0392764578 [system.nm] TRACE: Interface 4 power state changed: UP

0392764578 [ncp.client] TRACE: Setting UART voltage translator state 1

0392764678 [ncp.client] TRACE: Setting UART voltage translator state 0

0392764778 [ncp.client] TRACE: Setting UART voltage translator state 1

0392765779 [ncp.at] TRACE: > AT

0392766779 [ncp.at] TRACE: > AT

0392767779 [ncp.at] TRACE: > AT

0392768779 [ncp.at] TRACE: > AT

0392769779 [ncp.at] TRACE: > AT

0392770779 [ncp.at] TRACE: > AT

0392771779 [ncp.at] TRACE: > AT

0392772779 [ncp.at] TRACE: > AT

0392773779 [ncp.at] TRACE: > AT

0392774779 [ncp.at] TRACE: > AT

0392775779 [ncp.at] TRACE: > AT

0392776780 [ncp.at] TRACE: > AT

0392777780 [ncp.at] TRACE: > AT

0392778780 [ncp.at] TRACE: > AT

0392779780 [ncp.at] TRACE: > AT

0392780780 [ncp.client] ERROR: No response from NCP

0392780780 [ncp.client] TRACE: Setting UART voltage translator state 0

0392780781 [ncp.client] TRACE: Hard resetting the modem

0392780981 [net.pppncp] TRACE: NCP event 3

0392780981 [net.pppncp] TRACE: NCP power state changed: IF_POWER_STATE_POWERING_UP

0392780982 [system.nm] TRACE: Interface 4 power state changed: POWERING_UP

0392780983 [ncp.client] TRACE: Emergency hardware shutdown the modem

Hi @jdr2023!

What model is your boron? Did you try something to bring it back after the issue started?

That looks like it could be a hardware failure, but you should run Device Restore USB to restore default software to make sure it's not something in your code.

Also, in the future, you should check for Particle.connected() before publishing. If you publish before connected Particle.publish() will block, sometimes for up to 10 minutes, which can cause unexpected behavior.

Boron LTE-M (NorAm) with EtherSIM (BRN404X). I have not tried to recover the device yet, still in endless loop in case there is any additional data to collect to help with diagnostics. I can pull the plug on the device next to see if it recovers after power cycle.