Particle Tools Changelog


#1

Hello Particle developers!

At Particle, our team of engineers is constantly working to better our development tools by building exciting new features, improving product reliability, and investing in educational content and documentation.

The purpose of this post is to provide you all with real-time, consolidated updates on new features and improvements to the Particle platform and our developer tools.

Each update will be just a snippet of information and include links to further information and documentation of the change.

Hope you enjoy! First updates to come shortly :slight_smile:

##Summary of Improvements

11/11/2016 - Web IDE: Signal a device (link )
11/14/2016 - Console: Release ownership of a SIM card (link)
11/16/2016 - Tinker: v2.1 on iOS (link)
11/16/2016 - Console: Integration rate limit visibility (link)
11/17/2016 - CLI: Updated installer for Windows (link)
11/25/2016 - Web IDE: Firmware version detection and automatic device status updates (link)
11/25/2016 - Firmware: v0.6.0 (link)
12/02/2016 - Console: Azure IoT Hub Integration (beta) (link)
12/12/2016 - Console: Azure IoT Hub Custom Data Payloads (link)
12/14/2016 - Instructions for local compilation (link)
12/20/2016 - Firmware v0.6.1-rc.1 (link)
01/23/2017 - Firmware: New Firmware Library Manager (link)
01/23/2017 - Firmware: v0.6.1-rc.2 (link)
01/26/2017 - Console: SIM management for products (link)
01/31/2017 - Web IDE: Quick Help Drawer (link)
02/02/2017 - Preprocessor improvements (link)
02/07/2017 - CLI: Particle CLI 1.19.4 (link)
02/07/2017 - Web IDE: Bug fixes and improvements (link)
02/07/2016 - Docs: New FAQ on Eclipse Debugging (link)
02/08/2017 - Docs: webhooks and search (link)
02/09/2017 - Console: Create products using Bluz (link)
03/02/2017 - Console: Edit integrations (link)
03/01/2017 - Firmware: v0.6.1 (link)
03/02/2017 - Web IDE: Status bar (link)
03/16/2017 - Console: Functions & Variables (link)
03/23/2017 - API now sorts device lists by last connection time by default (link)
03/29/2017 - CLI version 1.21.0 (link)
03/30/2017 - Updates to Particle on Raspberry Pi (link)
03/31/2017 - Major updates to mobile SDKs and support! (link)
04/03/2017 - Code sharing in Web IDE (link)
04/05/2017 - Firmware v0.6.2-rc.1 (link)
04/19/2017 - Product Development Devices (link)
04/24/2017 - Google Maps Integration (link)
04/27/2017 - Firmware v0.6.2-rc.2 (link)
05/18/2017 - Web-based Photon (link)
06/06/2017 - Publish an event in Console (link)


Thanks Particle!
#4

##November 2016
11/11/16 - Signal a device

We’ve added the ability to “signal” a device in the Web IDE, under the device details view for any Particle device. Clicking the Signal button will trigger a rainbow LED pattern on the selected device. You can deactivate the LED pattern once the device is identified by clicking the Stop signaling button. Note that you can only signal devices that are currently online (breathing cyan dot next to the device name).

This is useful when you want to flash firmware to a particular device that you have forgotten the name of, or testing if a device is responding to incoming messages despite it showing the cyan RGB led (online).


What is SIGNAL control do in Build > Devices?
#5

11/14/16 - Release ownership of a SIM card

It is now possible in the console to remove yourself as the owner of a Particle SIM card. This is useful if you are interested in giving your SIM card to another person, or if you are sure that you won’t be using the SIM card moving forward.

Releasing ownership of a SIM card will do the following:

  • Disassociate the SIM card from your Particle account
  • Deactivate the SIM card
  • Stop recurring charges for SIM data plan (and close out for any outstanding amount due)

You can release ownership of a SIM card right from the billing page of the Console:


#6

11/16/16 - Tinker v2.1 on iOS

We’ve got a new release of Tinker, our mobile app, for iOS! This update fixes a few bugs from our v2.0 release, and includes the following new features:

  • NEW - Support for Raspberry Pi
  • NEW - Skip the welcome screen if you’re already signed up
  • FIXED - Device naming/renaming bug
  • FIXED - Squashed bugs during SoftAP configuration and device setup

There are a bunch more features and fixes included in the release, so be sure to check it out! You can view the full list of changes and improvements here, as well as download the new version of the app (v2.1) in the Apple App Store


#7

11/16/16 - Integration rate limit visibility

You now have the ability to see specific integration errors related to rate limiting in the audit logs for integrations on the Console! This can help you more accurately diagnose potential issues with your integrations in production.


#8

11/17/16 - Updated CLI Installer for Windows

The CLI installer for Windows has been improved. The CLI that is installed will now automatically update to new CLI versions, and also includes a build of OpenSSL, which is required for some advanced CLI features like key generation (particle keys new and particle keys doctor, for example).

