Skip to content

Commit eae3cfe

Browse files
committed
bump module version for 2.0.0 (2008)
1 parent b646b21 commit eae3cfe

File tree

6 files changed

+150
-5
lines changed

6 files changed

+150
-5
lines changed

CHANGELOG.md

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,145 @@
1+
## 2.0.0
2+
3+
### BREAKING CHANGES
4+
5+
- Mesh support removed. 2.x+ DeviceOS releases no longer have Mesh capabilities [#2068](https://github.com/particle-iot/device-os/pull/2068)
6+
- Xenon platform support removed. 2.x+ DeviceOS releases no longer support Xenons [#2068](https://github.com/particle-iot/device-os/pull/2068)
7+
- Minimum ARM GCC version required increased to 9.2.1 [#2123](https://github.com/particle-iot/device-os/pull/2123)
8+
- `SPISettings` class is always available even if compiling without Arduino compatibility [#2138](https://github.com/particle-iot/device-os/pull/2138)
9+
- Add deprecation notices for some of the renamed HAL APIs (with appropriate replacements) [#2148](https://github.com/particle-iot/device-os/pull/2148)
10+
11+
### DEPRECATION
12+
13+
- [Cellular] Mark `CellularSignal::rssi` and `CellularSignal::qual` as deprecated [#2182](https://github.com/particle-iot/device-os/pull/2182)
14+
15+
### FEATURES
16+
17+
- [Cellular] Read IMSI when multi-IMSI SIM performs the switch [#2174](https://github.com/particle-iot/device-os/pull/2174) [#2179](https://github.com/particle-iot/device-os/pull/2179)
18+
- Allow UDP server public key to be set in DCT programmatically [#2178](https://github.com/particle-iot/device-os/pull/2178)
19+
- [Gen 2] Wake-up by analog value [#2172](https://github.com/particle-iot/device-os/pull/2172)
20+
- [Gen 2] Wake-up by USART [#2173](https://github.com/particle-iot/device-os/pull/2173)
21+
- [Gen 3] Add `ftruncate()` and `truncate()` APIs [#2195](https://github.com/particle-iot/device-os/pull/2195)
22+
- Expose functions to fetch serial / mobile secret from OTP-area [#2190](https://github.com/particle-iot/device-os/pull/2190)
23+
- [Electron] Wake-up by cellular [#2186](https://github.com/particle-iot/device-os/pull/2186)
24+
- [Gen 3] Wake up from STOP/ULP/Hibernate modes by analog pin [#2163](https://github.com/particle-iot/device-os/pull/2163)
25+
- [Gen 3] Wake up from STOP/ULP modes by WiFi/Cellular and UART [#2162](https://github.com/particle-iot/device-os/pull/2162)
26+
- [Gen 3] `pinSetDriveStrength()` API [#2157](https://github.com/particle-iot/device-os/pull/2157)
27+
- Add `os_queue_peek()` and make sure that queues and semaphores can be accessed from ISRs [#2156](https://github.com/particle-iot/device-os/pull/2156) [#2074](https://github.com/particle-iot/device-os/pull/2074)
28+
- [Gen 3 / Cellular] Proactively attempt to recover from a number of failed cellular registration states [#2150](https://github.com/particle-iot/device-os/pull/2150)
29+
- [Gen 3 / Cellular] Reset cellular modem if failing to establish PPP session for over 5 minutes [#2150](https://github.com/particle-iot/device-os/pull/2150)
30+
- [Gen 2] Blocking UDP socket reads with a timeout [#2150](https://github.com/particle-iot/device-os/pull/2150)
31+
- Power-loss resistant bootloader updates through MBR [#2151](https://github.com/particle-iot/device-os/pull/2151)
32+
- Ultra low power sleep mode [#2149](https://github.com/particle-iot/device-os/pull/2149) [#2133](https://github.com/particle-iot/device-os/pull/2133) [#2132](https://github.com/particle-iot/device-os/pull/2132) [#2129](https://github.com/particle-iot/device-os/pull/2129) [#2130](https://github.com/particle-iot/device-os/pull/2130) [#2125](https://github.com/particle-iot/device-os/pull/2125) [#2136](https://github.com/particle-iot/device-os/pull/2136)
33+
- Additional APN settings based on ICCIDs [#2144](https://github.com/particle-iot/device-os/pull/2144)
34+
- NTP-based internet test [#2118](https://github.com/particle-iot/device-os/pull/2118)
35+
- [Gen 3] Warm bootup of cellular modems and cellular connectivity resumption [#2102](https://github.com/particle-iot/device-os/pull/2102) [#2146](https://github.com/particle-iot/device-os/pull/2146)
36+
- Support for compressed / combined binaries in OTA updates [#2097](https://github.com/particle-iot/device-os/pull/2097)
37+
- ARM GCC 9 support [#2103](https://github.com/particle-iot/device-os/pull/2103)
38+
- Device-initiated describe messages [#2024](https://github.com/particle-iot/device-os/pull/2024)
39+
- Notify the cloud about planned disconnections [#1899](https://github.com/particle-iot/device-os/pull/1899)
40+
41+
### ENHANCEMENTS
42+
43+
- [Gen 3] Enable Network Diagnostics/Vitals [#2230](https://github.com/particle-iot/device-os/pull/2230)
44+
- Remove warning for publish and subscribe scope deprecation [#2209](https://github.com/particle-iot/device-os/pull/2209)
45+
- Export some common standard C library functions through dynalib [#2225](https://github.com/particle-iot/device-os/pull/2225)
46+
- [Electron] Monitor cellular modem for brown-outs and resets/crashes and perform reinitialization when required [#2219](https://github.com/particle-iot/device-os/pull/2219)
47+
- Clear OTA slots after updating firmware modules to improve reliability of OTA updates [#2176](https://github.com/particle-iot/device-os/pull/2176)
48+
- [Cellular] Replace `AT+COPS=2` with `AT+CFUN=0` or `AT+CFUN=4` to prevent longer registration times [#2177](https://github.com/particle-iot/device-os/pull/2177)
49+
- [Cellular] IMSI-based operator lookup, operator-specific enhancements [#2185](https://github.com/particle-iot/device-os/pull/2185)
50+
- [Electron] Recovery mechanics for cases when the modem becomes unresponsive [#2198](https://github.com/particle-iot/device-os/pull/2198)
51+
- Add `printf` attributes to appopriate wiring functions to generate `-Wformat` warnings [#2201](https://github.com/particle-iot/device-os/pull/2201)
52+
- Change `Time::now()` return type to 32-bit `time32_t` to reduce potential issues with `printf` formatting of 64-bit `time_t` [#2201](https://github.com/particle-iot/device-os/pull/2201)
53+
- [Gen 3] Workaround when unable to obtain DNS servers from remote PPP peer [#2165](https://github.com/particle-iot/device-os/pull/2165)
54+
- System power manager blocks access to FuelGauge for 500ms in its own thread, instead of system when waking up from STOP/ULP sleep mode [#2159](https://github.com/particle-iot/device-os/pull/2159)
55+
- [wiring] Pin operations are not dependent on wiring C++ peripheral object initialization (e.g. `SPI`, `Wire` etc) [#2157](https://github.com/particle-iot/device-os/pull/2157)
56+
- [Gen 3] Default SPI pin drive strength changed to high [#2157](https://github.com/particle-iot/device-os/pull/2157)
57+
- [Gen 3] Restore original `BASEPRI` when exiting FreeRTOS critical section [#2150](https://github.com/particle-iot/device-os/pull/2150)
58+
- [Gen 3 / Cellular] Do not use packet buffers from pool in TX path [#2150](https://github.com/particle-iot/device-os/pull/2150)
59+
- [Gen 3 / Cellular] Reliable data mode entry when attempting to establish PPP connection [#2150](https://github.com/particle-iot/device-os/pull/2150)
60+
- [Gen 3] Changes the implementation of Nordic SDK critical sections to use `BASEPRI` [#2101](https://github.com/particle-iot/device-os/pull/2101)
61+
- Allow resetting the device and disconnecting from the cloud via low-level USB vendor requests [#2142](https://github.com/particle-iot/device-os/pull/2142)
62+
- [Cellular] When resuming cellular connection, do not run `COPS=0` again to avoid triggering PLMN reselection [#2139](https://github.com/particle-iot/device-os/pull/2139)
63+
- Reduce runtime RAM usage by sharing newlib `_impure_ptr` between modules [#2126](https://github.com/particle-iot/device-os/pull/2126)
64+
- [Electron] Use `snprintf()` instead of `sprintf()` [#2122](https://github.com/particle-iot/device-os/pull/2122)
65+
- [Gen 3] System thread wakeup on cloud data [#2113](https://github.com/particle-iot/device-os/pull/2113)
66+
- [Argon] Hide unsupported WiFi wiring APIs [#2120](https://github.com/particle-iot/device-os/pull/2120)
67+
- [B5 SoM / Tracker] Disable 2G fallback for BG96-based devices [#2112](https://github.com/particle-iot/device-os/pull/2112)
68+
- [wiring] Changes default I2C timeouts when communicating with FuelGauge and PMIC to more manageable values [#2096](https://github.com/particle-iot/device-os/pull/2096)
69+
- [wiring] Propagate low-level I2C errors in `FuelGauge` methods [#2094](https://github.com/particle-iot/device-os/pull/2094)
70+
- [Gen 3] Network stack enhancements [#2079](https://github.com/particle-iot/device-os/pull/2079)
71+
- Send describe messages as confirmable CoAP messages [#2024](https://github.com/particle-iot/device-os/pull/2024)
72+
- [Argon] OTA adjustments [#2045](https://github.com/particle-iot/device-os/pull/2045)
73+
- Remove support for unused control requests [#2064](https://github.com/particle-iot/device-os/pull/2064)
74+
- RTC HAL refactoring to increase time-keeping precision [#2123](https://github.com/particle-iot/device-os/pull/2123)
75+
- Y2k38 `time_t` size change adjustments [#2123](https://github.com/particle-iot/device-os/pull/2123)
76+
- [wiring] Refactor wiring `Time` class to use reentrant versions of libc time functions [#2123](https://github.com/particle-iot/device-os/pull/2123)
77+
78+
### BUGFIXES
79+
80+
- [Gen 2] Fix an issue in Sleep 2.0 API with STOP and ULP sleep modes potentially blocking user application on wake-up [#2238](https://github.com/particle-iot/device-os/pull/2238)
81+
- [Electron] Fix a regression in `+C*REG` URC parsing [#2239](https://github.com/particle-iot/device-os/pull/2239)
82+
- [Gen 3] Fix a potential crash when using sleep with multiple pins specified as wake-up sources together with BLE [#2227](https://github.com/particle-iot/device-os/pull/2227)
83+
- [Electron] 2G Electrons with uBlox G350 should use `AT+CPWROFF` exclusively for powering off the modem [#2229](https://github.com/particle-iot/device-os/pull/2229)
84+
- [Cellular] Set `INPUT_PULLUP` pin mode for FuelGauge and PMIC interrupt pins [#2207](https://github.com/particle-iot/device-os/pull/2207)
85+
- Disconnect from the cloud before going into sleep [#2206](https://github.com/particle-iot/device-os/pull/2206)
86+
- Use `always_inline` attribute for deprecated HAL API [#2204](https://github.com/particle-iot/device-os/pull/2204)
87+
- [Gen 3] Set SPI `MOSI` drive strength as high by default [#2214](https://github.com/particle-iot/device-os/pull/2214) [nrf5_sdk#12](https://github.com/particle-iot/nrf5_sdk/pull/12)
88+
- [Gen 3] Fix LED behavior in case of network loss before cloud connection is established [#2210](https://github.com/particle-iot/device-os/pull/2210)
89+
- [Gen 3 / Cellular] Allow Software Default MNO profile to be used when chosen by SIM ICCID-based selection [#2211](https://github.com/particle-iot/device-os/pull/2211)
90+
- [Cellular] Allow Software Default MNO profile to be used with certain version of SARA R410 modem firmware, where MNO profile 100 is not supported [#2213](https://github.com/particle-iot/device-os/pull/2213)
91+
- [Boron / B SoM] Workaround for SARA R410 PPP ConfReq behavior [#2208](https://github.com/particle-iot/device-os/pull/2208) [lwip#8](https://github.com/particle-iot/lwip/pull/8)
92+
- Fix `CellularSignal` deprecation messages [#2221](https://github.com/particle-iot/device-os/pull/2221)
93+
- [Cellular] Fix PMIC reducing current on warm boot and causing modem brownouts [#2215](https://github.com/particle-iot/device-os/pull/2215)
94+
- [Electron] Workaround for modem HAL relying on system networking code to re-attempt initialization [#2218](https://github.com/particle-iot/device-os/pull/2218)
95+
- [Electron] Fix modem log timestamps starting with a high number on boot [#2169](https://github.com/particle-iot/device-os/pull/2169)
96+
- [Cellular] Make sure 2G fallback stays disabled on Quectel BG96-based platforms [#2175](https://github.com/particle-iot/device-os/pull/2175)
97+
- [Gen 3] Fix USART wake-up source configuration in Ultra Low Power mode, causing immediate sleep mode exit [#2180](https://github.com/particle-iot/device-os/pull/2180)
98+
- [Gen 3] Fix tone generation behavior with zero duration (infinite) [#2183](https://github.com/particle-iot/device-os/pull/2183)
99+
- Exclude printable objects from `Print` overload taking integral and unsigned integer convertible types [#2181](https://github.com/particle-iot/device-os/pull/2181)
100+
- [Boron / B SoM] Fix warm bootup on uBlox SARA R4-based devices [#2188](https://github.com/particle-iot/device-os/pull/2188)
101+
- [Gen 2] Support repeated-START between WRITE and READ operations in I2C Slave mode [#2184](https://github.com/particle-iot/device-os/pull/2184) [#2193](https://github.com/particle-iot/device-os/pull/2193)
102+
- Fastpin functions should not depend on the object initialization order [#2194](https://github.com/particle-iot/device-os/pull/2194)
103+
- [Electron] Fix modem power leakage when the modem is in an unknown state when going into a sleep mode [#2197](https://github.com/particle-iot/device-os/pull/2197)
104+
- [BLE] Fix issue with `.serviceUUID()` not returning UUID when there is an array [#2202](https://github.com/particle-iot/device-os/pull/2202)
105+
- [Gen 3] Default SPI pin drive strength changed to high [7f2e8a711bd14abd1e094679f1cc6d26742cb6c9](https://github.com/particle-iot/device-os/commit/7f2e8a711bd14abd1e094679f1cc6d26742cb6c9)
106+
- [wiring] `Servo` object should deinit its pin when destructed [#2150](https://github.com/particle-iot/device-os/pull/2150)
107+
- Fix an issue with `loop()` not being executed in `SEMI_AUTOMATIC` modem when network interfaces are down [#2150](https://github.com/particle-iot/device-os/pull/2150)
108+
- [Gen 3] Fix cycle counter synchronization when processing RTC overflow events [#2150](https://github.com/particle-iot/device-os/pull/2150)
109+
- [Electron] Increase default AT command timeouts [#2150](https://github.com/particle-iot/device-os/pull/2150)
110+
- [Gen 3] Move PWM-capable pins from the PWM peripheral shared with RGB pins when possible [#2150](https://github.com/particle-iot/device-os/pull/2150)
111+
- [Gen 3 / Cellular] Call into LwIP PPP code to indicate `PPP_IP` protocol is finished [#2150](https://github.com/particle-iot/device-os/pull/2150)
112+
- [Gen 3] Fix BLE event processing while in STOP/ULP sleep mode [#2155](https://github.com/particle-iot/device-os/pull/2155)
113+
- [Gen 3] `Cellular.command()` should check NCP state before attempting to execute command [#2110](https://github.com/particle-iot/device-os/pull/2110) [#2153](https://github.com/particle-iot/device-os/pull/2153)
114+
- [Gen 2] Fix RTC thread-safety issues when accessing RTC peripheral [#2154](https://github.com/particle-iot/device-os/pull/2154)
115+
- Workaround for Gen 3 devices not connecting to the cloud in non-automatic threaded mode [#2152](https://github.com/particle-iot/device-os/pull/2152)
116+
- Enable PMIC buck converter on boot by default [#2147](https://github.com/particle-iot/device-os/pull/2147)
117+
- [Gen 3] Reliably turn off the cellular modem when going into sleep mode to reduce current consumption [#2110](https://github.com/particle-iot/device-os/pull/2110)
118+
- [Gen 3] Fixes the behavior when the USB host puts the device into suspended state [#2101](https://github.com/particle-iot/device-os/pull/2101)
119+
- [Gen 3] Fixes potential deadlock in SPI HAL [#2101](https://github.com/particle-iot/device-os/pull/2101) [#2091](https://github.com/particle-iot/device-os/pull/2091)
120+
- [Gen 3] Filter out non-vendor requests in USB control request handler [#2101](https://github.com/particle-iot/device-os/pull/2101)
121+
- [Gen 3] SOF-based USB Serial port state detection [#2101](https://github.com/particle-iot/device-os/pull/2101)
122+
- [Gen 3] Fixes an issue with devices not waking up by RTC from STOP sleep mode [#2134](https://github.com/particle-iot/device-os/pull/2134)
123+
- [Gen 3] Fix `rename()` filesystem call [#2141](https://github.com/particle-iot/device-os/pull/2141)
124+
- [Gen 3] Treat failure to open data channel as critical error [#2139](https://github.com/particle-iot/device-os/pull/2139)
125+
- [Photon] Fix WPA Enterprise X509 certificate parsing [#2126](https://github.com/particle-iot/device-os/commit/428940879f5fd1d5a3bdd658260ee45a9f7aca90)
126+
- Use newlib-nano headers when compiling [#2126](https://github.com/particle-iot/device-os/pull/2126)
127+
- [Gen 2] Reset the device after applying an update while in listening mode [#2127](https://github.com/particle-iot/device-os/pull/2127)
128+
- [Electron] Process `CEREG: 0` URCs on R4-based devices to detect loss of cellular connectivity [#2119](https://github.com/particle-iot/device-os/pull/2119)
129+
- [Cellular] Fixes the issue that FuelGauge doesn't work as expected after being woken up [#2116](https://github.com/particle-iot/device-os/pull/2116)
130+
- [Electron] Fixes buffer overrun in modem hal [#2115](https://github.com/particle-iot/device-os/pull/2115)
131+
- [WiFi] `WiFiCredentials::setSecurity()` should be taking wiring security type (e.g. `WPA2` instead of `WLAN_SEC_WPA2`) [#2098](https://github.com/particle-iot/device-os/pull/2098)
132+
- [Boron] Fixes SARA R4 power on sequence where the default attempt should be made with runtime baudrate [#2107](https://github.com/particle-iot/device-os/pull/2107)
133+
- [Gen 2] Fixes an issue with I2C bus pins driven low if building with JTAG/SWD enabled [#2080](https://github.com/particle-iot/device-os/pull/2080)
134+
- [Boron] Fixes an issue with SARA R4 modems on LTE Borons becoming unresponsive when sending substantial amount of network data continuously [#2100](https://github.com/particle-iot/device-os/pull/2100)
135+
- Fix session resumption in `AUTOMATIC` system mode [#2024](https://github.com/particle-iot/device-os/pull/2024)
136+
137+
### INTERNAL
138+
139+
- Run on-device tests under the DeviceOS test runner [#2140](https://github.com/particle-iot/device-os/pull/2140) [#2150](https://github.com/particle-iot/device-os/pull/2150)
140+
- Remove old deprecated platforms [#2150](https://github.com/particle-iot/device-os/pull/2150)
141+
- Addresses multiple issues in on-device no-fixture tests [#2150](https://github.com/particle-iot/device-os/pull/2150)
142+
1143
## 2.0.0-rc.4
2144

3145
### ENHANCEMENTS

build/release.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/bash
22
set -o errexit -o pipefail -o noclobber -o nounset
33

4-
VERSION="2.0.0-rc.4"
4+
VERSION="2.0.0"
55

66
function display_help ()
77
{

build/version.mk

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
VERSION_STRING = 2.0.0-rc.4
1+
VERSION_STRING = 2.0.0
22

33
# PRODUCT_FIRMWARE_VERSION reported by default
44
# FIXME: Unclear if this is used, PRODUCT_FIRMWARE_VERSION defaults to 65535 every release
5-
VERSION = 2007
5+
VERSION = 2008
66

77
CFLAGS += -DSYSTEM_VERSION_STRING=$(VERSION_STRING)

modules/shared/system_module_version.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Skip to next 100 every v0.x.0 release (e.g. 108 for v0.6.2 to 200 for v0.7.0-rc.1)
22
# Bump by 1 for every prerelease or release with the same v0.x.* base.
3-
COMMON_MODULE_VERSION ?= 2007
3+
COMMON_MODULE_VERSION ?= 2008
44
SYSTEM_PART1_MODULE_VERSION ?= $(COMMON_MODULE_VERSION)
55
SYSTEM_PART2_MODULE_VERSION ?= $(COMMON_MODULE_VERSION)
66
SYSTEM_PART3_MODULE_VERSION ?= $(COMMON_MODULE_VERSION)

system/inc/system_version.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,8 @@ extern "C" {
163163
#define SYSTEM_VERSION_v200RC2 SYSTEM_VERSION_RC(2, 0, 0, 2)
164164
#define SYSTEM_VERSION_v200RC3 SYSTEM_VERSION_RC(2, 0, 0, 3)
165165
#define SYSTEM_VERSION_v200RC4 SYSTEM_VERSION_RC(2, 0, 0, 4)
166-
#define SYSTEM_VERSION SYSTEM_VERSION_v200RC4
166+
#define SYSTEM_VERSION_v200 SYSTEM_VERSION_DEFAULT(2, 0, 0)
167+
#define SYSTEM_VERSION SYSTEM_VERSION_v200
167168

168169
/**
169170
* Previously we would set the least significant byte to 0 for the final release, but to make
@@ -291,6 +292,7 @@ extern "C" {
291292
#define SYSTEM_VERSION_200RC2
292293
#define SYSTEM_VERSION_200RC3
293294
#define SYSTEM_VERSION_200RC4
295+
#define SYSTEM_VERSION_200
294296

295297
typedef struct __attribute__((packed)) SystemVersionInfo
296298
{

system/system-versions.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,7 @@
129129
| 1003 | 2005 | 2.0.0-rc.2 | Photon, P1, Electron, Argon, Boron, B SoM, B5 SoM |
130130
| 1003 | 2006 | 2.0.0-rc.3 | Photon, P1, Electron, Argon, Boron, B SoM, B5 SoM, Tracker |
131131
| 1003 | 2007 | 2.0.0-rc.4 | Photon, P1, Electron, Argon, Boron, B SoM, B5 SoM, Tracker |
132+
| 1003 | 2008 | 2.0.0 | Photon, P1, Electron, Argon, Boron, B SoM, B5 SoM, Tracker |
132133

133134
[1] For 0.8.0-rc.1, The v101 bootloader was also released in the Github releases as v200. Thus the next released bootloader in the 0.8.x line should be v201. As of 4/5/2018: 22 device had v200 bootloaders.
134135

0 commit comments

Comments
 (0)