Particle Device OS Updates Thread


#48

Firmware 0.7.0-rc.2 Pre-release is out on the Web IDE for Core/Photon/P1/Electron

released on production servers July 14th, 2017

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

Note: You must update your Electron to v0.5.3 first before attempting to use OTA or YModem transfer to update to >= v0.6.0. If you use DFU over USB, you can update to >= v0.6.0 directly, but make sure you have installed >= v1.21.0 of the CLI first.

Note about Downgrading [Photon/P1] OTA: First downgrade system-part2 back to 0.6.2. Any attempts to write to the DCT while the device is in DFU mode will fail now. At this point, attempting to downgrade system-part1 will fail silently, since the new bootloader (v100) cannot access DCT and read module update info, thus, in order to downgrade from 0.7.0-rc.2 to 0.6.2, photon/p1 firmware modules should be flashed in the following order with 0.6.2 system binaries: system-part2 -> bootloader (v0.6.2) -> system-part1.

Note about Downgrading [Electron] OTA: Downgrade in normal order with 0.6.2 system binaries: system-part3 -> system-part2 -> system-part1 -> bootloader (v11).

0.6.2 bootloaders have been added to this release below for convenience.

070rc2

0.7.0-rc.2 Changelog

ENHANCEMENTS

  • [PR #1357] Expands the device code from 4 digits to 6 digits for Photon/P1/Electron platforms

BUGFIX

  • [PR #1346] [Fixes #1344] [Photon/P1] When using SYSTEM_THREAD(ENABLED) the TCPServer and WPA Enterprise connections were broken.
  • [PR #1354] [Fixes #1062] A call to WiFi.scan() when Wi-Fi module is off or not ready was resulting in a hard fault.
  • [PR #1357] [Fixes #1348] SoftAP SSID was not respecting the string’s null terminator, 2 char SSID would appear as 4.
  • [PR #1355] When using WPA Enterprise access point and constantly reconnecting to it, heap was becoming fragmented which resulted in inability to connect to the access point anymore. Also reduced overall heap usage.

INTERNAL

  • [PR #1342] Removed the firmware-docs subtree from the firmware repo. Docs updates are made directly to docs repo again.
  • [PR #1352] Added test for RGB.onChange() handler leak
  • [PR #1358] Updates minimal ARM gcc version required to 5.3.1
  • [PR #1359] Fixes build with PLATFORM=gcc on OSX with clang’s gcc wrapper

System Binaries (all devices) & Device Upgrader (Photon & Electron)

https://github.com/spark/firmware/releases/tag/v0.7.0-rc.2


Programming and Debugging

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


Cannot flash new code
Cannot flash new code
Cannot flash new code
Particle Tools Changelog
6 Digit Particle Photon WiFi Code (P1)
#49

Firmware 0.7.0-rc.3 Pre-release is out on the Web IDE for Core/Photon/P1/Electron

released on production servers August 15th, 2017

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

Note: You must update your Electron to v0.5.3 first before attempting to use OTA or YModem transfer to update to >= v0.6.0. If you use DFU over USB, you can update to >= v0.6.0 directly, but make sure you have installed >= v1.21.0 of the CLI first.

Note about Downgrading [Photon/P1] OTA or YModem transfer: First downgrade system-part2 back to 0.6.2. Any attempts to write to the DCT while the device is in DFU mode will fail now. At this point, attempting to downgrade system-part1 will fail silently, since the new bootloader (v100) cannot access DCT and read module update info, thus, in order to downgrade from 0.7.0-rc.3 to 0.6.2, photon/p1 firmware modules should be flashed in the following order with 0.6.2 system binaries: system-part2 -> bootloader (v0.6.2) -> system-part1.

Note about Downgrading [Electron] OTA or YModem transfer: Downgrade in normal order with 0.6.2 system binaries: system-part3 -> system-part2 -> system-part1 -> bootloader (v11).

:pencil2:0.6.2 bootloader binaries have been added to this release below (on github) convenience.

:pencil2:You can only flash the bootloader OTA or YModem over USB. DFU mode over USB will fail because it uses the bootloader itself for that mode of operation.

070rc3

0.7.0-rc.3 Changelog

DEPRECATED API

[PR #1365] Beginning with 0.8.0 release, Particle.publish() and Particle.subscribe() methods will require event scope to be specified explicitly. Please update your apps now to include the event scope to avoid compilation errors in >=0.8.0.

BUGFIX

[PR #1362] [Fixes #1360] Fixed SoftAP HTTP usage hard faulting in 0.7.0-rc.1 and 0.7.0-rc.2


System Binaries (all devices) & Device Upgrader (Photon & Electron)

https://github.com/spark/firmware/releases/tag/v0.7.0-rc.3


Programming and Debugging

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


Flash system FW from 0.7.0-rc.3 to 0.6.2 problem / Safemode
[SoftAP] HTTP-based public-key command times out
Particle Tools Changelog
Particle_using_deprecated_api
#50

##Firmware 0.5.4 release is out on the Web IDE for Core/Photon/P1/Electron
released on production servers September 28th, 2017

Note: This release is primarily for MFG. It is not necessary to upgrade to this version from 0.5.3 unless you would like the Firmware Reset feature, which is also available in >=0.6.0. Most devices are on >=0.6.2 with all platforms, so this is mostly a silent release. If you would like see the release, it is here: https://github.com/spark/firmware/releases/tag/v0.5.4


0.5.4 release vs 0.6.2
#51

Firmware 0.5.5 release is out on the Web IDE for Photon/P1/Electron. (None of the changes affect the Core.)

released on production servers November 7th, 2017

Note: This is a Release and may be used for production. It is available for all devices. To use, select the 0.5.5 version dropdown from the devices drawer.

ENHANCEMENTS

  • Downgrade bootloader when downgrading from 0.7.0 or newer. #1417

BUGFIXES


KRACK Patch ETA
Particle Tools Changelog
#52

Firmware 0.6.3 release is out on the Web IDE for Photon/P1/Electron. (None of the changes affect the Core.)

released on production servers November 7th, 2017

Note: This is a Release and may be used for production. It is available for all devices. To use, select the 0.6.3 version dropdown from the devices drawer.

image

ENHANCEMENTS

  • Downgrade bootloader when downgrading from 0.7.0 or newer. #1416

BUGFIXES


KRACK Patch ETA
Particle Tools Changelog
#53

Firmware 0.6.4 release is out on the Web IDE for Electron. (None of the changes affect the Core/P1 or Photon.)

released on production servers December 2nd, 2017

Note: This is a Release and may be used for production. It is available for all devices. To use, select the 0.6.4 version dropdown from the devices drawer.

image

BUGFIXES

  • Downgrade bootloader functionality in 0.6.3 would enter an infinite loop after flashing system part 1 0.7.0-rc.X using OTA/serial. particle flash --usb/DFU was not affected.

Remote Firmware Upgrade for Electron
#54

Firmware 0.7.0-rc.6 Pre-release is out on the Web IDE for Core/Photon/P1/Electron

image

released on production servers December 12th, 2017

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

OTA or YModem transfer on Electron

  • update to 0.5.3 (if the current version is less than that)
  • then update to 0.6.4 if the current version is less than that)
  • then update to 0.7.0-rc.6.

Note that the upgrade sequences are only needed when updating with Over-the-Air updates or using YModem or particle flash --serial.

If you use DFU over USB (particle flash --usb), you can update to 0.7.0-rc.6 directly.

Note about Downgrading [Electron/Photon/P1] OTA or YModem transfer: You should downgrade to 0.6.4 to ensure that the bootloader downgrades automatically. When downgrading to other versions, you will have to manually downgrade the bootloader as well (see release notes in previous 0.7.0-rc.3 release)

0.7.0-rc.6 Changelog

BUGFIX

  • [Electron] Add dependency in system-part-1 on 0.6.4 system-part-3 to prevent upgrades from 0.6.3 or earlier to avoid incompatibilities with these releases.
  • The device ID is output in lowercase in DFU mode. #1432
  • increase the DTLS buffer from 768 to 800 bytes, so that the system describe message is sent.
  • remove rigid dependency check in bootloader that was causing DCT functions to not load in 0.8.0-rc.1 #1436

System Binaries (all devices)


Programming and Debugging

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


#55

Firmware 0.8.0-rc.1 Pre-release is out on the Web IDE for Core/Photon/P1/Electron

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

image

Upgrading via particle flash --usb or Web IDE (OTA)

No special steps are necessary to upgrade to this release.

Upgrading via particle flash --serial or particle flash <device-id>

When you use YModem or OTA updates to update the device by hand, it’s necessary to follow an upgrade sequence so that the upgrade is successful. If the sequence is not followed, the upgrade will not happen and the version of system firmware will remain unchanged.

Electron

  • first, update to 0.5.3 (if the current version is less than that)
  • then update to 0.6.4 if the current version is less than that)
  • then update to this release, 0.8.0-rc.1.

Photon/P1

  • first, update to 0.7.0-rc.6 first
  • then update to this release, 0.8.0-rc.1

Note about Downgrading [Electron/Photon/P1] OTA or YModem transfer: You should downgrade to 0.6.4 to ensure that the bootloader downgrades automatically. When downgrading to other versions, you will have to manually downgrade the bootloader as well (see release notes in previous 0.7.0-rc.3 release)

0.8.0-rc.1 Changelog

FEATURES

  • Low-latency interrupt handlers [#1394] (https://github.com/spark/firmware/pull/1394)
  • [Electron] Reworked power management #1412
  • Battery State diagnostics #1398
  • Battery charge diagnostics #1395
  • RAM usage diagnostic sources data #1411
  • Network Signal Quality/Strength rework and diagnostics #1423
  • System uptime diagnoatics #1393
  • Diagnostics for unacked messages and rate limited events #1391
  • Network and Cloud diagnostics #1424
  • Diagnostics service #1390

ENHANCEMENTS

  • [Photon/P1] Wi-FI firmware compression #1421
  • [Photon/P1] Moves Wi-Fi tester into application module #1378

BUGFIXES

  • Cloud random seed not working #1312
  • [Electron] Error handling in the data usage API #1435

System Binaries (all devices)

Available on the GitHub release page



Photon - Firmware After 0.6.3?
Particle Tools Changelog
TlsTcpClient library 0.2.6 update
#56

Firmware 0.7.0-rc.7 Pre-release is out on the Web IDE for Core/Photon/P1/Electron

image

released on production servers February 7th, 2018

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

OTA or YModem transfer on Electron

  • update to 0.5.3 (if the current version is less than that)
  • then update to 0.6.4 if the current version is less than that)
  • then update to 0.7.0-rc.7.

Note that the upgrade sequences are only needed when updating with Over-the-Air updates or using YModem particle flash --serial.

If you use DFU over USB (particle flash --usb), you can update to 0.7.0-rc.7 directly.

P1/Photon Bootloader

The cloud will automatically update the bootloader on P1/Photon devices. If your device does not connect to the cloud, you should flash the bootloader to the device using particle flash --serial. This should be done after upgrading system firmware.

Note about Downgrading [Electron/Photon/P1] OTA or YModem transfer: You should downgrade to 0.6.4 to ensure that the bootloader downgrades automatically. When downgrading to other versions, you will have to manually downgrade the bootloader as well (see release notes in previous 0.7.0-rc.3 release)

0.7.0-rc.7 Changelog

BUGFIX

  • [Photon] Regression with SoftAP and URL-encoded form query #1432
  • Particle.connect() hard blocking since 0.6.1-rc.1 #1399
  • [Electron] Cellular resolve does not return 0 / false when it receives bad DNS resolution related to bad cell service #1304
  • [Core] Use the device ID as the USB serial number #1367
  • [Electron] Fix heap bounds for system part 1 #1478
  • [Electron] connect_cancel() fix #1464
  • Fixed shadowing of write(const unint_8_t*, sizte_t) in USBKeyboard #1372

Particle Tools Changelog
Photon stuck in safe mode while upgrading to 0.7.0
#57

Firmware 0.8.0-rc.2 Pre-release is out on the Web IDE for Core/Photon/P1/Electron

image

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

Upgrading via particle flash --usb or Web IDE (OTA)

No special steps are necessary to upgrade to this release. When using the command-line, simply run the update commands in the correct order, updating system-part1, then system-part2 etc.

From the WebIDE, select the version of system firmware in the devices drawer for your selected device and flash an app to the device. The system firmware will be updated automatically.

Note: P1/Photon: the bootloader must be upgraded using either Serial or OTA update.

Upgrading via particle flash --serial or particle flash <device-id>

When you use YModem or OTA updates to update the device by hand, it’s necessary to follow an upgrade sequence so that the upgrade is successful. If the sequence is not followed, the upgrade will not happen and the version of system firmware will remain unchanged.

Electron

  • first, update to 0.5.3 (if the current version is less than that)
  • then update to 0.6.4 if the current version is less than that)
  • then update to this release, 0.8.0-rc.1.

Photon/P1

  • first, update to 0.7.0-rc.6 first
  • then update to this release, 0.8.0-rc.1

Note about Downgrading [Electron/Photon/P1] OTA or YModem transfer: You should downgrade to 0.6.4 to ensure that the bootloader downgrades automatically. When downgrading to other versions, you will have to manually downgrade the bootloader as well (see release notes in previous 0.7.0-rc.3 release)

0.8.0-rc.2 Changelog

FEATURES

  • USB request handlers #1444
  • Out of heap system event and heap fragmentation detection #1452
  • Network and cloud diagnostics #1424
  • [Photon/P1] TCPClient: non-blocking, blocking, blocking with timeout writes support #1485
  • [Electron] adds UPSV handling to cellular_hal #1480

ENHANCEMENTS

  • Serialize access to the CRC peripheral (STM32F2xx) #1465
  • System.sleep() wake up reason #1410
  • System.sleep(): support for multiple wake up pins #1405
  • Disable WKP pin waking device up from SLEEP_MODE_DEEP #1409
  • [Photon/P1] Increase maximum supported number of simultaneously active TCP connections #1350
  • [Photon/P1] WiFi.dnsServerIP()/WiFi.dhcpServerIP() support #1386
  • Generalize FuelGauge to also use alternative I2C interfaces. #1443
  • Firmware update and access to internal flash via USB requests #1456
  • Added docs on local build setup #1374
  • Use ‘using std::**’ instead of define * std::* #1258
  • Only remake $(TARGET_BASE).elf el al. if necessary #1223

BUGFIXES

  • [Electron] Fix heap bounds build for system part1 #1478
  • [Electron] Guard cellular_command() with a global lock #1415
  • [Electron] Fix caching of the description CRCs in the backup RAM #1413
  • [Electron] connect_cancel() fix #1464
  • [Electron] DCD fixes #1454
  • [Electron] moves some newlib functions into part1 #1471
  • [Core] Fixes I2C slave mode #1309
  • [Virtual] Fixes virtual device running with UDP protocol #1462
  • Fix usage of an incorrect prerequisite name in program-* targets #1463
  • Fixed shadowing of write(const unint_8_t*, sizte_t) in USBKeyboard #1372

INTERNAL

  • Fixes some 0.8.0-rc.2 tests #1476
  • fixes the unit test build #1474
  • IS_CLAIMED request fixes #1472
  • Documents low level USB request completion notifications #1475
  • [Electron] Flash size optimizations #1469
  • Minor refactoring of the USB protocol implementation #1473

System and bootloader binaries


Help choosing correct SLEEP mode w/ Asset Tracker v2
Was 0.7.0 ever released?
How to tell deep sleep wake up reason between rising signal on wake up pin and RTC clock time out?
#58

Firmware 0.7.0 release is out on the Web IDE for Core/Photon/P1/Electron

released on production servers March 26th, 2018

Note: This is a Release and may be used for production. Any known issues are likely slated for 0.8.0-rc.3 (check Github issues). It is available by default for all devices. To use, select the 0.7.0 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 0.7.0 on a Core/Photon/P1 device, please re-flash it with 0.7.0. You must upgrade (locally preferred) the Electron system firmware to 0.7.0 first before you can OTA new user apps.

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

  1. First Update to 0.5.3 (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.

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

  • You may update to 0.7.0 directly, but make sure you have installed v1.30.0 of the CLI (check with particle --version) then run particle update.

Note: P1/Photon Bootloader
The cloud will automatically update the bootloader on P1/Photon devices. If your device does not connect to the cloud, you should flash the bootloader to the device using particle flash --serial. This should be done after upgrading system firmware.

Note: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 0.6.3(Photon/P1), 0.6.4(Electron) first, then to an older version such as 0.5.3. You will have to manually downgrade the bootloader as well (see release notes in previous 0.7.0-rc.3 release)

070

0.7.0 (see additional changelog 0.7.0-rc.1 ~ 0.7.0-rc.7)

BUGFIX

  • [Photon/Electron] WKP pin needs to be disabled as a wakeup source on boot to allow its normal operation #1496

0.7.0-rc.7 Changelog
0.7.0-rc.6 Changelog
0.7.0-rc.5 Changelog
0.7.0-rc.4 Changelog
0.7.0-rc.3 Changelog
0.7.0-rc.2 Changelog
0.7.0-rc.1 Changelog


System Binaries (all devices) & Device Upgrader (Photon & Electron)

https://github.com/particle-iot/firmware/releases/tag/v0.7.0


Programming and Debugging

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


Update to 0.7.0 goes wrong
0.7.0 Release Changelog, Please?
Photon stuck in safe mode while upgrading to 0.7.0
Particle Tools Changelog
Upgraded to 0.7.0, WiFi does not come on in SEMI_AUTOMATIC mode
#59

Hello Friends!

Just a quick update that firmware repo branches release/stable and master have been updated to point to release/v0.7.0

You can update your local versions with either of these commands:

git checkout release/stable && git pull
git checkout master && git pull

If you have any trouble with this, please reference this previous post Particle Firmware Updates Thread


#60

Firmware 0.8.0-rc.3 Pre-release is out on the Web IDE for Core/Photon/P1/Electron

released on production servers April 10th, 2018

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

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 0.8.0-rc.3

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

  • You may update to 0.8.0-rc.3 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: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 0.7.0 and then 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 0.7.0 first, then 0.6.3(Photon/P1), 0.6.4(Electron), then to an older version such as 0.5.5.

080rc3

0.8.0-rc.3 Changelog

ENHANCEMENTS

  • [Photon/P1] A number of networking-related fixes v2 #1500
  • [Photon/P1] Enables support for SHA384/SHA512 certificates for WPA Enterprise #1501

BUGFIXES

  • [Photon/P1] A number of networking-related fixes #1492
  • [Photon/P1] A number of networking-related fixes v2 #1500
  • [Photon/Electron] WKP pin needs to be disabled as a wakeup source on boot to allow its normal operation #1496
  • [Photon/P1/Electron] Recursive logging freezes the application thread while the LogHandler is trying to acquire a lock on the resource #1517

System Binaries (all devices)

https://github.com/particle-iot/firmware/releases/tag/v0.8.0-rc.3


Programming and Debugging

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


PaperTrail for electron
New library - Papertrail
Help!? UDP send in LogHandler hangs electron w/ 0.6.1
Particle Tools Changelog
#61

Firmware 0.8.0-rc.4 Pre-release is out on the Web IDE for Core/Photon/P1/Electron

released on production servers May 4th, 2018

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

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 0.8.0-rc.4

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

  • You may update to 0.8.0-rc.4 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: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 0.7.0 and then 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 0.7.0 first, then 0.6.3(Photon/P1), 0.6.4(Electron), then to an older version such as 0.5.5.

080rc4

0.8.0-rc.4

ENHANCEMENTS

  • [Electron/Photon/P1] Increase Device OS API argument lengths. More data in Functions, Variables, Publish, Subscribe… oh my! #1537

BUGFIXES

  • [Electron] Particle.keepAlive() API was broken since v0.6.2-rc.2 firmware on Electron where the System would override an early set User ping interval. This required a workaround of updating the keepAlive after the System made a connection to the Cloud. See issue #1482 for workaround. #1536
  • [Electron] Fixes missing URCs for received data during TX or RX socket operations. This caused the modem not to be able to receive further data properly until it re-connected to the Cloud which it would do automatically but usually after a short or longer period of time. #1530

System Binaries (all devices)

https://github.com/particle-iot/firmware/releases/tag/v0.8.0-rc.4


Programming and Debugging

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


Particle Tools Changelog
Connect and add new wifi via Particle.function
How to downgrade firmware
#62

Firmware 0.8.0-rc.8 Pre-release for Core/Photon/P1/Electron

released on production servers June 26th, 2018

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is primarily a MFG. release for SARA-R410 LTE modules. The changes do touch code used on other Electron based platforms, but no other features or fixes are relevant for U260, U270, U201, or G350 modems. This code has been tested on-device for all mentioned modem types with passing results. Please let us know if you find any issues. That said, this is a release candidate for 0.8.0 default so please do test on your systems.

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

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 0.8.0-rc.8

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

  • You may update to 0.8.0-rc.8 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: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 0.7.0 and then 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 0.7.0 first, then 0.6.3(Photon/P1), 0.6.4(Electron), then to an older version such as 0.5.5.

0.8.0-rc.8

Note: This is primarily a MFG. release for SARA-R410 LTE modules. The changes do touch code used on other Electron based platforms, but no other features or fixes are relevant for U260, U270, U201, or G350 modems. This code has been tested on-device for all mentioned modem types with passing results. Please let us know if you find any issues.

BUGFIXES

  • [Electron] Disables 30 second ping for Kore SIMs on SARA_R410 (default 23 minute ping re-applied)

System Binaries (all devices)

https://github.com/particle-iot/firmware/releases/tag/v0.8.0-rc.8


Programming and Debugging

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


How to read firmware improvements from Electron 6.4 to 7.0
How to read firmware improvements from Electron 6.4 to 7.0
Particle Tools Changelog
#63

Firmware 0.8.0-rc.9 Pre-release for Core/Photon/P1/Electron

released on July 30th, 2018

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a release candidate for 0.8.0 default so please do test on your systems.

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

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 0.8.0-rc.9

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

  • You may update to 0.8.0-rc.9 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: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 0.7.0 and then 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 0.7.0 first, then 0.6.3(Photon/P1), 0.6.4(Electron), then to an older version such as 0.5.5.

0.8.0-rc.9

BUGFIXES

  • [Electron/LTE] Fast OTA Fixes #1558

System Binaries (all devices)

https://github.com/particle-iot/firmware/releases/tag/v0.8.0-rc.9


Programming and Debugging

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


Particle Tools Changelog
#64

Firmware 0.8.0-rc.10 Pre-release for Core/Photon/P1/Electron

released on August 17th, 2018

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a release candidate for 0.8.0 default so please do test on your systems.

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

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 0.8.0-rc.10

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

  • You may update to 0.8.0-rc.10 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: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 0.7.0 and then 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 0.7.0 first, then 0.6.3(Photon/P1), 0.6.4(Electron), then to an older version such as 0.5.5.

0.8.0-rc.10

BUGFIXES

  • [Electron/LTE] eDRX & Power Saving mode disabled by default #1567

System Binaries (all devices)

https://github.com/particle-iot/firmware/releases/tag/v0.8.0-rc.10


Programming and Debugging

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


Particle Tools Changelog
#65

Firmware 0.8.0-rc.11 Pre-release for Core/Photon/P1/Electron

released on September 29th, 2018

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a release candidate for 0.8.0 default so please do test on your systems.

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

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 0.8.0-rc.10

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

  • You may update to 0.8.0-rc.11 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: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 0.7.0 and then 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 0.7.0 first, then 0.6.3(Photon/P1), 0.6.4(Electron), then to an older version such as 0.5.5.

0.8.0-rc.11

ENHANCEMENTS

  • [Electron/Photon/P1] Do not check and lock bootloader sector write protection on every boot [ch17416] #1578

BUGFIXES

  • [Electron/LTE] adds 1 retry for UDP/TCP socket send in case of error [ch18789] #1576
  • [Electron/Photon/P1] Fixes recursive semaphore lock timeout [ch21928] #1577

System Binaries (all devices)

https://github.com/particle-iot/firmware/releases/tag/v0.8.0-rc.11


Programming and Debugging

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


Particle Tools Changelog
Putting back in box (update: took back out of box...)
#66

Firmware 0.8.0-rc.12 Pre-release for Core/Photon/P1/Electron

released on December 20th, 2018 :santa: :mrs_claus:

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a release candidate for 0.8.0 default so please do test on your systems.

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

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 0.8.0-rc.12

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

  • You may update to 0.8.0-rc.12 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: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 0.7.0 and then 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 0.7.0 first, then 0.6.3(Photon/P1), 0.6.4(Electron), then to an older version such as 0.5.5.

0.8.0-rc.12

ENHANCEMENTS

  • [Electron/Photon/P1] Cache persistent feature flags (#1640)
  • [Photon/P1] Memory usage optimizations (#1635)

BUGFIXES

  • [Electron/Photon/P1] Fixes SOS in 0.8.0-rc.11 and also ensures button and OOM events are handled synchronously. Previously in multi-threaded applications the button handling may have been delayed to run within the application thread. Now it is always handled immediately and should be noted that it is called from an ISR, so it is not advised to dynamically allocate memory in button event handlers. (#1600) (#1650)
  • [Electron/Photon/P1] Do not disable interrupts on every system loop iteration (#1622)
  • [Electron/Photon/P1] Wait for Wiring Thread to start (#1528)
  • [Electron/LTE] Power Manager Watchdog Timer Fix (#1581)
  • [Electron/LTE] AT+CNUM command causing registration failure on LTE devices (#1627)
  • [Electron] PMIC::getInputCurrentLimit() cannot report values higher than 900mA (#1581)
  • [Electron] Do not set the sticky skip hello after handshake (#1624)
  • [Photon/P1] Invalidate sockets when turning WiFi off (#1639)

System Binaries (all devices)

https://github.com/particle-iot/firmware/releases/tag/v0.8.0-rc.12


Programming and Debugging

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


Particle Tools Changelog
#67

Firmware 0.8.0-rc.14 Pre-release for Core/Photon/P1/Electron

released on January 4th, 2019

:pencil: Please read all notes in the Notes Festival :tada: below

Note: This is a release candidate for 0.8.0 default so please do test on your systems.

Note: This is a pre-release and is not intended for production yet. We’ve tested this pre-release to the best of our ability and we want to know what you think now! Please understand that some care and attention is necessary when testing this pre-release, and be sure to upgrade to the final release when it’s available. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.

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 0.8.0-rc.14

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

  • You may update to 0.8.0-rc.14 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: Downgrading [Electron/Photon/P1] OTA or YModem transfer:
If you need to downgrade, you must downgrade to 0.7.0 and then 0.6.3(Photon/P1), 0.6.4(Electron) to ensure that the bootloader downgrades automatically. When downgrading to older versions, downgrade to 0.7.0 first, then 0.6.3(Photon/P1), 0.6.4(Electron), then to an older version such as 0.5.5.

0.8.0-rc.14

BUGFIXES

  • [Electron/LTE] Fixes unique stale socket issue with LTE devices (#1666)

System Binaries (all devices)

https://github.com/particle-iot/firmware/releases/tag/v0.8.0-rc.14


Programming and Debugging

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


Particle Tools Changelog