Hey @Paul_M – thanks for taking the time to draft this note. Given your question, I wanted to spend a little bit of time providing a high level perspective on connectivity management and why we're investing in LTS releases for Device OS.
What should be true
Let's start with a statement – our goal is to provide automatic, reliable, and resilient Cloud connectivity management for all Particle devices. This means that:
- Devices should not require manual reset to recover their cloud connection
- Customers should rarely, if ever, need to manually manage connection health
- If they need to do so, it should be done via tightly scoped Device OS APIs and not through brute force management of the cellular modem or MCU (which can interfere with Device OS and create separate, negative interactions of their own)
Where we are not delivering against these standards, it is imperative for us to provide high quality support to better understand the root cause of the issue so that it can be resolved. This is doubly true as we invest in Device OS 2.x, our first long term support release for Device OS.
The role of LTS (Device OS 2.x)
One of the biggest factors that has affected reliability of Particle devices is the hit or miss nature of historical individual Device OS releases. Because we have typically combined bug fixes and feature development into a single release branch, customers have reported varying levels of success with different versions of Device OS depending on what features they are using and whether/where regressions were introduced.
In the Spring, we announced our intention to build an LTS release branch for Device OS. Long Term Support (LTS) releases for Device OS are independent branches of Device OS that are feature-frozen in time. They do not receive updates with new features, API changes, or improvements that change the function or standard behavior of the device. You can learn more about LTS releases in our documentation, here.
The 2.0.0-rc.1
release that you referenced in your post is the first, alpha candidate for Device OS 2.0. We have frozen feature development for this release line and will continue to test, identify, diagnose, and resolve issues over the next several months until it reaches GA quality and delivers the most reliable development experience of any Device OS, including v1.3.1-rc.1
which you have had success with in the past.
What version of Device OS should I use?
Once LTS is released in General Availability, this question will have a very simple answer – we recommend that customers who value reliability over the latest and greatest features use the latest version of Device OS from our LTS release line (currently 2.x).
Right now, because we have only very recently released the first 2.x alpha release, it may not yet be the best for your production application. While we encourage you to test against this new release, you should only deploy it to remote devices when you are satisfied that it meets or exceeds the reliability of your existing Particle application.
In the meantime, we will continue to patch issues that we identify and will gladly continue to support customers on older versions of Device OS with issues that they discover.