To download the new CLI installer, visit this download page.


#9

11/25/16 - Firmware version detection and automatic device status updates in Build IDE

Since its release, Electron users were able to see what firmware version is running on their devices from tools like Build IDE. Now this feature is also available for Photons, P1’s and some compounds like Bluz.

The same information can be also fetched using API when listing devices.

We also made two changes in Build IDE:

  • improved how device connectivity status is being refreshed, making it more reliable and responsive.
  • removed Electron online icon as it was misleading due to nature of cellular connection

Firmware version detection
Web IDE Devices section, showing Device in Safe Mode
#10

11/25/16 - Firmware v0.6.0

Firmware v060 has been released for all Particle devices. This is a huge update to our system firmware that comes with a ton of new features and bug fixes.

The biggest feature is a brand new logging library for flexible system and application logging. Docs for the improved logging system can be found here. For a full list of improvements, please check out our Particle Firmware Updates Thread or GitHub page for v060.

Photon devices will be automatically updated when new firmware is flashed to the device, and Electrons can be manually updated by downloading and running the system updater feature in our Firmware Manager tool.


#11

12/2/16 - Azure IoT Hub Integration (beta)

We’re excited to announce Particle’s next 1st class integration with Azure IoT Hub. Acting as the “front door” to Azure, streaming from Particle into IoT Hub will make it easy to forward device data onto any of Azure’s products to add intelligence and robustness to your IoT product or application.

For more information on how to get started, check out the docs on the IoT Hub integration. This integration is being released as a beta.


#12

12/12/16: Azure IoT Hub Custom Data Payloads

After feedback from early users of the new IoT Hub integration, you now can customize the JSON payload that gets sent to Azure when a device triggers the integration. This will help make it easier for downstream Azure applications to consume the data that enters IoT Hub. To customize the payload, click the “Advanced Settings” link when creating the integration, and put your JSON into the code editor:


#13

12/14/16: Instructions for local compilation

We get this one a lot –

How do I download and install the toolchain that will allow me to compile Particle firmware locally on my computer, without a connection to the Internet?

Finally, we’ve built an FAQ for that. Head on over to the following document for a step-by-step guide to get the Particle toolchain installed on your Mac, Windows, or Linux machine:

https://docs.particle.io/faq/particle-tools/local-build/


#14

12/20/16: Firmware v0.6.1-rc.1

Hey friends! Just in time for the holidays we have released new pre-release firmware v0.6.1-rc.1. Available now on https://build.particle.io for Core/Photon/P1/Electron.

Here are just some of the exciting features:

  • RGB LED and SETUP/MODE button mirroring!
  • LED Signaling Themes!
  • New v9 Bootloader for Photon/P1/Electron automatically applied
  • More Arduino Library support by default
  • Improved Electron data usage and communications
  • Lots of new System Events!
  • Listening Mode timeout API (default: Wi-Fi = no timeout, Cellular = 5 minute timeout).

It’s honestly a big list with lots of features, enhancements and bug fixes! Please read the full release notes here.


LED Signaling Themes?
#15

1/23/17: New Firmware Library Manager

Hey everyone! We’ve got a big update to all of our IDEs (Web IDE, Desktop IDE, and CLI) that implements our brand new firmware library manager. The advantages of the new library manager are:

  • Support in all our IDEs: Support for the Particle library manager in our web IDE, desktop IDE, and command line interface (CLI)
  • Improved Arduino library compatibility: Most Arduino libraries can now be copy/pasted into our library manager without modification
  • Libraries with dependencies: Add one library to your Particle project and if it requires others, they’ll be included automatically
  • Verified libraries: Libraries that have been tested for ease-of-use and completeness by the Particle team to ensure a high quality development experience
  • API access: Libraries can be accessed through the Particle Cloud API, so you can build plugins for other popular IDEs to access our firmware library manager

There’s a ton of great functionality in there, so be sure to check out our extended community post and our blog post for more details.


RA8875 library working on Photon
#16

1/23/17: Firmware v0.6.1-rc.2

Hey friends! We have released new pre-release firmware v0.6.1-rc.2. Available now on https://build.particle.io for Core/Photon/P1/Electron.

Here are just some of the exciting features and fixes:

  • Custom LED colors in bootloader v11 (Safe Mode, DFU Mode, Firmware Reset).
  • [Electron] IPAddress ip = Cellular.resolve(hostname);
  • Improved Arduino Compatibility (now supported by default, added PARTICLE_NO_ARDUINO_COMPATIBILITY=y command line option for disabling)
  • Some 0.6.1-rc.1 bugfixes in 0.6.1-rc.2
    • [Electron] TIM8 PWM pins (B0, B1) did not work correctly in bootloader with RGB.mirrorTo()
    • [Photon/P1/Electron] Fixed LED indication shown during device key generation (blinking white)
    • Safe Mode event was being published unconditionally
    • [Electron] fixes double newline parser issue on G350 (prevented proper handshake)

