Argon Automatically Updating Firmware (when it Shouldn't)

I was having a problem with a pulse sensor library and OS 5.3.0 (separately detailed here) and I found that I could downgrade the firmware to OS 5.0.1 as workaround.

In my class, I had students download the 5.0.1 bin, go to DFU mode, flash the firmware from CLI, and hit reset. For most of the students, it worked perfectly and the Argon had OS 5.0.1

For 4 students though, after they downgraded to 5.0.1 and hit reset, the Argon automatically updated back to 5.3.0. I tried the process many times, but each time after flashing, it would upgrade firmware again.

I’m really stuck and confused. Am I missing something as to why some Argons update after pressing reset?

The most likely reason is that the user firmware on the device targeted Device OS 5.3.0. If you didn’t downgrade the user firmware or flash tinker when downgrading, the device would immediately upgrade Device OS to match the user firmware version at boot.

Incidentally, how did you downgrade the devices? Changing the Device OS target does not downgrade the device. The target is the minimum Device OS that can be used to run the firmware. If the device has a newer version of Device OS it will never be downgraded OTA.

1 Like

To downgrade the devices, I did the following:

  • Put the devices in DFU mode
  • Downloaded argon-system-part1@5.0.1.bin from Github
  • Ran particle flash --usb argon-system-part1@5.0.1.bin from Workbench CLI
  • Workbench reported Flash success but the devices remained in DFU mode
  • I pushed reset on the Argon

Most of the Argons rebooted and started breathing cyan, running 5.0.1. A handful of the devices however rebooted and started upgrading to 5.3.0.

Was there a different procedure I should have used?

You should first flash another application firmware that does not target a higher version than the on you want to downgrade to.
The easiest would be

particle flash --usb tinker

and then downgrade the device OS

2 Likes

Thanks @ScruffR and @rickkas7 for clarifying that! That makes a lot of sense why it was happening. I just verified this process and it works.

For future reference, this was the complete downgrade process

  • Put the devices in DFU mode
  • Open CLI and run particle flash --usb tinker
  • Download argon-system-part1@5.0.1.bin from Github
  • With device still in DFU, use the CLI to run particle flash --usb argon-system-part1@5.0.1.bin
  • After Workbench shows Flash success, press reset on Argon
  • Argon breathes cyan with 5.0.1
1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.