Instructions for collecting and reporting cellular connectivity issues

Hello folks!

Background

Many of our customers and product creators in the US may be aware that many carriers have already sunset 2G networks and are in the process of sunsetting 3G networks leading up to 2022. This requires IoT product creators to migrate their applications to brand new LTE M1 technologies, which require new cellular chipsets, modules, and carrier networks to operate.

All new technologies require time to stabilize, and Particle has been successful in identifying and resolving dozens of bugs that have improved cellular reliability for Particle devices on LTE M1 networks here in the US. Some of the underlying issues were traced back to our Device OS, some to the firmware running in the cell modem’s underlying chipset, and some to the carrier network our devices connect to.

Regardless of where the issue lies, Particle is committed to supporting customers who are experiencing connectivity issues with identifying and resolving those issues. Because of the complexity of these systems and the number of potential root causes, we need your help to learn more about the issues you’re experiencing so we can tackle them as efficiently as possible.

The purpose of this post is to provide clear instructions to individuals who are experiencing LTE M1 connectivity issues for capturing and submitting connectivity logs that our engineering team can use for debugging.

Instructions for capturing and submitting logs

The most helpful information that you can provide to help us chase down intermittent connectivity issues are logs from the device from when the connectivity disruption occurs. This means that the device will need to be connected to a computer that can capture logs until the connectivity event occurs.

We’ll provide clear instructions for preparing your device to capture these logs, and what supplemental information we need in order to debug efficiently.

1. Written description

To start, we’d love to learn more about what happens to the device when the issue occurs. In your own words, what’s your impression of the following:

  • Have you been successful in getting your device connected to the Particle Cloud previously?
  • How often does the connectivity event occur?
  • Does it occur on all your devices? If so, which ones?
  • Does it occur when running specific firmware in particular, or any firmware?
  • What version of Device OS is your Particle device running?
  • Are you using a Particle SIM or 3rd party SIM?

2. Device logs

The next step is to isolate as many variables as possible and capture logs from when the connectivity incident occurs. This includes:

  • Ensuring the device is running the most recent version of Device OS
  • Ensuring the device is running a standardized “cloud-debug” user application that captures logs that our team can use for debugging

Download everything

To start, we need to update your device to the latest version of Device OS, which is presently v1.2.1-rc.3.

  • Download the correct set of binaries for your device. You can also find them below at:

  • Download the Cloud debug application which will help us collect standardized logs for your device.

    • If you are using the Electron or E Series, download the cloud debug firmware here
      • It will download with the filename firmware.bin
      • please rename to electron-clouddebug-v1.2.1-rc.3.bin for compatibility with following instructions.
    • If you are using the Boron, download the cloud debug firmware for Boron Device OS v1.2.1-rc.3 here.

Flash Device OS and clouddebug app

  • Use the Particle CLI upgrade your Device OS and flash the cloud-debug firmware to your device

    • Put your device into DFU mode (flashing yellow)
      • particle flash --usb <device>-system-part1@1.2.1-rc.3.bin
      • particle flash --usb <device>-clouddebug-v1.2.1-rc.3.bin
    • Put your device into listening mode (blinking blue)
      • particle flash --serial <device>-bootloader@1.2.1-rc.3.bin
  • Open up a serial terminal by issuing the following CLI command:

    • particle serial monitor --follow

You should see log output start to flow through your terminal that looks something like this:

neighbor 0 rat=GSM mcc=310, mnc=11094, lac=80592df ci=a56f band=GSM 850 bsic=18 arfcn=eb rxlev=37
neighbor 1 rat=GSM mcc=310, mnc=11094, lac=100 ci=a5f2 band=GSM 850 bsic=25 arfcn=b4 rxlev=22
    15.443 AT send      20 "AT+UPING=\"8.8.8.8\"\r\n"
    15.443 AT read  +   14 "\r\n+CIEV: 2,2\r\n"
    15.484 AT read OK    6 "\r\nOK\r\n"
ping addr 8.8.8.8=1
    15.484 AT send      31 "AT+UDNSRN=0,\"device.spark.io\"\r\n"
    17.204 AT read  +   67 "\r\n+UUPING: 1,32,\"google-public-dns-a.google.com\",\"8.8.8.8\",55,812\r\n"
    17.865 AT read  +   67 "\r\n+UUPING: 2,32,\"google-public-dns-a.google.com\",\"8.8.8.8\",55,651\r\n"
    17.936 AT read  +   27 "\r\n+UDNSRN: \"52.91.48.237\"\r\n"
    17.946 AT read OK    6 "\r\nOK\r\n"1

Capture logs

  • Be sure to capture logs for at least 10 minutes, including when the connectivity event occurs.
  • Copy the logs from your serial terminal into a .txt file (not .rtf, Microsoft Word, or Pages) using Notepad (Windows) or TextEdit (Mac)

3. Submit via support.particle.io

  • Submit the information above to our support team using the support portal at support.particle.io\
  • Be sure to include both the 1) written information as well as the 2) connectivity logs.

Done!

Thank you for helping to improve the Particle ecosystem! If you have questions about these instructions, please feel free to post in the thread below.

6 Likes

Done.

1 Like

Thanks so much for reporting @ric_hard.

Once our team is back for the holiday, we’ll be sure to dig into your provided information.

1 Like

6 posts were split to a new topic: Cannot flash boron-clouddebug-v121-rc3.bin