Argon failed to initialize ESP32 NCP client -100

argon
Tags: #<Tag:0x00007f03905d8c58>

#1

Having a issue with a argon after i lost power and rebooted the equipment the serial monitor is printing.

It’s running rc27 the firmware has Threading disabled (in case it matters) running on automatic mode.

Here is a paste of what it’s been printing for the past few hours.

010902432 [gsm0710muxer] INFO: Starting GSM07.10 muxer
0010902433 [net.esp32ncp] TRACE: Failed to initialize ESP32 NCP client: -100
0010903839 [ncp.at] TRACE: > AT
0010903840 [ncp.at] TRACE: < OK
0010904841 [hal] TRACE: NCP ready to accept AT commands
0010904842 [ncp.at] TRACE: > AT+CMUX=0
0010904844 [ncp.at] TRACE: < OK
0010904844 [gsm0710muxer] INFO: Starting GSM07.10 muxer
0010904845 [net.esp32ncp] TRACE: Failed to initialize ESP32 NCP client: -100

It’s flashing green.
Is this a known issue?


#2

You could try to reflash the NCP

  • download the binary
  • put the device in Listening Mode (blinking blue)
  • run particle flash -serial argon-ncp-firmware-0.0.5-ota.bin

#3

It fixes if I reboot.
Is there any debugging that can be done to try to figure out what does the error mean?
How can I save to eeprom when it happens?

I have a few units that I deployed remotely that could be getting a similar issue (they are remote and have no serial port).

Similar behavior reboot / power goes out and afterwards they never connect again.


#4

Where can I get the source code that is printing this message?
Is it some proprietary ESP32 Library?
I would like to figure out what -100 means on the code.
I did a search on the Particle Firmware repo on github and coudn’t find it.


#5

The “Failed to initialize ESP32 NCP” error message is printing the return code of NcpClient::on() method.
But so far I’ve only found the HAL header in the public repo
https://github.com/particle-iot/device-os/blob/mesh-develop/hal/network/ncp/ncp_client.h

Update:
Found the implementation of the on() method

And here are the references where the error message is emitted
https://github.com/particle-iot/device-os/blob/mesh-develop/hal/network/lwip/esp32/esp32ncpnetif.cpp#L127
https://github.com/particle-iot/device-os/blob/mesh-develop/hal/network/lwip/esp32/esp32ncpnetif.cpp#L289


#6

Thank’s so hmm what would you recommend to solve this?
I am running on automatic mode shoudn’t the firmware in automatic mode handle the esp32ncpclient state so if it goes to disabled it will enable it again?

just to double check SYSTEM_ERROR_INVALID_STATE is -100? I coudn’t find a definition of it’s value in github.


#7

This may call for a support ticket


#8

Thanks will do so now.
Hit a similar issue though I enabled threading and it just gets completely stuck on reconnection.

0000067641 [ncp.at] TRACE: < OK
0000067641 [gsm0710muxer] INFO: Mux channel 2 already opened
0000067643 [hal] TRACE: Connecting to "PRMCNET"
0000069598 [ncp.at] TRACE: < WIFI CONNECTED
0000200675 [net.esp32ncp] TRACE: Failed to connect to WiFi: -170
0000200676 [gsm0710muxer] INFO: Stopping GSM07.10 muxer

#9

Hey everyone,

Just a heads up, as per our release topic Gen 3 improvements update 2/2/19 an issue in regards to causing a deadlock for the NCP is addressed as per device issue #3. I highly suspect this is the issue you are experiencing and that this should be resolved in v0.9.0-rc2.

For now, I would sit tight until you’re able to try 0.9.0-rc2 and see if this issue persists post update.


#10

Have it at a customer site at a remote location. Been trying to setup the stlink v2 with the Argon but I get some weird errors about cmsis-dap having the wrong parameters on eclipse.
I want to make sure it’s the same issue instead of waiting.


#11

Hey Anner,

Based on the information provided and the info we are aware of at this time, I reasonably believe it to be the same thing. It would be best to use v0.9.0 as a base for further diagnostics before proceeding forward with further diagnosis.

I anticipate that it should be very soon, so the wait shouldn’t be too long. :slight_smile:


#12

Will wait for it to be released and give it a try.