We are interested in developing an IOT workshop and course, using these devices. However, with this in mind we need to be able to re-register the devices to different build accounts after each semester. Is there a way to factory reset the Photon or SparkCore devices, ie. using the programmer or some software? This is very important before we decide to pursue these devices further any help would be appreciated.
The Spark/Particle Core has an easy to use factory reset via the MODE button that reflashes the whole system and user firmware (but not the bootloader) with a firmware image that is stored on the device itself.
The Particle Photon has no such image on board, so there is no one-button factory reset, but the so called Safe Mode, which prevents the application (user) firmware from running and hence provides a predefined safe state of the device.
In this mode it’s very simple to “factory reset” the device via
particle flash --usb tinker (or any other predefined firmware of your liking).
And for re-claiming a device that got claimed to a students account, as long you have phyiscal access to the device you can always claim it without the need to know the previous “owner” - unless it has been completely locked against reprogramming (see this discussion Digital Signatures for Security)
If you happen to have a JTAG/SWD programmer, flashing a complete firmware image, including bootloader might be even easier.
That’s true for the Photon, but not so much for the Core. The Photons ownership is based on physical ownership, whereas the Core handles this digitally. That said, there’s an easy to use system through which you can request a transfer of ownership from the last owner, for the Cores.
Now, I’m going to assume you haven’t got these devices yet (or you wouldn’t be asking these questions), and thus have to get them. If that’s true, you’ll most likely be getting Photons, since Cores are no longer made. Not only are they cheaper, but they’re also better in every way. The claiming process will thus not be a problem, since you’ll have physical access.
On the Core, what would this magic MODE button sequence be? When I hold down the MODE button it goes into a solid blue flashing but then pressing or long pressing MODE again puts it right back into messed up mode, which is why I’m trying to flash my way out of this mess.
- Begin holding the MODE button down.
- While holding the MODE button down, tap the RESET button briefly.
- After 3 seconds the core will begin blinking yellow, KEEP HOLDING the MODE button.
- After 10 seconds the core will begin blinking white. When this happens the factory reset process has begun. Let go of the MODE button.