Hello Particle community!
We recently shipped a new version of Gen 3 firmware,
v080-rc.26, which contained fixes for some of the most disruptive and urgent issues impacting the usage of our Gen 3 hardware. With that release behind us, I wanted to take the time to provide some visibility on next steps for our engineering team.
My aim is to provide an update like this one as often as possible in order to put into practice one of our most important company values, openness. To that end, if you have feedback on this update or the content in it, I encourage you to reply to this post.
Let’s get into it!
Where we’re at today
Over the last couple of weeks, our internal engineering team has been working with individuals in the community to resolve what quickly emerged as the most disruptive issues preventing the use of our Gen 3 hardware as expected.
There are three very important messages that I’d like to make a point to share with you all:
The getting started experience for too many of you was not to our standards. Particle prides itself on making what would otherwise be complicated and frustrating development flows delightfully simple. Our goal is to help customers focus on what they’re building, instead of futzing around with configuration of the tools and technologies that make it possible.
Although we tested our new mobile-based development flows on a variety of devices and routers, it became clear to us after shipping that the breadth of that testing was not sufficient to reveal the degraded performance on various Android devices and IPv6-enabled networks. This prevented some customers from being able to configure and use their newly-purchased hardware for the first time, which sucks.
We’re deeply appreciative of your feedback. Part of what has allowed us to understand and resolve some of the most disruptive issues affecting customers is the willingness of our community to participate with device testing, in-depth debugging, and issue logging. We do not take this engagement for granted, and are deeply appreciative to have such a fantastic and impressive community of users.
We’re committed to making our 3rd Generation of hardware the best yet. In light of the statement above, I want to make it explicitly clear that we are committed to improving the development experience with Gen 3 hardware until it meets, then exceeds the development experience of the Photon and Electron. We view the unified form factor, Bluetooth-based setup process, onboard JTAG header (for development/Debugging with Workbench), and standardized networking architecture as key features that will advance the quality and stability of the Particle development experience beyond what was previously possible.
At the end of last week we released
v080-rc.26 which represented our first major effort to address the highest impact issues with our out-of-box firmware experience with
rc.25. The new release,
rc.26, addresses the following issues:
- Resolved issue preventing customers from scanning Xenon devices
- Improved reliability of OpenThread mesh networking
- Improved wireless transmission range between Gen 3 devices over mesh
- Improved Bluetooth compatibility with Android devices
- Improved compatibility with IPv6 enabled networks
For more information on that fix and how to upgrade, click here.
I also want to take the time as a part of this update to share the issues our team is currently focused on.
Ensuring that customers can successfully setup and claim their new hardware is our #1 priority. In addition to the features we’ve already shipped via mobile updates for iOS/Android and
rc.26, the following is a list of areas we’re investigating to further improve the setup experience:
We recently shipped iOS and Android builds with debug logging to simplify and streamline collection of device logs
We’re improving auto-focus for data matrix scanning which has proved an issue on older phones
We’ve started an overhaul of the iOS internal UI layer to add support for “back” button functionality to avoid needing to restart the device setup process in the event of a mistake.
Our product and engineering team is starting the work to build out a parallel setup flow powered by the Particle CLI, which should make it possible for users to configure devices over the wire if they are unable to do so with a mobile device. This will not be possible to deliver before sometime in Q1, but is at the top of our priority list.
Network reliability and performance
We’ve successfully identified and confirmed a sneaky bug in Nordic’s 802.15.4 driver and are working closely with Nordic to find a fix. We believe that this is the source of the SOS 7 / Panic bug that users have been reporting in the community.
We’re planning on upgrading to the most recent version of OpenThread, which includes some minor fixes and improvements that we believe will improve the quality and reliability of interactions between devices on Particle Mesh networks.
Debugging and diagnostics
We’re working on porting the
Cellular.command()API to Gen 3 devices as a tool to help debug cellular issues with tools like our Cellular Helper firmware and simplify the setup of third-party SIM cards
We’ve begun spec’ing out an API to expose Mesh-level network diagnostic information like topology that’s currently available via OpenThread, but doing so in a thread-safe and Wiring-friendly way. This will make it easier for us to diagnose stability issues caused by device networking roles within the Mesh network (gateway vs. repeater vs. endpoint).
Feature-parity with Gen 2 hardware
- In parallel to the development priorities listed above, we’re on the lookout for regressions in Device OS APIs, firmware libraries, and development tools between Gen 2 and Gen 3 hardware. We’re compiling a list of known limitations here – let us know if there are others we should add to our development backlog.
If you are willing, please help by sharing your feedback about our 3rd Generation of hardware. We hope to continue to ask these questions after each major update, ensuring that our efforts are being focused in the areas where we can provide the greatest impact.
rc.26 improve your development experience with Particle Gen 3 hardware?
- I haven’t tried the update yet
On a scale of 1-10, how would you rate the overall quality of the Gen 3 development experience with
Have more specific feedback? Leave us a note below.