For all features, enhancements and bug fixes please read the full release notes here.


#17

1/26/2017: SIM management for products

A big announcement today! For Particle product creators building cellular-connected devices, seamlessly managing a fleet of SIM cards becomes increasingly important as you grow. Today, we launched SIM management for products, equipping you with another useful tool that makes it even easier to go from prototype to production when using the Electron in your deployment.

Some of the most valuable features of SIM management for products include:

  • Import and pre-activate SIM cards en-masse to ensure a smooth unboxing experience for end users of your products
  • Gain meaningful insights into data usage patterns by viewing fleet-wide usage information
  • Set sensible cellular defaults to save you time and effort without sacrificing control of individual SIM cards
  • Take advantage of volume-based pricing for cellular service available exclusively to product creators

This feature is being launched in public beta. For more information on how to get started, check out the guide on our docs!


#18

1/31/2017: Build Quick Help Drawer

Hello friends! Today we’ve added a new item in the Build sidebar, because we know that sometimes it can be hard to understand how a device is feeling.

Clicking on it brings up the new Quick reference drawer. It will show you all the device modes (docs), so you can quickly figure out in which state your device is currently in.

Hopefully it will help and will reduce some time going back and forth to the docs!


#19

2/2/2017: Preprocessor improvements

Here’s something new to make sure every day doesn’t feel like groundhog day: you can now use custom classes in your code on the Web IDE and you will no longer get tripped up by if else(foo).

class X {
};
// no longer says X does not name a type
void doit(X &x) {
}
bool foo, bar;
void setup() {
  X x;
  doit(x);
  if (bar) {
   return;
  }
  // no longer confuses else if(foo) with a function declaration...
  else if (foo)
    return;
}

#20

2/7/2017: Particle CLI 1.19.4

Features

  • #338 - particle keys protocol displays the currently configured protocol for the connected device
  • #205 - webhook delete all command. Thanks @kennethlimcp!
  • #240 - particle serial monitor --follow reconnects to the serial port when the device resets. Thanks @derekmpeterson!
  • #225 - ability to specify a .json file to enter wifi credentials. Thanks @markterrill!
  • --no-update-check to skip checks for updated versions

Fixes

  • #326 - unhandled rejection in help
  • #235 - Unhandled error in particle setup
  • #331 - Flashing a known app causes exception
  • #328 - ParticleCLISetup for Windows broken due to OpenSSL download problem
  • #326 - Unhandled rejection in help
  • #321 - keys doctor (device id) is case sensitive
  • #292 - this -> self
  • #280 - Incorrect key pulled for Electron using TCP
  • #279 - Server key address output incorrect for Electron using TCP
  • #231 - max retry for wifi scan error
  • #299 - update glob dependency to avoid warning about minimatch vulnerability. Thanks @snyk-bot.

Serial monitor auto-connect?
PuTTY or other serial monitor that automatically reconnects Windows
#21

2/7/2017: Bug fixes and improvements to the Web IDE

We care a lot about the way that our tools help you achieve your goals and we know that sometimes the experience can be affected by bugs. This sprint we knocked some off and also added some small improvements.

Web IDE

  • Fixed: Users could change selected device when a flash was in progress. Sometimes, in a rush, users changed their starred device during a flash, and this caused some minor confusion. You will see a modal if you try this now, so hopefully, no more confusion around.
  • Fixed: Claiming a device is broken in the Web IDE, as it also loads products. After claiming a device, the list of products was loaded in the list of devices. This doesn’t happen anymore, now only your cool new device :sunglasses: will be added to the list.
  • Fixed: Remember last code a user had open, reopen when they return We want you to be able to get back to your code fast, so after opening an app, next time you go to build.particle.io, you will be presented with the last app you’ve opened.
  • Fixed: Refresh devices doesn’t show newly claimed devices Claim a device through the CLI or the API? We’ll make sure it shows up when you hit the refresh button in the Devices sidebar.
  • Improved: Device selection Previously, if you deselected the active device, flash and verify were disabled until you selected a new one. You must now change your device target to another device to “un-select” the original one.
  • Improved: Console menu item now directs to /logs. Need a quick sneak peek of what your device is telling to the world? Click on the Console icon and we will show you. Not seeing anythings in the logs? Make sure you’re publishing events.

#22

2/7/16 - New FAQ on Eclipse Debugging

There is a new FAQ that describes how to use Eclipse, a free IDE for Windows, Mac, and Linux, along with OpenOCD, to do source-level debugging of code running on a Particle Photon, P1, or Electron.
Some of the things you can do:

  1. Set breakpoints in code and view source.
  2. See the call stack.
  3. View variables.
  4. Single-step through code.