Particle Device OS Updates Thread

Device OS 1.4.1 Default Release is out on the Web IDE for (Core/Photon/P1/Electron/Argon/Boron/Xenon/A SoM/B SoM/X SoM)

released on production servers October 16th, 2019

:pencil2: Please read all notes below :bowtie:

Note: This is a Release and may be used for production. Any known issues are likely slated for a future version, (check Github issues). It is available by default for all devices. To use, select the 1.4.1 version dropdown from the devices drawer.
Downgrading back to a previous release info is at the bottom of this post.

Note: If you have previously last used one of the prerelease versions of 1.4.1-rc.x on a device, please re-flash it with 1.4.1.

Note: OTA or YModem transfer on Electron (sequence required)

  1. First Update to 0.5.5 (if the current version is less than that)
  2. Then update to 0.6.4 (if the current version is less than that)
  3. Then update to 0.7.0 (if the current version is less than that)
  4. Then update to 1.2.1 (if the current version is less than that)
  5. Then update to 1.4.1

Note: DFU over USB on Electron/Photon/P1 (sequence not required)

  • You may update to 1.4.1 directly first, flash the system firmware (attached above) in order 1,2(,3) to the device using particle flash --usb <system-part.bin>. See the next note about the bootloader if you are offline!

Note: P1/Photon Bootloader
The Cloud will automatically update the bootloader on P1/Photon devices if your device is online. If your device does not connect to the cloud and it is offline, you should flash the bootloader to the device using particle flash --serial <bootloader.bin>. This should be done after upgrading system firmware. The Electron bootloader is applied automatically from it's own system parts.

Note: Argon/Boron/Xenon/Argon-SoM/Boron-SoM/Xenon-SoM Bootloader
If your device is offline, the bootloader must be manually updated using particle flash --serial <bootloader.bin>. This can be done before or after upgrading system firmware.

Note: Argon/Boron/Xenon/Argon-SoM/Boron-SoM/Xenon-SoM SoftDevice
If your device is offline, the SoftDevice must be manually updated using the CLI. See the instructions below.

Note: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 1.2.1, then 0.7.0, then 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 1.2.1, then 0.7.0 first, then 0.6.3(Photon/P1), 0.6.4(Electron), then to an older version such as 0.5.5.

1.4.1

Note: If your Gen 2 Photon/P1 or Gen 3 device does not have a Cloud connection, it is recommended to update system firmware via CLI with particle update. Electron bootloaders are still contained in system firmware and will update automatically as needed.
Note: If your Gen 3 device does not have a Cloud connection, this release will also require manually updating the SoftDevice via CLI. The instructions are available in the release notes and the SoftDevice binaries are available in the Github release.
This release contains v500 bootloaders.

SoftDevice update

This Device OS release will automatically update the SoftDevice for devices connected to the cloud.

Prerequisites

particle-cli version 1.48.0.

Upgrading using particle update

  1. Put the device into DFU mode
  2. Run particle update

DeviceOS, bootloader and SoftDevice should get correctly updated.

Upgrading OTA

  1. Upgrade to 1.4.1
  2. Manually flash 1.4.1 bootloader: particle flash <deviceId> boron-bootloader@1.4.1.bin
  3. Flash SoftDevice: particle flash <deviceId> boron-softdevice@1.4.1.bin

Upgrading using YModem

  1. Upgrade to 1.4.1
  2. Put the device into listening mode (blinking blue) by holding MODE button
  3. Manually flash 1.4.1 bootloader: particle flash --serial boron-bootloader@1.4.1.bin
  4. Flash SoftDevice: particle flash --serial boron-softdevice@1.4.1.bin

Upgrading using DFU (--usb only works for SoftDevice, not bootloader yet)

  1. Upgrade Device OS to 1.4.1
  2. Update the bootloader to 1.4.1 with the OTA or YModem process above
  3. Put the device into DFU mode (blinking yellow)
  4. Flash the SoftDevice: particle flash --usb boron-softdevice@1.4.1.bin

FEATURES

  • [Gen 2] Adds support for serial number, NCP type and mobile secret in STM32F2 OTP area #1927 #1931

ENHANCEMENTS

  • Implements a command to reset all network interfaces of a device remotely #1943
  • [Electron] Disables usage of AT+UDNSRN on 2G/3G Electrons in favor of a standalone socket-based DNS client #1940
  • [Electron, Boron] Increase the PMIC input current limit from 900mA to 1500mA and limit charging current to 896mA to allow 2G/3G devices to function when powered by sufficient power supply through VIN without the battery #1921
  • DTLS handshake timeout increased to 24 seconds to allow 3 retransmission attempts #1914

BUGFIXES

  • [Photon / P1] Limits maximum TLS version to TLS1.1 for WPA Enterprise authentication as TLS1.2 seems to be broken in WICED 3.7.0-7 #1945
  • [Boron] Fixes attachInterrupt(D7, ...) not working due to a constraint introduced previously for cellular devices (Electron) #1939 #1944
  • Send safe mode event when the session is resumed #1935
  • [LTE, u-blox] adds a mitigation to keep DNS Client responsive ch38990 #1938
  • [Electron] Fixes RSSI failing due to Power Saving mode active #1917 #1892
  • [Gen 3] Fixes memory leak when scanning for BLE devices #1929 #1926
  • [Gen 3] Fixes reporting of discovered BLE peer characteristic descriptors #1916
  • [Gen 3] Fixes BleCharacteristic::setValue() with default BLeTxRxType argument (BleTxRxType::AUTO) for characteristics with WRITE property #1915 #1913 #1924

INTERNAL

  • [test] i2c_mcp23017: implements HighPriorityInterruptInterferer for nRF52840-based platforms #1947
  • [LTE] Removes log noise by closing only untracked socket handles that are open ch37610 #1938
  • [ci] Buildpack builder updated to 0.0.8 to move buildpack builds off of Travis
  • [docs] Adds Artifact Versioning and Tagging (1.0.0) artifacts.md #1703

System Binaries (all devices)

https://github.com/particle-iot/device-os/releases/download/v1.4.1/particle_device-os@1.4.1.zip


Programming and Debugging

You can view specific programming and debugging notes for this version of firmware here.

QA Report Summary for Particle Device OS

You can view results of tests run this release here.