@avtolstoy avtolstoy released this Dec 20, 2018 · 7 commits to mesh-develop since this release

Assets 38



  • [Argon] Sucessful update of the NCP firmware no longer results in SYSTEM_ERROR_INVALID_STATE (#1645)
  • [Argon] m command in listening mode correctly reports WiFi MAC address (#1638)


  • [Gen 3] Added newlib __assert_func() implementation that logs the assertion failure and delegates to AssertionFailure panic handler (#1636)
  • [Gen 3] OpenThread upgraded to 2018/12/17 master (#1643)
  • [Gen 3] Added a workaround for RTC / TIMER negative drift issue in Nordic 802.15.4 radio driver (#1643)
  • [Gen 3] Normalized (lowered) IRQ priorities to a safe 5-7 range (#1643)
  • [Gen 3] timer_hal and rtc_hal migrated to use a single stable monotonic 64-bit microsecond counter provided by OpenThread platform-specific code using the RTC peripheral (#1643)
  • [Gen 3] HAL_disable_irq() / HAL_enable_irq() implementation changed to use __set_BASEPRI() instead of sd_nvic_critical_region_enter() / sd_nvic_critical_region_exit() to avoid assertion failures in Nordic 802.15.4 radio driver (#1643)
  • [Gen 3] Persistent border router prefix (#1647)
  • [Gen 3] Enables USB Serial by default (#1649)

Updating to the most recent release (v0.8.0-rc.27)

The most recent release for Particle Mesh is v0.8.0-rc.27. To update your device to this version of firmware, use the following instructions:

If you previously tried to set up your device using the Android mobile app and got a Bluetooth (BLE) pairing error (Nexus 6) or an error during device firmware upgrade, you should first manually update the device firmware to 0.8.0-rc.26 or later using the Using the Particle CLI instructions below. The BLE fix requires a Particle Device OS fix, which for obvious reasons can’t be delivered by BLE during the normal mobile app setup process if BLE is not working, so you’ll need to do the manual upgrade process once by USB to get the device to 0.8.0-rc.26 or later which contains the fix.

Using the Particle CLI

  • Install the Particle CLI on your computer if you have not already done so.
  • Go to the mesh firmware releases page.
  • Download the hybrid .bin file for your device. For example: hybrid-0.8.0-rc.27-argon.bin
  • Put your device into DFU mode (blinking yellow), instructions here.
  • Flash the code from a command prompt or terminal window:
particle flash --usb hybrid-0.8.0-rc.27-argon.bin

For the Argon, if you are upgrading a factory unit without using the mobile app, you must manually apply the NCP (network coprocessor) update as well. Upgrade your Device OS to 0.8.0-rc.27 first, then go to the Argon NCP Release Page and download argon-ncp-firmware-0.0.5-ota.bin. With the Argon in blinking blue (listening mode):

particle flash --serial argon-ncp-firmware-0.0.5-ota.bin

You may get the error "Error writing firmware: TimeoutError: timed out after 10000ms" but this is normal if the Argon is still blinking magenta rapidly. Let it sit for a minute and then it should reboot and be updated.

Note that this must be done in --serial mode not --dfu. The mobile app does this automatically, so this step isn't required in normal circumstances. Also, the NCP binary does not need to be updated for every system firmware version. At this time, only factory new devices need an update.

Using the Particle app

  • If you have not configured your Particle device
    Complete the setup process using your iOS or Android mobile device. Your devices should automatically be upgraded to the most recent release.

  • If you have already configured your Particle device
    Your devices should already be running Device OS v0.8.0-rc.27. You can confirm this by:

    • Putting your device into listening mode and typing particle serial identify into the CLI
    • Inspecting your device in the Particle Console (http://console.particle.io) under the Devices tab.

Using the Particle Web IDE (for devices already connected to the Cloud)

If your device is online and breathing cyan, you can upgrade the Device OS by flashing firmware targeting the newer version. Click on the Devices icon (circle with 4 lines on the left side), make sure the device has a gold star before its name, click on the >, then select the version you want to upgrade to, and compile and flash firmware to your device.


This will only upgrade, it will not downgrade to an earlier Device OS version.

The first time you flash code from the Web IDE to a device running 0.8.0-rc.25 that targets 0.8.0-rc.26 or later, the first flash operation will fail but it will start a mandatory Device OS upgrade. You can then flash your user code again. This will only happen on the first flash from 0.8.0-rc.25 to 0.8.0-rc.26 or later from the Web IDE.