Device OS (Firmware) for Particle Devices
Released on September 30, 2022
Note: This is a Release and may be used for production.
This is a release on non-LTS feature development branch (5.x). To learn more about our new LTS release line, read our blog post.
You can view information about Device OS versions, upgrades and downgrades here.
Device OS v3.1.x and further releases bring support for 256KB application binaries to all Gen 3 platforms (at that time: Argon, Boron, B SoM, B5 SoM, Tracker). A few important aspects of this change:
prtcl
compile/clean commands for internal CI builds #2543
https://github.com/particle-iot/device-os/releases/download/v5.1.0/[email protected]
You can view specific programming and debugging notes for this version of firmware here.
Released on September 3rd, 2022
Note: This is a Release and may be used for production.
This is a release on non-LTS feature development branch (5.x). To learn more about our new LTS release line, read our blog post.
You can view information about Device OS versions, upgrades and downgrades here.
Device OS v3.1.x and further releases bring support for 256KB application binaries to all Gen 3 platforms (at that time: Argon, Boron, B SoM, B5 SoM, Tracker). A few important aspects of this change:
https://github.com/particle-iot/device-os/releases/download/v5.0.1/[email protected]
You can view specific programming and debugging notes for this version of firmware here.
Released on August 30th, 2022
Note: This is a Release and may be used for production.
This is the first public release in the Device OS 4.x LTS line, based on new Features/Enhancements/Bugfixes and Breaking Changes from the 3.x release line.
Note: If you are upgrading from 2.x, please review the changelogs for 3.0.0/3.1.0/3.2.0/3.3.0 below.
Note: Critical Bugfixes from 3.x will already be backported in the latest 2.3.0, and some other Bugfixes may only apply to previous 3.x releases. Internal changes are omitted in the 3.x changelog list below, however the full changelog may be found at the Device OS repo.
To learn more about LTS release line, read our blog post.
You can view information about Device OS versions, upgrades and downgrades here.
Device OS v3.1.x and further releases bring support for 256KB application binaries to all Gen 3 platforms (at that time: Argon, Boron, B SoM, B5 SoM, Tracker). A few important aspects of this change:
Deprecate/remove the PRODUCT_ID macro #2446. Users may now use the same binary for multiple Products that share the same device Platform and Functionality. Including this macro will cause a build error and show the following message:
The PRODUCT_ID macro must be removed from your firmware source code. The same compiled firmware binary may be used in multiple products that share the same platform and functionality.
System.hardwareInfo()
API #2526 #2529
interrupts()
API: should not clear pending interrupts #2504
delay(1)
loops #2519 #2520 #2524
.bundleignore
between 5.x and 4.x codebases #2496
test-build-system
#2510
wiring/no_fixture
TIME_17
#2514
acquireSerialXBuffer()
API support for UART #2375
-Wextra
when building Device OS to enable additional diagnostics provided by GCC. Fix issues uncovered #2340
scan_phys
in default scan parameters, preventing scanning from working unless BLE.setScanPhy()
is manually set #2338 #2345
ESPBOOT
pin #2342
CFUN=4
#2328
Network.on()
was called #2309
Network.on()
was called #2309
STOP
or ULTRA_LOW_POWER
sleep modes #2308
Particle.unsubscribe()
not preserving system subscriptions #2293
rssi
and qual
from Cellular.RSSI()
#2212
SystemPowerFeature::DISABLE_CHARGING
configuration option to enable or disable charging #2257
Network.isOn()
and Network.isOff()
APIs to query the network interface power state #2205
SPI.transfer()
support for constant buffers residing in flash #2196
BleService
#2203
BleAddress
, BleUuid
and IPAddress
#2216
PARTICLE_
prefix for LED defines in order not to pollute global namespace #2247
PIN_INVALID
when initializing SPI peripheral to avoid overriding the pin mode of the default CS pin on reinitialization #2275
AT+COPS
timeout to 5 minutes #2281
false
in BlePeerDevice::getCharacteristicByDescription()
if expected characteristic was not found #2266
ChannelStream::waitEvent()
timeout calculation #2267
Serial1.end()
#2256
BLE.scan()
deadlocking #2220
https://github.com/particle-iot/device-os/releases/download/v4.0.0/[email protected]
You can view specific programming and debugging notes for this version of firmware here.
Released on August 19th, 2022
Note: This is a Release and may be used for production.
This is a release on non-LTS feature development branch (5.x). To learn more about our new LTS release line, read our blog post.
You can view information about Device OS versions, upgrades and downgrades here.
Device OS v3.1.x and further releases bring support for 256KB application binaries to all Gen 3 platforms (at that time: Argon, Boron, B SoM, B5 SoM, Tracker). A few important aspects of this change:
https://github.com/particle-iot/device-os/releases/download/v5.0.0/[email protected]
You can view specific programming and debugging notes for this version of firmware here.
Released on July 28th, 2022
Note: This is a Beta Pre-Release for testing only. API’s may change before a Release Candidate is created.
This is the first public release in the Device OS 4.x LTS line, based on new Features/Enhancements/Bugfixes and Breaking Changes from the 3.x release line.
Note: If you are upgrading from 2.x, please review the changelogs for 3.0.0/3.1.0/3.2.0/3.3.0 below.
Note: Critical Bugfixes from 3.x will already be backported in the latest 2.3.0, and some other Bugfixes may only apply to previous 3.x releases. Internal changes are omitted in the 3.x changelog list below, however the full changelog may be found at the Device OS repo.
To learn more about LTS release line, read our blog post.
You can view information about Device OS versions, upgrades and downgrades here.
Device OS v3.1.x and further releases bring support for 256KB application binaries to all Gen 3 platforms (at that time: Argon, Boron, B SoM, B5 SoM, Tracker). A few important aspects of this change:
Deprecate/remove the PRODUCT_ID macro #2446. Users may now use the same binary for multiple Products that share the same device Platform and Functionality. Including this macro will cause a build error and show the following message:
The PRODUCT_ID macro must be removed from your firmware source code. The same compiled firmware binary may be used in multiple products that share the same platform and functionality.
acquireSerialXBuffer()
API support for UART #2375
-Wextra
when building Device OS to enable additional diagnostics provided by GCC. Fix issues uncovered #2340
scan_phys
in default scan parameters, preventing scanning from working unless BLE.setScanPhy()
is manually set #2338 #2345
ESPBOOT
pin #2342
CFUN=4
#2328
Network.on()
was called #2309
Network.on()
was called #2309
STOP
or ULTRA_LOW_POWER
sleep modes #2308
Particle.unsubscribe()
not preserving system subscriptions #2293
rssi
and qual
from Cellular.RSSI()
#2212
SystemPowerFeature::DISABLE_CHARGING
configuration option to enable or disable charging #2257
Network.isOn()
and Network.isOff()
APIs to query the network interface power state #2205
SPI.transfer()
support for constant buffers residing in flash #2196
BleService
#2203
BleAddress
, BleUuid
and IPAddress
#2216
PARTICLE_
prefix for LED defines in order not to pollute global namespace #2247
PIN_INVALID
when initializing SPI peripheral to avoid overriding the pin mode of the default CS pin on reinitialization #2275
AT+COPS
timeout to 5 minutes #2281
false
in BlePeerDevice::getCharacteristicByDescription()
if expected characteristic was not found #2266
ChannelStream::waitEvent()
timeout calculation #2267
Serial1.end()
#2256
BLE.scan()
deadlocking #2220
https://github.com/particle-iot/device-os/releases/download/v4.0.0-beta.1/[email protected]
You can view specific programming and debugging notes for this version of firmware here.
:warning: Please note this is an internal release, do not use on production devices!
:warning: Please note this is an internal release, do not use on production devices!
:warning: Please note this is an internal release, do not use on production devices!
:warning: Please note this is an internal release, do not use on production devices!
Released on April 4th, 2022
Note: This is a Release and may be used for production.
This is a release on non-LTS feature development branch (3.x). To learn more about our new LTS release line, read our blog post.
You can view information about Device OS versions, upgrades and downgrades here.
https://github.com/particle-iot/device-os/releases/download/v3.3.0/[email protected]
You can view specific programming and debugging notes for this version of firmware here.