GitPedia
particle-iot

particle-iot/device-os

Device OS (Firmware) for Particle Devices

30 Releases
Latest: 1mo ago
v6.4.1 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v6.4.1Latest
avtolstoyavtolstoyยท1mo agoยทMay 4, 2026
GitHub

๐Ÿ“ฆ Device OS 6.4.1 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on May 4th, 2026_
  • ---

โœจ FEATURES

  • USB (Serial) tethering support [#2898](https://github.com/particle-iot/device-os/pull/2898) [#2912](https://github.com/particle-iot/device-os/pull/2912)
  • [Gen 4] Serial1 tethering support [#2910](https://github.com/particle-iot/device-os/pull/2910)
  • [Cellular] API for sending APDUs [#2915](https://github.com/particle-iot/device-os/pull/2915)

๐Ÿ“ฆ ENHANCEMENTS

  • [Cellular] BG95S5 cellular env vars support [#2908](https://github.com/particle-iot/device-os/pull/2908)
  • Support detecting/configuring M-HAT in Tinker [#2914](https://github.com/particle-iot/device-os/pull/2914)

๐Ÿ› BUGFIXES

  • [Gen 4] Allows longer duration sleep with AM1805 (external RTC) [#2907](https://github.com/particle-iot/device-os/pull/2907)
  • [Tracker] Expose deprecated `hal_exrtc_` functions [#2907](https://github.com/particle-iot/device-os/pull/2907)
  • [Gen 4] Add locking around logical eFuse reads [#2909](https://github.com/particle-iot/device-os/pull/2909)
  • [Gen 4] [scripts] fix rtl872x.tcl flash script to be more reliable [#2911](https://github.com/particle-iot/device-os/pull/2911)
  • Filesystem initialization in bootloader should create `/sys` folder [#2917](https://github.com/particle-iot/device-os/pull/2917)

๐Ÿ“ฆ INTERNAL

  • `manufacturing/empty_external_flash` test [#2917](https://github.com/particle-iot/device-os/pull/2917)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.4.1/particle_device-os@6.4.1.zip
v6.4.0 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v6.4.0
scott-brustscott-brustยท3mo agoยทMarch 19, 2026
GitHub

๐Ÿ“ฆ Device OS 6.4.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on March 19, 2026_
  • ---

โœจ FEATURES

  • Environment [#2892](https://github.com/particle-iot/device-os/pull/2892) [#2904](https://github.com/particle-iot/device-os/pull/2904) [#2903](https://github.com/particle-iot/device-os/pull/2903) [#2892](https://github.com/particle-iot/device-os/pull/2892) [#2903](https://github.com/particle-iot/device-os/pull/2903) [#2902](https://github.com/particle-iot/device-os/pull/2902)
  • `PRE_STARTUP()` API for earlier application initialization [#2888](https://github.com/particle-iot/device-os/pull/2888)
  • [system] `PARTICLE_BLE_ENABLE`, `PARTICLE_WIFI_ENABLE`, and `PARTICLE_ETHERNET_ENABLE` environment variables [#2897](https://github.com/particle-iot/device-os/pull/2897)
  • [cellular] support `PARTICLE_CELLULAR_PREFERRED_BANDS`, `PARTICLE_CELLULAR_FORBIDDEN_BANDS`, and `PARTICLE_CELLULAR_PREFERRED_PLMN` environment variables [#2896](https://github.com/particle-iot/device-os/pull/2896)
  • [am18x5] built-in AM18x5 driver in Device OS [#2906](https://github.com/particle-iot/device-os/pull/2906) [1bb9b26](https://github.com/particle-iot/device-os/commit/1bb9b26e6)
  • `POWER_OFF` sleep mode support through AM18x5 [#2906](https://github.com/particle-iot/device-os/pull/2906)

๐Ÿ› BUGFIXES

  • Fix DNS server change lockup and improve DNS failure handling [#2894](https://github.com/particle-iot/device-os/pull/2894)
  • [wiring] system: fix 32-bit global `millis()` being shadowed by class-member 64-bit `millis()` [9d30096](https://github.com/particle-iot/device-os/commit/9d3009660)
  • [system] do not handle network activity when going into sleep mode if network manager is not initialized [97ecb3d](https://github.com/particle-iot/device-os/commit/97ecb3dab)
  • [Gen 4] preserve RTC time across sleep and software resets [#2906](https://github.com/particle-iot/device-os/pull/2906) [708feb6](https://github.com/particle-iot/device-os/commit/708feb62d)

๐Ÿ“ฆ INTERNAL

  • [tests] Test improvements [#2899](https://github.com/particle-iot/device-os/pull/2899) [#2901](https://github.com/particle-iot/device-os/pull/2901) [#2906](https://github.com/particle-iot/device-os/pull/2906) [1875a2a](https://github.com/particle-iot/device-os/commit/1875a2a07) [9b5c9d9](https://github.com/particle-iot/device-os/commit/9b5c9d9fa) [04949f4](https://github.com/particle-iot/device-os/commit/04949f429)
  • [ci] update Xcode to 26.2.0 [#2900](https://github.com/particle-iot/device-os/pull/2900)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.4.0/particle_device-os@6.4.0.zip
  • ---
v6.3.5 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v6.3.5
technoblytechnoblyยท5mo agoยทJanuary 15, 2026
GitHub

๐Ÿ“ฆ Device OS 6.3.5 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on January 15, 2026_
  • ---

๐Ÿ› BUGFIXES

  • [tracker] Resolved a bug in mcp23s17.cpp where the SPI lock was not being properly acquired [#2886](https://github.com/particle-iot/device-os/pull/2886)
  • [b5som][eg91nax][quectel] Added a workaround for a modem firmware bug where an incorrect svc_mode could prevent SIM switching. Device OS now proactively monitors and corrects this setting during the registration process. [#2891](https://github.com/particle-iot/device-os/pull/2891)
  • [fuelgauge] Fixed an issue where FuelGauge could return incorrect readings if the I2C bus was disabled during large buffer re-initialization. The API now automatically triggers begin() when needed, removing the manual requirement for users. [#2890](https://github.com/particle-iot/device-os/pull/2890)
  • Added support for `I2C::setSpeed()` from 10kHz to 99kHz in 1kHz increments [#2893](https://github.com/particle-iot/device-os/pull/2893)

๐Ÿ“ฆ ENHANCEMENTS

  • [gen4] Optimized boot time by enabling cache earlier in the boot sequence, optimizing BLE/USB initialization, and streamlining integrity checks.[#2887](https://github.com/particle-iot/device-os/pull/2887)

๐Ÿ“ฆ INTERNAL

  • [tests] Adds `00_before` and `zz_after` HIL integration test suites [#2884](https://github.com/particle-iot/device-os/pull/2884)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.3.5/particle_device-os@6.3.5.zip
  • ---
v6.3.4 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v6.3.4
technoblytechnoblyยท8mo agoยทOctober 1, 2025
GitHub

๐Ÿ“ฆ Device OS 6.3.4 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on Oct 1, 2025_
  • ---

๐Ÿ› BUGFIXES

  • Increased the system power manager stack size for all platforms to improve reliability. This fix also enables B-SoM for Muon [#2874](https://github.com/particle-iot/device-os/pull/2874)
  • [gen4] [bootloader] Updated the Gen 4 bootloader SDK to correct a pin-toggling issue in Device OS 6.2.1โ€“6.3.3. It could cause pins D4โ€“D7 to briefly toggle on boot due to unintended SPI pin configuration. The fix ensures the pins retain their correct state during startup.[#2876](https://github.com/particle-iot/device-os/pull/2876)
  • [test] Fixed specific test failures for M635/M-SoM with BG95-S5/BG95-M5 modems in the CELLULAR_07_urcs suite. [#2877](https://github.com/particle-iot/device-os/pull/2877)
  • [gen4] Fixes a bug such that the application gets notification of new wifi credentials no matter where it is coming from. Specifically, system event `network_credentials_added` now passes `NetworkCredentials` object [#2882](https://github.com/particle-iot/device-os/pull/2882)

๐Ÿ“ฆ INTERNAL

  • [docs] Update CLA links [#2878](https://github.com/particle-iot/device-os/pull/2878)
  • [test] Update test dependencies [#2879](https://github.com/particle-iot/device-os/pull/2879)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.3.4/particle_device-os@6.3.4.zip
  • ---
v6.3.3 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v6.3.3
avtolstoyavtolstoyยท1y agoยทJune 11, 2025
GitHub

๐Ÿ“ฆ Device OS 6.3.3 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on June 11, 2025_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Panic vitals [#2872](https://github.com/particle-iot/device-os/pull/2872)

๐Ÿ“ฆ ENHANCEMENTS

  • [Gen 4] Cortex-M33 FreeRTOS port updated to latest version with `BASEPRI` fixes [#2872](https://github.com/particle-iot/device-os/pull/2872) [realtek_ambd_sdk_public#6](https://github.com/particle-iot/realtek_ambd_sdk_public/pull/6)

๐Ÿ› BUGFIXES

  • [Gen 4] `free_worker` incorrect queue put [#2872](https://github.com/particle-iot/device-os/pull/2872)
  • [Gen 3] BLE lock is acquired inside ISR handler in cases where BLE memory pool gets exhausted [#2873](https://github.com/particle-iot/device-os/pull/2873)
  • [Gen 4] BLE stack does not handle correctly the case where the peripheral does not respond to the MTU exchange request [#2873](https://github.com/particle-iot/device-os/pull/2873)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.3.3/particle_device-os@6.3.3.zip
  • ---
v6.3.2 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v6.3.2Pre-release
scott-brustscott-brustยท1y agoยทMay 5, 2025
GitHub

๐Ÿ“ฆ Device OS 6.3.2 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on May 5, 2025_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

๐Ÿ“ฆ ENHANCEMENTS

  • [network] interface-aware DNS lookups [#2864](https://github.com/particle-iot/device-os/pull/2864)

๐Ÿ› BUGFIXES

  • [gen4] core: fix PSRAM heap size while in safe mode [#2871](https://github.com/particle-iot/device-os/pull/2871)
  • [hal] SPI: fixes threading safety issue [#2865](https://github.com/particle-iot/device-os/pull/2865)
  • [gen4] hal: get rid of unnecessary constant delay(1) in HAL_USB_USART_Send_Data() [#2867](https://github.com/particle-iot/device-os/pull/2867)
  • [gen4] Work around a race condition in the new event API [#2869](https://github.com/particle-iot/device-os/pull/2869)

๐Ÿ“ฆ INTERNAL

  • [gen4] Fix MBR flash_copy due to incorrect status register WIP bit detection [#2868](https://github.com/particle-iot/device-os/pull/2868)
  • [msom] Ignore CIMI errors on bg95s5 with no esim profile loaded [#2866](https://github.com/particle-iot/device-os/pull/2866)
  • [cellular] Support new Twilio Super SIM ICCID prefix 8910392
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.3.2/particle_device-os@6.3.2.zip
  • ---
v6.3.0 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v6.3.0
avtolstoyavtolstoyยท1y agoยทFebruary 6, 2025
GitHub

๐Ÿ“ฆ Device OS 6.3.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on Feb 6, 2025_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • New cloud event API that supports sending and receiving up to 16K of data in an event [#2840](https://github.com/particle-iot/device-os/pull/2840)
  • Electron 2 platform support [#2844](https://github.com/particle-iot/device-os/pull/2844)
  • [wiring] Enable `Cellular`/`WiFi`/`Ethernet` `.ping()` for Gen 3 and Gen 4 platforms [#2856](https://github.com/particle-iot/device-os/pull/2856)

๐Ÿ“ฆ ENHANCEMENTS

  • [wiring] Generate an error when using `EEPROM` with `String` objects as `String` contains dynamically allocated data on heap [#2855](https://github.com/particle-iot/device-os/pull/2855)
  • [network] Postpone `Ethernet` interface initialization to allow STARTUP() call to override pin configuration without a reset [#2848](https://github.com/particle-iot/device-os/pull/2848)

๐Ÿ› BUGFIXES

  • Prevent low-level WiFI network buffer overflow [#2853](https://github.com/particle-iot/device-os/pull/2853)
  • [Gen 3] Increase main stack size from 2K to 4K [#2851](https://github.com/particle-iot/device-os/pull/2851)
  • Thread-safe `__cxa_guard_acquire`/`__cxa_guard_release` implementation [#2851](https://github.com/particle-iot/device-os/pull/2851)
  • [build] Fix section size calculations for paths containing section-like names [#2852](https://github.com/particle-iot/device-os/pull/2852)

๐Ÿ“ฆ INTERNAL

  • [test] wiring/no_fixture_long_running: update network tests to stress test large packets up to MTU size once max MTU is figured out [#2855](https://github.com/particle-iot/device-os/pull/2855)
  • [test] communication/long_publish: adds a long running publish test [#2854](https://github.com/particle-iot/device-os/pull/2854)
  • [build] Add asserts to linker files to make sure that stack sizes match the expected values [#2851](https://github.com/particle-iot/device-os/pull/2851)
  • Stub `atexit` to free up flash space used by global object destructors [#2851](https://github.com/particle-iot/device-os/pull/2851)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.3.0/particle_device-os@6.3.0.zip
  • ---
v6.2.1 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v6.2.1
avtolstoyavtolstoyยท1y agoยทDecember 16, 2024
GitHub

๐Ÿ“ฆ Device OS 6.2.1 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on Dec 16, 2024_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Expose ICCID to Modem Manager when tethering [#2838](https://github.com/particle-iot/device-os/pull/2838)
  • [Cellular] BG95-S5 support [#2842](https://github.com/particle-iot/device-os/pull/2842)
  • [BLE] `BLE.setAdvertisingScheme()` API [#2837](https://github.com/particle-iot/device-os/pull/2837)

๐Ÿ“ฆ ENHANCEMENTS

  • [Gen 4] Optimize QSPI flash writes (to use highest clock speed and IO mode) and erasures (use 32K and 64K blocks when possible) [#2841](https://github.com/particle-iot/device-os/pull/2841)
  • [Ethernet] Minor performance optimizations [#2846](https://github.com/particle-iot/device-os/pull/2846)
  • [Ethernet] Enable internal pull-up on interrupt line in case external one is not populated to prevent it from floating [684047d7](https://github.com/particle-iot/device-os/commit/684047d7a26f20a002f9c51886421870b5c94f63)
  • [Gen 4] WiFi: Always perform a scan before connect and use both SSID + BSSID to initiate the connection [#2849](https://github.com/particle-iot/device-os/pull/2849)
  • [Cellular] [R510] Extend EHS (Emergency Hardware Shutdown) sequence timing due to reduced clock rate while in (UPSV=1) Power Saving mode [#2850](https://github.com/particle-iot/device-os/pull/2850)

๐Ÿ› BUGFIXES

  • [Gen 3] Fix DMA issue when writing from internal flash to external flash [#2843](https://github.com/particle-iot/device-os/pull/2841)
  • [Ethernet] Fix default pin configuration/validation [#2846](https://github.com/particle-iot/device-os/pull/2846)
  • [Cellular] [R510] Device OS 6.2.0 unmasked all bands on R510; however LTE Cat-M1 band 71 shall be re-disabled. See our [Technical Advisory Note](https://docs.particle.io/reference/technical-advisory-notices/tan014/) for more info [#2845](https://github.com/particle-iot/device-os/pull/2845)
  • [Gen 4] BLE: Fix a deadlock between `BLE.connect()` and `BLE.peerCentral()` calls in different threads [#2836](https://github.com/particle-iot/device-os/pull/2836)
  • [Gen 4] BLE: Fix connection issues operating in peripheral/central roles concurrently [#2839](https://github.com/particle-iot/device-os/pull/2839)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.2.1/particle_device-os@6.2.1.zip
  • ---
v6.2.0 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v6.2.0
technoblytechnoblyยท1y agoยทOctober 15, 2024
GitHub

๐Ÿ“ฆ Device OS 6.2.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on Oct 15, 2024_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

๐Ÿ’ฅ BREAKING CHANGES

  • make `SYSTEM_THREAD(ENABLED)` the default, add deprecation warning on `SYSTEM_THREAD()` macro use [#2834](https://github.com/particle-iot/device-os/pull/2834)
  • Removed deprecated HAL API wrappers after a set of renamings in Device OS 4.x LTS [#2834](https://github.com/particle-iot/device-os/pull/2834)

โœจ FEATURES

  • Extend `Particle.publish()` and `Particle.subscribe()`` APIs to support events content types [#2804](https://github.com/particle-iot/device-os/pull/2804)
  • Tether API + ModemManager support [#2832](https://github.com/particle-iot/device-os/pull/2832)
  • Supports M.2 breakout board and Muon [#2809](https://github.com/particle-iot/device-os/pull/2809)

๐Ÿ“ฆ ENHANCEMENTS

  • [gen3] make sure that extended system-part1 is compatible with older bootloaders as well as 6.1.2 [#2831](https://github.com/particle-iot/device-os/pull/2831)
  • Improves `delay()` behavior [#2828](https://github.com/particle-iot/device-os/pull/2828)
  • [photon2] ethernet: use 12.5MHz as the default SPI clock rate for W5500 [#2835](https://github.com/particle-iot/device-os/pull/2835)
  • [Gen 4] Adds detailed WiFi access point disconnect reason logging [#2805](https://github.com/particle-iot/device-os/pull/2805)
  • [ACM] Perform cloud ping or reachability test on network events; non-blocking background reachability test [#2811](https://github.com/particle-iot/device-os/pull/2811)
  • [Gen 3] BLE: increase a number of retries for service discovery in central role [#2801](https://github.com/particle-iot/device-os/pull/2801)
  • [Gen 3] BLE: suspend scanning while in connected state and restore scanning after a disconnect (SoftDevice limitation) [#2801](https://github.com/particle-iot/device-os/pull/2801)
  • [cellular][r510] unmask bands for global use [#2803](https://github.com/particle-iot/device-os/pull/2803)
  • + 4 more

๐Ÿ› BUGFIXES

  • [Gen 3] BLE: fixes a race condition in connected state reporting in central and peripheral roles [#2801](https://github.com/particle-iot/device-os/pull/2801)
  • [Gen 4] i2c: use transactions for fuelgauge and pmic on platforms with single i2c bus to avoid cutting into compound application I2C transmissions [#2822](https://github.com/particle-iot/device-os/pull/2822)
  • Reduce latency of the system loop [#2797](https://github.com/particle-iot/device-os/pull/2797)
  • Work around a bug in lfs_remove() while recursive traversing directories [#2798](https://github.com/particle-iot/device-os/pull/2798)
  • [Gen 4] set sleep timer upper bounds [#2810](https://github.com/particle-iot/device-os/pull/2810)
  • [Gen 4] Fixes potential deadlock in WiFi and BLE stacks [#2805](https://github.com/particle-iot/device-os/pull/2805)
  • [Gen 4] fixes DMA enabled USART flush [#2800](https://github.com/particle-iot/device-os/pull/2800)
  • [Gen 4] Fixes `BLE.stopScanning()` deadlock when called from inside BLE callback [#2796](https://github.com/particle-iot/device-os/pull/2796)
  • + 6 more

๐Ÿ“ฆ INTERNAL

  • Remove access_token query param from Device OS makefile [#2833](https://github.com/particle-iot/device-os/pull/2833)
  • Add serial loopback to test runner [#2816](https://github.com/particle-iot/device-os/pull/2816)
  • [tests] Support integration tests on gen4 after device-constants update [#2814](https://github.com/particle-iot/device-os/pull/2814)
  • Adds fixture tests [#2823](https://github.com/particle-iot/device-os/pull/2823)
  • [tests] ACM prefer feature, adjust logging [#2795](https://github.com/particle-iot/device-os/pull/2795)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.2.0/particle_device-os@6.2.0.zip
  • ---
v5.9.0 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v5.9.0Pre-release
technoblytechnoblyยท1y agoยทSeptember 11, 2024
GitHub

๐Ÿ“ฆ Device OS 5.9.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on September 9th, 2024_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Supports M.2 breakout board and Muon [#2809](https://github.com/particle-iot/device-os/pull/2809)

๐Ÿ“ฆ ENHANCEMENTS

  • [Gen 4] Adds detailed WiFi access point disconnect reason logging [#2805](https://github.com/particle-iot/device-os/pull/2805)
  • [ACM] Perform cloud ping or reachability test on network events; non-blocking background reachability test [#2811](https://github.com/particle-iot/device-os/pull/2811)
  • [Gen 3] BLE: increase a number of retries for service discovery in central role [#2801](https://github.com/particle-iot/device-os/pull/2801)
  • [Gen 3] BLE: suspend scanning while in connected state and restore scanning after a disconnect (SoftDevice limitation) [#2801](https://github.com/particle-iot/device-os/pull/2801)
  • [cellular][r510] unmask bands for global use [#2803](https://github.com/particle-iot/device-os/pull/2803)
  • BLE: streamlines `BLE.scan()` behavior to be blocking irrespective of timeout, but allows other BLE operations to be performed [#2796](https://github.com/particle-iot/device-os/pull/2796)
  • BLE: streamlines `BLE.stopScanning()` behavior to be blocking when not called from BLE callback and guarantees scanning to be stopped on return [#2796](https://github.com/particle-iot/device-os/pull/2796)
  • [Gen 4] BLE: improves locking in a number of BLE API calls [#2813](https://github.com/particle-iot/device-os/pull/2813)

๐Ÿ› BUGFIXES

  • [Gen 3] BLE: fixes a race condition in connected state reporting in central and peripheral roles [#2801](https://github.com/particle-iot/device-os/pull/2801)
  • [Gen 4] i2c: use transactions for fuelgauge and pmic on platforms with single i2c bus to avoid cutting into compound application I2C transmissions [#2822](https://github.com/particle-iot/device-os/pull/2822)
  • Reduce latency of the system loop [#2797](https://github.com/particle-iot/device-os/pull/2797)
  • Work around a bug in lfs_remove() while recursive traversing directories [#2798](https://github.com/particle-iot/device-os/pull/2798)
  • [Gen 4] set sleep timer upper bounds [#2810](https://github.com/particle-iot/device-os/pull/2810)
  • [Gen 4] Fixes potential deadlock in WiFi and BLE stacks [#2805](https://github.com/particle-iot/device-os/pull/2805)
  • [Gen 4] fixes DMA enabled USART flush [#2800](https://github.com/particle-iot/device-os/pull/2800)
  • [Gen 4] Fixes `BLE.stopScanning()` deadlock when called from inside BLE callback [#2796](https://github.com/particle-iot/device-os/pull/2796)
  • + 6 more

๐Ÿ“ฆ INTERNAL

  • Add serial loopback to test runner [#2816](https://github.com/particle-iot/device-os/pull/2816)
  • [tests] Support integration tests on gen4 after device-constants update [#2814](https://github.com/particle-iot/device-os/pull/2814)
  • Adds fixture tests [#2823](https://github.com/particle-iot/device-os/pull/2823)
  • [tests] ACM prefer feature, adjust logging [#2795](https://github.com/particle-iot/device-os/pull/2795)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.9.0/particle_device-os@5.9.0.zip
  • ---
v5.8.2 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v5.8.2Pre-release
scott-brustscott-brustยท1y agoยทJuly 2, 2024
GitHub

๐Ÿ“ฆ Device OS 5.8.2 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on July 2, 2024_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • [Gen 4] [rtl872x] Improve coexistence between Wifi and BLE when both are used simultaneously [#2764](https://github.com/particle-iot/device-os/pull/2764)
  • [Gen 4] [rtl872x] [BREAKING CHANGE] Backup RAM is no longer automatically written to flash periodically. Backup RAM will be saved when entering sleep. If users are going to reset, `hal_backup_ram_sync()` should be called first [#2766](https://github.com/particle-iot/device-os/pull/2766)

๐Ÿ“ฆ ENHANCEMENTS

  • [eg91e] [eg91ex] enable 921600 baud rate [#2782](https://github.com/particle-iot/device-os/pull/2782)
  • [rtl872x] SPI hal: set sample delay for SPI0@25MHz [#2784](https://github.com/particle-iot/device-os/pull/2784)
  • [Gen 4] [msom]ACM Behavior changes [#2738](https://github.com/particle-iot/device-os/pull/2738)
  • Update heap5 implementation to latest [6d1d9bff2](https://github.com/particle-iot/device-os/commit/6d1d9bff2a0f39ae2e331686357c593fc18108ed)[07104a8dc2](https://github.com/particle-iot/device-os/commit/07104a8dc26611ec4a312ec113824ffbd9bbed02)

๐Ÿ› BUGFIXES

  • Fix wifi setup not connecting when in listening mode [#2783](https://github.com/particle-iot/device-os/pull/2783) [#2778](https://github.com/particle-iot/device-os/pull/2778)
  • Resumable OTA fixes [#2769](https://github.com/particle-iot/device-os/pull/2769)
  • [quectel] fixes PPP resume during warm boot [#2772](https://github.com/particle-iot/device-os/pull/2772)
  • [Gen 4] [bootloader] Implement bootloader reset reasons [#2773](https://github.com/particle-iot/device-os/pull/2773)
  • [RTL872x] multiple SPI fixes [#2768](https://github.com/particle-iot/device-os/pull/2768)
  • [Gen 4] [rtl872x] Reinitialize internal wifi stack if scan or connect fails [#2766](https://github.com/particle-iot/device-os/pull/2766) [#2760](https://github.com/particle-iot/device-os/pull/2760/)
  • [Gen 4] [rtl872x] Resolve deadlock with USB serial monitoring on boot in some cases[#2765](https://github.com/particle-iot/device-os/pull/2765)
  • [gen3] hal: fix gpio glitch [#2787](https://github.com/particle-iot/device-os/pull/2787)
  • + 3 more

๐Ÿ“ฆ INTERNAL

  • [rtl872x] Display Photon 2 instead of P2, dont allow extended advertising data on rtl platforms [#2779](https://github.com/particle-iot/device-os/pull/2779)
  • Add set credentials usb request [#2763](https://github.com/particle-iot/device-os/pull/2763)
  • [Gen 4] [rtl872x] Prevent M404/BG95M5 modems from connecting on 2G networks for the time being[#2761](https://github.com/particle-iot/device-os/pull/2761)
  • [Gen 4] [rtl872x] Query 2G registration status for M404/BG95M5 modems when querying CGMI [#2761](https://github.com/particle-iot/device-os/pull/2761)
  • [Gen 4] Update sdk submoudle ref to fix compiler warnings [#2789](https://github.com/particle-iot/device-os/pull/2789)
  • [test] Adjust OTA tests [8ec558e63](https://github.com/particle-iot/device-os/commit/8ec558e63d8545856ff7ac37db1dda1546df8786)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.8.2/particle_device-os@5.8.2.zip
  • ---
v6.1.1 (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X)v6.1.1Pre-release
avtolstoyavtolstoyยท1y agoยทJune 21, 2024
GitHub

๐Ÿ“ฆ Device OS 6.1.1 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X).

  • _Released on Jun 20, 2024_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Allow temporarily disabling device protection [#2770](https://github.com/particle-iot/device-os/pull/2770)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.1.1/particle_device-os@6.1.1.zip
  • ---
v6.1.0 (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X)v6.1.0Pre-release
scott-brustscott-brustยท2y agoยทMay 3, 2024
GitHub

๐Ÿ“ฆ Device OS 6.1.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X).

  • _Released on May 3, 2024_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Ledger [#2715](https://github.com/particle-iot/device-os/pull/2715) [#2756](https://github.com/particle-iot/device-os/pull/2756)
  • [WiFi] `WiFi.setCredentials()` with credentials validation [#2746](https://github.com/particle-iot/device-os/pull/2746) [#2754](https://github.com/particle-iot/device-os/pull/2754) [#2758](https://github.com/particle-iot/device-os/pull/2758)
  • [Gen 4] [rtl872x] [BREAKING CHANGE] Backup RAM is no longer automatically written to flash periodically. Backup RAM will be saved when entering sleep. If users are going to reset, `hal_backup_ram_sync()` should be called first [#2766](https://github.com/particle-iot/device-os/pull/2766)

๐Ÿ“ฆ ENHANCEMENTS

  • [Cellular] Improve BG95 connection speed by only setting `nwscanseq` if needed [#2735](https://github.com/particle-iot/device-os/pull/2735)
  • Include IMEI in `CTRL_REQUEST_CELLULAR_GET_ICCID` control request [#2730](https://github.com/particle-iot/device-os/pull/2730)
  • Process system tasks while cloud handshake is in progress [#2745](https://github.com/particle-iot/device-os/pull/2745)

๐Ÿ› BUGFIXES

  • [wiring] Fix incorrect `int` to `bool` conversion in `WiFi.clearCredentials()` [#2736](https://github.com/particle-iot/device-os/pull/2736)
  • [Gen 4] [rtl872x] Fix boot loop if system-part module info is corrupted [#2739](https://github.com/particle-iot/device-os/pull/2739)
  • [Gen 4] [rtl872x] Fix OTA bounds check, add `ota/min_max_app_size` test [#2742](https://github.com/particle-iot/device-os/pull/2742)
  • Fix `std::call_once` re-entrancy problem [#2743](https://github.com/particle-iot/device-os/pull/2743)
  • Prevent OTA progress events from blocking system thread [#2741](https://github.com/particle-iot/device-os/pull/2741)
  • [Gen 4] [rtl872x] Fix WiFi/BLE coexistence and WiFi/BLE stability issues [#2747](https://github.com/particle-iot/device-os/pull/2747) [#2752](https://github.com/particle-iot/device-os/pull/2752) [#2755](https://github.com/particle-iot/device-os/pull/2755) [#2754](https://github.com/particle-iot/device-os/pull/2754)
  • [Gen 4] [rtl872x] Fix USB re-enumeration issues [#2744](https://github.com/particle-iot/device-os/pull/2744) [#2752](https://github.com/particle-iot/device-os/pull/2752) [#2754](https://github.com/particle-iot/device-os/pull/2754)
  • [Gen 4] [rtl872x] Fix incorrect timing of SPI TX-only transaction completion notification [#2749](https://github.com/particle-iot/device-os/pull/2749) [#2757](https://github.com/particle-iot/device-os/pull/2757)
  • + 6 more

๐Ÿ“ฆ INTERNAL

  • [Tracker] Disable ESP32 SDIO debug logs [#2740](https://github.com/particle-iot/device-os/pull/2740)
  • [GCC] Enable Ledger and filesystem APIs on GCC platform [#2737](https://github.com/particle-iot/device-os/pull/2737)
  • Fix monolithic build errors [#2751](https://github.com/particle-iot/device-os/pull/2751)
  • [Gen 4] [rtl872x] Upgrade `ambd_sdk` WiFi and BLE subsystems to `6.2_patch_integrated_231211_25b3bc38` [#2752](https://github.com/particle-iot/device-os/pull/2752)
  • Update USB/BLE platform names to use hyphenated notation [#2753](https://github.com/particle-iot/device-os/pull/2753)
  • [Gen 4] [rtl872x] Prevent M404/BG95M5 modems from connecting on 2G networks for the time being[#2761](https://github.com/particle-iot/device-os/pull/2761)
  • [Gen 4] [rtl872x] Query 2G registration status for M404/BG95M5 modems when querying CGMI [#2761](https://github.com/particle-iot/device-os/pull/2761)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.1.0/particle_device-os@6.1.0.zip
  • ---
v5.8.0 (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2)v5.8.0Pre-release
avtolstoyavtolstoyยท2y agoยทMarch 15, 2024
GitHub

๐Ÿ“ฆ Device OS 5.8.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B-SoM/B5-SoM/Tracker/Tracker-M/E-SoM-X/M-SoM/P2).

  • _Released on March 15, 2024_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Ledger [#2715](https://github.com/particle-iot/device-os/pull/2715) [#2756](https://github.com/particle-iot/device-os/pull/2756)
  • [WiFi] `WiFi.setCredentials()` with credentials validation [#2746](https://github.com/particle-iot/device-os/pull/2746) [#2754](https://github.com/particle-iot/device-os/pull/2754) [#2758](https://github.com/particle-iot/device-os/pull/2758)

๐Ÿ“ฆ ENHANCEMENTS

  • [Cellular] Improve BG95 connection speed by only setting `nwscanseq` if needed [#2735](https://github.com/particle-iot/device-os/pull/2735)
  • Include IMEI in `CTRL_REQUEST_CELLULAR_GET_ICCID` control request [#2730](https://github.com/particle-iot/device-os/pull/2730)
  • Process system tasks while cloud handshake is in progress [#2745](https://github.com/particle-iot/device-os/pull/2745)

๐Ÿ› BUGFIXES

  • [wiring] Fix incorrect `int` to `bool` conversion in `WiFi.clearCredentials()` [#2736](https://github.com/particle-iot/device-os/pull/2736)
  • [Gen 4] [rtl872x] Fix boot loop if system-part module info is corrupted [#2739](https://github.com/particle-iot/device-os/pull/2739)
  • [Gen 4] [rtl872x] Fix OTA bounds check, add `ota/min_max_app_size` test [#2742](https://github.com/particle-iot/device-os/pull/2742)
  • Fix `std::call_once` re-entrancy problem [#2743](https://github.com/particle-iot/device-os/pull/2743)
  • Prevent OTA progress events from blocking system thread [#2741](https://github.com/particle-iot/device-os/pull/2741)
  • [Gen 4] [rtl872x] Fix WiFi/BLE coexistence and WiFi/BLE stability issues [#2747](https://github.com/particle-iot/device-os/pull/2747) [#2752](https://github.com/particle-iot/device-os/pull/2752) [#2755](https://github.com/particle-iot/device-os/pull/2755) [#2754](https://github.com/particle-iot/device-os/pull/2754)
  • [Gen 4] [rtl872x] Fix USB re-enumeration issues [#2744](https://github.com/particle-iot/device-os/pull/2744) [#2752](https://github.com/particle-iot/device-os/pull/2752) [#2754](https://github.com/particle-iot/device-os/pull/2754)
  • [Gen 4] [rtl872x] Fix incorrect timing of SPI TX-only transaction completion notification [#2749](https://github.com/particle-iot/device-os/pull/2749) [#2757](https://github.com/particle-iot/device-os/pull/2757)
  • + 5 more

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.8.0/particle_device-os@5.8.0.zip
  • ---
v6.0.0 (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X)v6.0.0Pre-release
avtolstoyavtolstoyยท2y agoยทMarch 28, 2024
GitHub

๐Ÿ“ฆ Device OS 6.0.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X).

  • _Released on January 30, 2024_
  • Note: This is a limited Release and may be used for production with approval from Particle.
  • You can view information about Device OS versions, upgrades and downgrades [here](https://docs.particle.io/reference/device-os/versions/).

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Protected mode [#2734](https://github.com/particle-iot/device-os/pull/2734)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v6.0.0/particle_device-os@6.0.0.zip
  • ---
v5.7.0 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/M SoM/P2)v5.7.0Pre-release
avtolstoyavtolstoyยท2y agoยทJanuary 24, 2024
GitHub

๐Ÿ“ฆ Device OS 5.7.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/M SoM/P2).

  • _Released on January 24, 2024_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Allow duplicates in BLE scan results if requested with `BLE.scanWithFilter(BleScanFilter().allowDuplicates(true))` [#2718](https://github.com/particle-iot/device-os/pull/2718)

๐Ÿ“ฆ ENHANCEMENTS

  • [P2 / M SoM] BLE: Dynamically adjust radio prioritization when both BLE and WiFi are active improving BLE scanning performance [#2714](https://github.com/particle-iot/device-os/pull/2714)
  • ACM `preferred()`/`prefer()` API clean up [#2717](https://github.com/particle-iot/device-os/pull/2717)
  • [M SoM] Adjust cloud keep-alive based on network connection [#2716](https://github.com/particle-iot/device-os/pull/2716)
  • [M SoM] Enable session resumption [#2722](https://github.com/particle-iot/device-os/pull/2722)
  • [P2 / M SoM] SPI performance improvements [#2728](https://github.com/particle-iot/device-os/pull/2728) [#2731](https://github.com/particle-iot/device-os/pull/2731)
  • [P2 / M SoM] Ethernet performance improvements [#2728](https://github.com/particle-iot/device-os/pull/2728) [#2731](https://github.com/particle-iot/device-os/pull/2731)

๐Ÿ› BUGFIXES

  • [P2 / M SoM] BLE scan results should be filtered for duplicates by default [#2718](https://github.com/particle-iot/device-os/pull/2718)
  • Fix OpenOCD FreeRTOS thread list access (`uxTopUsedPriority`) [#2723](https://github.com/particle-iot/device-os/pull/2723)
  • [Gen 3] BLE: Fix stack overflow in BLE timer callback [#2725](https://github.com/particle-iot/device-os/pull/2725)
  • [Cellular] Fixes parsing of MCC/MNC with 00 or 000 MNC [#2726](https://github.com/particle-iot/device-os/pull/2726)
  • [P2 / M SoM] Use security type from `JoinNewNetwork` request to connect to hidden networks [#2724](https://github.com/particle-iot/device-os/pull/2724)
  • [build] include alignment into section size calculations [#2719](https://github.com/particle-iot/device-os/pull/2719)
  • [P2 / M SoM] SPI slave mode bugfixes [#2728](https://github.com/particle-iot/device-os/pull/2728) [#2731](https://github.com/particle-iot/device-os/pull/2731)
  • [P2 / M SoM] USB TX hold-off mechanism should account for maximum transmit size [#2729](https://github.com/particle-iot/device-os/pull/2729)
  • + 1 more

๐Ÿ“ฆ INTERNAL

  • [M SoM] Make GNSS burn in test optional [#2720](https://github.com/particle-iot/device-os/pull/2720)
  • [M SoM] Support for GNSS FQC test [#2721](https://github.com/particle-iot/device-os/pull/2721)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.7.0/particle_device-os@5.7.0.zip
  • ---
v5.6.0 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/M SoM/P2)v5.6.0
technoblytechnoblyยท2y agoยทDecember 7, 2023
GitHub

๐Ÿ“ฆ Device OS 5.6.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/M SoM/P2).

  • _Released on December 7, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • [msom] ACM basic support [#2689](https://github.com/particle-iot/device-os/pull/2689)

๐Ÿ“ฆ ENHANCEMENTS

  • [wiring] Add 64-bit string conversions [#2693](https://github.com/particle-iot/device-os/pull/2693)
  • [wiring] json: 64-bit support [#2695](https://github.com/particle-iot/device-os/pull/2695)
  • [msom] increase NCP baudrate to 921600, doubling throughput [#2706](https://github.com/particle-iot/device-os/pull/2706)
  • [network] Wiznet Ethernet performance improvements [#2708](https://github.com/particle-iot/device-os/pull/2708)

๐Ÿ› BUGFIXES

  • [gen3] hal: fixes the issue that UARTE RX may loss data [#2698](https://github.com/particle-iot/device-os/pull/2698)
  • [rtl872x] correctly handle SecureFault [#2699](https://github.com/particle-iot/device-os/pull/2699)
  • Fixes ncp-client not waiting for modem ready on cold boot [#2700](https://github.com/particle-iot/device-os/pull/2700)
  • [system] still pump system loop when SPARK_WLAN_SLEEP=1; Try to drain ISR task queue quicker [#2702](https://github.com/particle-iot/device-os/pull/2702)
  • [rtl872x] Fix unintentional pin changes for Serial1 RTS/CTS [#2703](https://github.com/particle-iot/device-os/pull/2703)
  • [rtl872x] fix multiple BLE issues [#2710](https://github.com/particle-iot/device-os/pull/2710)
  • Asset OTA fixes [#2711](https://github.com/particle-iot/device-os/pull/2711)

๐Ÿ“ฆ INTERNAL

  • [services] add long long support to printf/scanf [#2694](https://github.com/particle-iot/device-os/pull/2694)
  • fix printf/scanf for floating point numbers, add tests [#2696](https://github.com/particle-iot/device-os/pull/2696
  • [msom] support 16MB GD flash [#2701](https://github.com/particle-iot/device-os/pull/2701)
  • [msom] Support burnin tests [#2704](https://github.com/particle-iot/device-os/pull/2704)
  • [gen3] reduce flash usage [#2705](https://github.com/particle-iot/device-os/pull/2705)
  • Erase factory reset app after test runner completes [#2709](https://github.com/particle-iot/device-os/pull/2709)
  • Fix dual stack UDP bind behavior with LWIP_IPV6_DEFINES_ONLY [#2712](https://github.com/particle-iot/device-os/pull/2712)
  • Update WB makefile version [#2713](https://github.com/particle-iot/device-os/pull/2713)
  • + 1 more

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.6.0/particle_device-os@5.6.0.zip
  • ---
v4.2.0 (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X)v4.2.0
technoblytechnoblyยท2y agoยทSeptember 26, 2023
GitHub

๐Ÿ“ฆ Device OS 4.2.0 LTS is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X).

  • _Released on September 26th, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

๐Ÿ“ฆ ENHANCEMENTS

  • [Cellular] Enables UPSV=1 low power mode for R510 when idle for >=9.2s [#2674](https://github.com/particle-iot/device-os/pull/2674)
  • [services] add long long support to printf/scanf [#2694](https://github.com/particle-iot/device-os/pull/2694) [#2696](https://github.com/particle-iot/device-os/pull/2696)
  • [wiring] Add 64-bit String conversions [#2693](https://github.com/particle-iot/device-os/pull/2693) [#2657](https://github.com/particle-iot/device-os/pull/2657)
  • [wiring] json: 64-bit support [#2695](https://github.com/particle-iot/device-os/pull/2693) [#2657](https://github.com/particle-iot/device-os/pull/2695)

๐Ÿ› BUGFIXES

  • Fixes clean target for applications with large number of files + P2 PSRAM size calculation issues [#2661](https://github.com/particle-iot/device-os/pull/2661)
  • [gen3] hal: fixes the issue that UARTE RX may lose data [#2698](https://github.com/particle-iot/device-os/pull/2698)
  • [quectel] Fixes ncp-client not waiting for modem ready on cold boot [#2700](https://github.com/particle-iot/device-os/pull/2700)

๐Ÿ“ฆ INTERNAL

  • [bootloader] remove nanopb dependency [#2607](https://github.com/particle-iot/device-os/pull/2607)
  • test] resolve sleep20 test failures. [#2669](https://github.com/particle-iot/device-os/pull/2669)
  • [nrf] Add Factory Reset Tests [#2662](https://github.com/particle-iot/device-os/pull/2662)
  • Update the key used for validating the ServerMoved signature [#2688](https://github.com/particle-iot/device-os/pull/2688)
  • [ci] fix macos builds [#2683](https://github.com/particle-iot/device-os/pull/2683)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v4.2.0/particle_device-os@4.2.0.zip
  • ---
v5.5.0 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/M SoM/P2)v5.5.0Pre-release
technoblytechnoblyยท2y agoยทAugust 31, 2023
GitHub

๐Ÿ“ฆ Device OS 5.5.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/M SoM/P2).

  • _Released on August 31, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Asset OTA [#2668](https://github.com/particle-iot/device-os/pull/2668)
  • [M SoM] Platform support [#2681](https://github.com/particle-iot/device-os/pull/2681)
  • [rtl872x] Experimental WPA3 support [#2673](https://github.com/particle-iot/device-os/pull/2673)
  • [WiFi] Hidden SSID support [#2673](https://github.com/particle-iot/device-os/pull/2673)
  • [rtl872x] GPIO drive strength configuration support [#2680](https://github.com/particle-iot/device-os/pull/2680)

๐Ÿ“ฆ ENHANCEMENTS

  • [WiFi] WiFI interface power state notifications [#2669](https://github.com/particle-iot/device-os/pull/2669)
  • [rtl872x] Improve `SPI1` (P2 / Tracker M) and `SPI` (M SoM) behavior at 50MHz by changing RXD sample delay [#2677](https://github.com/particle-iot/device-os/pull/2677)
  • [rtl872x] Improve USB Serial TX performance [#2672](https://github.com/particle-iot/device-os/pull/2672)
  • [Cellular] Enables UPSV=1 low power mode for R510 when idle for >=9.2s [#2674](https://github.com/particle-iot/device-os/pull/2674)
  • [rtl872x] Fix logic level overshoot on SPI, I2C, PWM pins [#2680](https://github.com/particle-iot/device-os/pull/2680)
  • [rtl872x] Revert the QSPI flash speed to 80MHz [#2684](https://github.com/particle-iot/device-os/pull/2684)
  • Update the key used for validating the ServerMoved signature [#2688](https://github.com/particle-iot/device-os/pull/2688)
  • [rtl872x] remove the delay in UART flush() [#2686](https://github.com/particle-iot/device-os/pull/2686)

๐Ÿ› BUGFIXES

  • [rtl872x] Fix incorrect I2C read timeout [#2671](https://github.com/particle-iot/device-os/pull/2671)
  • [rtl872x] Do not initialize RTC after waking up from HIBERNATE sleep [#2667](https://github.com/particle-iot/device-os/pull/2667)
  • [rtl872x] Disable pull resistors when pin is configure as `OUTPUT` [#2666](https://github.com/particle-iot/device-os/pull/2666)
  • [rtl872x] Disable SWDIO/SWDCLK pins when going into sleep [#2666](https://github.com/particle-iot/device-os/pull/2666)
  • [rtl872x] Disable brown-out detector [#2679](https://github.com/particle-iot/device-os/pull/2679)
  • [rtl872x] Avoid glitch on I2C pins when reconfiguring I2C peripheral [#2682](https://github.com/particle-iot/device-os/pull/2682)
  • [msom] Fix ethernet cs, reset, interrupt GPIO pins for M2 eval [#2690](https://github.com/particle-iot/device-os/pull/2690)

๐Ÿ“ฆ INTERNAL

  • [WiFi] Resolve `wiring/sleep20` test failures [#2669](https://github.com/particle-iot/device-os/pull/2669)
  • [nrf52840] Add factory reset test (`ota/factory_reset`) [#2662](https://github.com/particle-iot/device-os/pull/2662)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.5.0/particle_device-os@5.5.0.zip
  • ---
v5.5.0-rc.1 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/M SoM/P2)v5.5.0-rc.1Pre-release
avtolstoyavtolstoyยท2y agoยทAugust 16, 2023
GitHub

๐Ÿ“ฆ Device OS 5.5.0-rc.1 Release Candidate is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/M SoM/P2).

  • _Released on August 16th, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Asset OTA [#2668](https://github.com/particle-iot/device-os/pull/2668)
  • [M SoM] Platform support [#2681](https://github.com/particle-iot/device-os/pull/2681)
  • [rtl872x] Experimental WPA3 support [#2673](https://github.com/particle-iot/device-os/pull/2673)
  • [WiFi] Hidden SSID support [#2673](https://github.com/particle-iot/device-os/pull/2673)
  • [rtl872x] GPIO drive strength configuration support [#2680](https://github.com/particle-iot/device-os/pull/2680)

๐Ÿ“ฆ ENHANCEMENTS

  • [WiFi] WiFI interface power state notifications [#2669](https://github.com/particle-iot/device-os/pull/2669)
  • [rtl872x] Improve `SPI1` (P2 / Tracker M) and `SPI` (M SoM) behavior at 50MHz by changing RXD sample delay [#2677](https://github.com/particle-iot/device-os/pull/2677)
  • [rtl872x] Improve USB Serial TX performance [#2672](https://github.com/particle-iot/device-os/pull/2672)
  • [Cellular] Enables UPSV=1 low power mode for R510 when idle for >=9.2s [#2674](https://github.com/particle-iot/device-os/pull/2674)
  • [rtl872x] Fix logic level overshoot on SPI, I2C, PWM pins [#2680](https://github.com/particle-iot/device-os/pull/2680)
  • [rtl872x] Revert the QSPI flash speed to 80MHz [#2684](https://github.com/particle-iot/device-os/pull/2684)

๐Ÿ› BUGFIXES

  • [rtl872x] Fix incorrect I2C read timeout [#2671](https://github.com/particle-iot/device-os/pull/2671)
  • [rtl872x] Do not initialize RTC after waking up from HIBERNATE sleep [#2667](https://github.com/particle-iot/device-os/pull/2667)
  • [rtl872x] Disable pull resistors when pin is configure as `OUTPUT` [#2666](https://github.com/particle-iot/device-os/pull/2666)
  • [rtl872x] Disable SWDIO/SWDCLK pins when going into sleep [#2666](https://github.com/particle-iot/device-os/pull/2666)
  • [rtl872x] Disable brown-out detector [#2679](https://github.com/particle-iot/device-os/pull/2679)
  • [rtl872x] Avoid glitch on I2C pins when reconfiguring I2C peripheral [#2682](https://github.com/particle-iot/device-os/pull/2682)

๐Ÿ“ฆ INTERNAL

  • [WiFi] Resolve `wiring/sleep20` test failures [#2669](https://github.com/particle-iot/device-os/pull/2669)
  • [nrf52840] Add factory reset test (`ota/factory_reset`) [#2662](https://github.com/particle-iot/device-os/pull/2662)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.5.0-rc.1/particle_device-os@5.5.0-rc.1.zip
  • ---
v5.4.1 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2)v5.4.1Pre-release
technoblytechnoblyยท2y agoยทJuly 20, 2023
GitHub

๐Ÿ“ฆ Device OS 5.4.1 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2).

  • _Released on July 20, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

๐Ÿ“ฆ ENHANCEMENTS

  • [rtl872x] dynamically enable Wi-Fi stack on demand [#2664](https://github.com/particle-iot/device-os/pull/2664)

๐Ÿ› BUGFIXES

  • [rtl872x] linker: stop relying on .dynalib + .psram_text being contiguous and properly and similarly aligned within LMA and VMA, just copy them separately [#2665](https://github.com/particle-iot/device-os/pull/2665)
  • [rtl872x] fix BLE race condition [#2664](https://github.com/particle-iot/device-os/pull/2664)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.4.1/particle_device-os@5.4.1.zip
  • ---
v5.4.0 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2)v5.4.0Pre-release
scott-brustscott-brustยท3y agoยทJune 16, 2023
GitHub

๐Ÿ“ฆ Device OS 5.4.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2).

  • _Released on June 16, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

๐Ÿ“ฆ ENHANCEMENTS

  • [rtl872x] USB HID Mouse/Keyboard support [#2659](https://github.com/particle-iot/device-os/pull/2659)

๐Ÿ› BUGFIXES

  • Fix/nanopb string max size [#2657](https://github.com/particle-iot/device-os/pull/2657)
  • Fixes clean target for applications with large number of files + P2 PSRAM size calculation issues [#2661](https://github.com/particle-iot/device-os/pull/2661)

๐Ÿ“ฆ INTERNAL

  • [rtl872x] Allow KM4 SDK Bootloader images to boot [#2656](https://github.com/particle-iot/device-os/pull/2656)
  • [rtl872x] Combined MFG firmware [#2658](https://github.com/particle-iot/device-os/pull/2658)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.4.0/particle_device-os@5.4.0.zip
  • ---
v4.1.0 (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X)v4.1.0
technoblytechnoblyยท3y agoยทJune 1, 2023
GitHub

๐Ÿ“ฆ Device OS 4.1.0 LTS is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X).

  • _Released on May 31st, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Hardware watchdog [#2595](https://github.com/particle-iot/device-os/pull/2595) [#2626](https://github.com/particle-iot/device-os/pull/2626)
  • Server key rotation [#2570](https://github.com/particle-iot/device-os/pull/2570)

๐Ÿ› BUGFIXES

  • Wi-Fi/cellular network manager bugfixes [#2621](https://github.com/particle-iot/device-os/pull/2621)
  • [nRF52] UART sleep/wakeup [#2652](https://github.com/particle-iot/device-os/pull/2652)
  • [nRF52] watchdog timeout is not accurate [#2635](https://github.com/particle-iot/device-os/pull/2635)
  • [nRF52] BLE plus RTC sleep causes hardfault [#2615](https://github.com/particle-iot/device-os/pull/2615)
  • Fix inconsistent BLE state issue [#2629](https://github.com/particle-iot/device-os/pull/2629)
  • [wiring][gen3] Allow gen3 to select internal ADC reference source [#2619](https://github.com/particle-iot/device-os/pull/2619)
  • System setup and BLE threading improvements [#2587](https://github.com/particle-iot/device-os/pull/2587)
  • [quectel] Account for "eMTC" type while obtaining signal values [#2589](https://github.com/particle-iot/device-os/pull/2589)
  • + 2 more

๐Ÿ“ฆ INTERNAL

  • [test] turn off NCP before testing wiring/watchdog [#2627](https://github.com/particle-iot/device-os/pull/2627)
  • [test] Remove manual wakeup. Hibernate + watchdog on platforms that support it [#2620](https://github.com/particle-iot/device-os/pull/2620)
  • [test] add more watchdog test cases [#2617](https://github.com/particle-iot/device-os/pull/2617)
  • [test] mailbox support and support for resets within tests [#2611](https://github.com/particle-iot/device-os/pull/2611)
  • [test] Move `no_fixture_i2c` to correct dir and symlink to `integration/wiring` [#2558](https://github.com/particle-iot/device-os/pull/2558)
  • [test] Fix listening mode tests [#2534](https://github.com/particle-iot/device-os/pull/2534)
  • [test] Ensure thread07 test executes as intended [#2622](https://github.com/particle-iot/device-os/pull/2622)
  • Protobuf defs refactor / fixes submessage encoding after nanopb 0.4.5 upgrade [#2578](https://github.com/particle-iot/device-os/pull/2578)
  • + 2 more

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v4.1.0/particle_device-os@4.1.0.zip
  • ---
v5.3.2 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2)v5.3.2
technoblytechnoblyยท3y agoยทMay 18, 2023
GitHub

๐Ÿ“ฆ Device OS 5.3.2 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2).

  • _Released on May 18, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

๐Ÿ“ฆ ENHANCEMENTS

  • [rtl872x] SPI and GPIO HAL changes to support Neopixel [#2654](https://github.com/particle-iot/device-os/pull/2654)
  • [rtl872x] Implement WiFi.selectAntenna [#2651](https://github.com/particle-iot/device-os/pull/2651)

๐Ÿ› BUGFIXES

  • [nRF52] UART sleep/wakeup [#2652](https://github.com/particle-iot/device-os/pull/2652)
  • [rtl872x] Fix Wifi stack issues [#2649](https://github.com/particle-iot/device-os/pull/2649)
  • [rtl872x] BLE scanning panic [#2650](https://github.com/particle-iot/device-os/pull/2650)

๐Ÿ“ฆ INTERNAL

  • [rtl872x] Fix burnin GPIO and SPI Flash tests for photon 2 [#2653](https://github.com/particle-iot/device-os/pull/2653)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.3.2/particle_device-os@5.3.2.zip
  • ---
v5.3.1 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2)v5.3.1Pre-release
scott-brustscott-brustยท3y agoยทApril 13, 2023
GitHub

๐Ÿ“ฆ Device OS 5.3.1 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2).

  • _Released on April 13, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

๐Ÿ“ฆ ENHANCEMENTS

  • [rtl872x] Adds Wiring API System.backupRamSync() to manually backup `retained` variables [#2633](https://github.com/particle-iot/device-os/pull/2633)

๐Ÿ› BUGFIXES

  • [rtl872x] Fix problems waking from sleep mode [#2647](https://github.com/particle-iot/device-os/pull/2647)
  • Fixes inconsistent BLE state issues [#2629](https://github.com/particle-iot/device-os/pull/2629)
  • [rtl872x] Fixes pmic shared interrupt and usb detection [#2630](https://github.com/particle-iot/device-os/pull/2630)
  • [rtl872x] Fixes D7 configuration when exiting hibernate mode [#2631](https://github.com/particle-iot/device-os/pull/2631)
  • [rtl872x][bootloader] Fixes USB serial port not being connectable on AMD based Windows [#2625](https://github.com/particle-iot/device-os/pull/2625)[#2638](https://github.com/particle-iot/device-os/pull/2638)
  • [rtl872x] Fixes `retained` variables not being saved, now periodically saved every 10s [#2633](https://github.com/particle-iot/device-os/pull/2633)[#2642](https://github.com/particle-iot/device-os/pull/2642)[#2644](https://github.com/particle-iot/device-os/pull/2644)
  • [rtl872x] Fixes assertion failure waiting for connection events from the stack when `BLE.connect()` called [#2636](https://github.com/particle-iot/device-os/pull/2636)
  • [nRF52] Fixes watchdog timer reload value accuracy [#2635](https://github.com/particle-iot/device-os/pull/2635)
  • + 7 more

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.3.1/particle_device-os@5.3.1.zip
  • ---
v5.3.0 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2)v5.3.0Pre-release
technoblytechnoblyยท3y agoยทFebruary 22, 2023
GitHub

๐Ÿ“ฆ Device OS 5.3.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2).

  • _Released on February 21, 2023_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Static IP configuration support [#2621](https://github.com/particle-iot/device-os/pull/2621)
  • Hardware watchdog [#2595](https://github.com/particle-iot/device-os/pull/2595)[#2617](https://github.com/particle-iot/device-os/pull/2617)[#2620](https://github.com/particle-iot/device-os/pull/2620)
  • Ethernet GPIO config [#2616](https://github.com/particle-iot/device-os/pull/2616)
  • [wiring][gen3] Allow gen3 to select internal ADC reference source [#2619](https://github.com/particle-iot/device-os/pull/2619)

๐Ÿ“ฆ ENHANCEMENTS

  • [rtl872x] Support IO wakeup sources through IO expander.[#2604](https://github.com/particle-iot/device-os/pull/2604)[#2608](https://github.com/particle-iot/device-os/pull/2608)[#2614](https://github.com/particle-iot/device-os/pull/2614)

๐Ÿ› BUGFIXES

  • [rtl872x] enable factory reset feature [#2612](https://github.com/particle-iot/device-os/pull/2612)
  • [rtl872x] Dcache fixes for exflash HAL [#2623](https://github.com/particle-iot/device-os/pull/2623)
  • [rtl872x] fix overflow error in HAL_Delay_Microseconds [#2606](https://github.com/particle-iot/device-os/pull/2606)
  • [nRF52] BLE plus RTC sleep causes hardfault [#2615](https://github.com/particle-iot/device-os/pull/2615)
  • [rtl872x] hal: fix heap allocation issue in interrupt hal and postpone the mode button initialization. [#2624](https://github.com/particle-iot/device-os/pull/2624)
  • [rtl872x] bootloader: fix destination address flash page alignment in case of compressed modules [#2628](https://github.com/particle-iot/device-os/pull/2628)

๐Ÿ“ฆ INTERNAL

  • [photon2] Update FQC test with photon 2 pinout [#2610](https://github.com/particle-iot/device-os/pull/2610)
  • [test] mailbox support and support for resets within tests [#2611](https://github.com/particle-iot/device-os/pull/2611)
  • [bootloader] remove nanopb dependency[#2607](https://github.com/particle-iot/device-os/pull/2607)
  • Server key rotation [#2570](https://github.com/particle-iot/device-os/pull/2570)
  • Fix GCC platform build [#2613](https://github.com/particle-iot/device-os/pull/2613)[#2618](https://github.com/particle-iot/device-os/pull/2618)
  • Ensure thread07 test executes as intended [#2622](https://github.com/particle-iot/device-os/pull/2622)
  • [rtl872x] Fix watchdog tests; system/application thread stack size increase [#2626](https://github.com/particle-iot/device-os/pull/2626)
  • [test] turn off NCP before testing wiring/watchdog [#2627](https://github.com/particle-iot/device-os/pull/2627)
  • + 1 more

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.3.0/particle_device-os@5.3.0.zip
  • ---
v5.2.0 (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2)v5.2.0Pre-release
scott-brustscott-brustยท3y agoยทDecember 19, 2022
GitHub

๐Ÿ“ฆ Device OS 5.2.0 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/Tracker M/E SoM X/P2).

  • _Released on December 19, 2022_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

โœจ FEATURES

  • Initial support for BG95-M6 modem [#2555](https://github.com/particle-iot/device-os/pull/2555)

๐Ÿ“ฆ ENHANCEMENTS

  • [TrackerM] Collect cellular properties with system info [#2602](https://github.com/particle-iot/device-os/pull/2602)
  • [rtl872x] fixes System.ticks() [#2600](https://github.com/particle-iot/device-os/pull/2600)
  • System setup and BLE threading improvements [#2587](https://github.com/particle-iot/device-os/pull/2587)
  • [rtl872x] [freertos] [experimental] multi-step priority disinheritance [#2581](https://github.com/particle-iot/device-os/pull/2581)
  • [rtl872x] sleep improvements [#2586](https://github.com/particle-iot/device-os/pull/2586)
  • [rtl872x] fixes pinResetFast clearing too many pins and improves speed [#2582](https://github.com/particle-iot/device-os/pull/2582)
  • [rtl872x] prebootloader: enable BOR with lowest available thresholds [#2569](https://github.com/particle-iot/device-os/pull/2569)

๐Ÿ› BUGFIXES

  • [rtl872x] Fix USART/DMA deadlock [#2603](https://github.com/particle-iot/device-os/pull/2603)
  • [rtl872x] Free memory from rtl sdk in SystemISRTaskQueue [#2599](https://github.com/particle-iot/device-os/pull/2599)
  • [rtl872x] exflash: revert dcache invalidate calls after writes/erasures [#2598](https://github.com/particle-iot/device-os/pull/2598)
  • [rtl872x] Fixes a deadlock when requiring to enable RSIP [#2596](https://github.com/particle-iot/device-os/pull/2596)
  • [gen3] Use OTP Feature flag to change ADC reference source [#2597](https://github.com/particle-iot/device-os/pull/2597)
  • [rtl872x] hal: remove an assert in read()/peek() and instead adjust read/peek size [#2594](https://github.com/particle-iot/device-os/pull/2594)
  • [boron]Use the internal ADC reference on BRN404X [#2588](https://github.com/particle-iot/device-os/pull/2588)
  • [p2] Fixes the conflict between Flash API and XIP [#2561](https://github.com/particle-iot/device-os/pull/2561)
  • + 8 more

๐Ÿ“ฆ INTERNAL

  • [test] Use compatible pins for PWM tests on TrackerM [#2592](https://github.com/particle-iot/device-os/pull/2592)
  • [test] bump fastpin max limit to 10% [#2591](https://github.com/particle-iot/device-os/pull/2591)
  • [test] Add thresholds for trackerM for slo tests [#2590](https://github.com/particle-iot/device-os/pull/2590)
  • [test] Modify pins for trackerM spix tests [#2585](https://github.com/particle-iot/device-os/pull/2585)
  • [trackerm] TrackerM EVT v0.0.3 pinmap update [#2580](https://github.com/particle-iot/device-os/pull/2580)
  • Allow setting the ICCID of a virtual device [#2583](https://github.com/particle-iot/device-os/pull/2583)
  • Protobuf defs refactor / fixes submessage encoding after nanopb 0.4.5 upgrade [#2578](https://github.com/particle-iot/device-os/pull/2578)
  • Update nanopb to 0.4.5 [#2563](https://github.com/particle-iot/device-os/pull/2563)
  • + 6 more

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v5.2.0/particle_device-os@5.2.0.zip
  • ---
v4.0.2 (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X)v4.0.2
scott-brustscott-brustยท3y agoยทDecember 15, 2022
GitHub

๐Ÿ“ฆ Device OS 4.0.2 LTS is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Argon/Boron/B SoM/B5 SoM/Tracker/E SoM X).

  • _Released on December 15th, 2022_

๐Ÿ“ฆ Gen 3 256KB application binary support

  • 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:
  • 1. Compatibility with 128KB applications built with < Device OS 3.1 versions is maintained. Devices can still run them even if other parts have been upgraded to Device OS 3.1+.
  • 2. Upgrade process OTA (including product-based upgrades) is transparent.
  • 4. If using standalone Particle CLI installation, make sure it's updated to >= 2.12.0 version, which includes support for 256KB applications.
  • ---

๐Ÿ› BUGFIXES

  • [gen3] Use OTP Feature flag to change ADC reference source [#2597](https://github.com/particle-iot/device-os/pull/2597)
  • [boron]Use the internal ADC reference on some Gen 3 platforms [#2588](https://github.com/particle-iot/device-os/pull/2588)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v4.0.2/particle_device-os@4.0.2.zip
  • ---
v3.3.1 (Photon/P1/Electron/Argon/Boron/B SoM/B5 SoM/Tracker)v3.3.1Pre-release
scott-brustscott-brustยท3y agoยทNovember 14, 2022
GitHub

๐Ÿ“ฆ Device OS 3.3.1 Release is available in the [Web IDE](https://build.particle.io), Particle CLI and Workbench for (Photon/P1/Electron/Argon/Boron/B SoM/B5 SoM/Tracker).

  • _Released on November 14th, 2022_
  • ---

๐Ÿ› BUGFIXES

  • [Boron / B SoM] R410 PPP crash in network phase workaround [#2571](https://github.com/particle-iot/device-os/pull/2571)
  • [Cellular] R410 initialization SIM failure workaround [#2573](https://github.com/particle-iot/device-os/pull/2573)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v3.3.1/particle_device-os@3.3.1.zip
  • ---
v2.3.1 (Photon/P1/Electron/Argon/Boron/B SoM/B5 SoM/Tracker)v2.3.1Pre-release
scott-brustscott-brustยท3y agoยทNovember 14, 2022
GitHub

๐Ÿ“ฆ Device OS 2.3.1 Default Release is available in the [Web IDE](https://build.particle.io), Particle Workbench and Particle CLI for (Photon/P1/Electron/Argon/Boron/B SoM/B5 SoM/Tracker).

  • _released on November 14, 2022_
  • ---

๐Ÿ› BUGFIXES

  • [Cellular] R410 initialization SIM failure workaround [#2573](https://github.com/particle-iot/device-os/pull/2573)
  • [Boron / B SoM] R410 PPP crash in network phase workaround [#2571](https://github.com/particle-iot/device-os/pull/2571)
  • ---

๐Ÿ“ฆ System Binaries (all devices)

  • https://github.com/particle-iot/device-os/releases/download/v2.3.1/particle_device-os@2.3.1.zip
  • ---