## Firmware 0.5.0-rc.2 Pre-release is out on the Build IDE for Core/Photon/P1/Electron
Note: This is a pre-release and is not intended for production yet. It will not be available by default. To use you must select the version dropdown from the devices drawer. Downgrading back to the current release info is at the bottom of this post.
v0.5.0-rc.2 Changelog
FEATURES
- Added SYSTEM_FLAG_WIFITEST_OVER_SERIAL1 which is disabled by default. Tinker enables this by default so that the Wi-Fi Tester is available during manufacturing. Also ensures TX/RX pins are not used for Serial1 by default, in case you want to use these as GPIO. 945
ENHANCEMENTS
- Timer::isActive() function added #950
- mbedtls headers are private to the communications module now, so user applications can include their own version of mbedtls
BUGFIXES
- Soft AP Claim code fix #956
- Variable template fix #952
- TCPClient on Electron not receiving all of the data for small files #896
System Binaries (all devices) & Device Updater (Photon & Electron)
Updating System Firmware (and optionally adding Tinker)
To update your device, compile and flash your application in the Build IDE, selecting version 0.5.0-rc.2 (prerelease) in the devices drawer. Update instructions for Core, Photon, P1 and Electron below.
The OTA method using Particle CLI
For devices already online and connected to the cloud, the system firmware can be updated OTA using these commands:
If your device is online, you can attempt to OTA (Over The Air) update these system parts as well with the particle-cli:
Note: You must download system binaries to a local directory on your machine for this to work.
Core:
particle flash YOUR_DEVICE_NAME tinker-0.5.0-rc.2-core.bin
Photon:
particle flash YOUR_DEVICE_NAME system-part1-0.5.0-rc.2-photon.bin
particle flash YOUR_DEVICE_NAME system-part2-0.5.0-rc.2-photon.bin
particle flash YOUR_DEVICE_NAME tinker (optional)
P1:
particle flash YOUR_DEVICE_NAME system-part1-0.5.0-rc.2-p1.bin
particle flash YOUR_DEVICE_NAME system-part2-0.5.0-rc.2-p1.bin
particle flash YOUR_DEVICE_NAME tinker (optional)
Electron:
particle flash YOUR_DEVICE_NAME system-part1-0.5.0-rc.2-electron.bin
particle flash YOUR_DEVICE_NAME system-part2-0.5.0-rc.2-electron.bin
particle flash YOUR_DEVICE_NAME tinker (optional)
The local method over USB using Particle CLI
This requires CLI version 1.11.0 or newer. You can check with particle --version
.
If you have the Particle CLI installed already, make sure it is updated with the following command. Make sure the device is in DFU mode and run:
sudo npm update -g particle-cli
(note: you can try without sudo first if you wish)
Core:
particle flash --usb tinker-0.5.0-rc.2-core.bin
Photon:
particle flash --usb system-part1-0.5.0-rc.2-photon.bin
particle flash --usb system-part2-0.5.0-rc.2-photon.bin
particle flash --usb tinker (optional)
P1:
particle flash --usb system-part1-0.5.0-rc.2-p1.bin
particle flash --usb system-part2-0.5.0-rc.2-p1.bin
particle flash --usb tinker (optional)
Electron:
particle flash --usb system-part1-0.5.0-rc.2-electron.bin
particle flash --usb system-part2-0.5.0-rc.2-electron.bin
particle flash --usb tinker (optional)
The local DFU-UTIL method
can be applied to offline devices locally over USB using dfu-util
- Put the device in DFU mode (flashing yellow LED)
- open a terminal window, change to the directory where you downloaded the files above, and run these commands:
Core:
dfu-util -d 1d50:607f -a 0 -s 0x8005000:leave -D tinker-0.5.0-rc.2-core.bin
Photon:
dfu-util -d 2b04:d006 -a 0 -s 0x8020000 -D system-part1-0.5.0-rc.2-photon.bin
dfu-util -d 2b04:d006 -a 0 -s 0x8060000:leave -D system-part2-0.5.0-rc.2-photon.bin
P1:
dfu-util -d 2b04:d008 -a 0 -s 0x8020000 -D system-part1-0.5.0-rc.2-p1.bin
dfu-util -d 2b04:d008 -a 0 -s 0x8060000:leave -D system-part2-0.5.0-rc.2-p1.bin
Electron:
dfu-util -d 2b04:d00a -a 0 -s 0x8020000 -D system-part1-0.5.0-rc.2-electron.bin
dfu-util -d 2b04:d00a -a 0 -s 0x8040000 -D system-part2-0.5.0-rc.2-electron.bin
Downgrading from 0.5.0-rc.x to current default firmware
Current defaults
Core: v0.4.9
Photon: v0.4.9
P1: v0.4.9
Electron: v0.4.8-rc.6
The easiest way to downgrade from a 0.5.0-rc.x prerelease system firmware, is to use the CLI and run these commands in order. First put the Tinker back on the device, then downgrade the System firmware. This requires CLI version 1.11.0 or newer. You can check with particle --version
.
If you have the Particle CLI installed already, you can update it with the following combined command. Make sure the device is in DFU mode and run:
sudo npm update -g particle-cli
(note: you can try without sudo first if you wish)
- Make sure Tinker is installed, instead of a 0.5.0-rc.x app that you may currently have running on your device. Have the device in DFU mode and run:
particle flash --usb tinker
- Make sure the device is in DFU mode and run:
particle update
This works for downgrading without specifying --target X.Y.Z
because the 0.5.0-rc.x pre-release firmware is not the default, and therefor particle update
effectively downgrades your firmware.
Debugging for Electron
Instructions on using the Tinker USB Debugging app are here
This is useful for simply capturing the Electron's connection process.
Instructions on using the Electron Troubleshooting app are here
This is useful for interacting with the Electron's connection process.