Glad it is fixed!
Two things. First, the Particle app will not flash Tinker properly to bluz DK. As you pointed out, their app doesn’t recognize bluz yet so flashing Tinker won’t work. It actually tries to flash down the Tinker app compiled for the Photon, which bluz just rejects. I have talked to the Particle team about this, hopefully in the future we can make this work.
Second, I wanted to clarify one point. Safe Mode can be a little confusing as it can really mean two things. Safe Mode really means that the User App, the portion of code the user writes, isn’t running. This can happen for two reasons:
- The user app depends on a system firmware version that is ahead of the current system firmware version on the DK. For example, if you have a DK running 1.0.47 and then select 1.1.47 in the Web IDE and flash the code, then the user code will want 1.1.47 but the DK still has system version 1.0.47. The system is now in safe mode
- After a factory reset, we wipe out the user app. There simply is no user app, and so it can’t run. This was intentional, we honestly didn’t feel the need to store the user app when the system firmware was enough. The system is also in safe mode.
There is a big difference between 1 and 2 above. In 1, the cloud actually recognizes that the user app needs a new system firmware, and so the cloud AUTOMATICALLY will flash a new system firmware. In 2, the cloud DOES NOT recognize that the user app needs new system firmware, since the user app does not exist. Therefore, in number 2, the cloud WILL NOT automatically start a new update. To get new firmware and exit this mode, you need to flash a new app.
To clarify this, since it is quite confusing, I am planning on changing the color of Safe Mode in the next version. I am planning on using Yellow, seems to make sense. This will really help differentiate between the two cases as magenta will mean that an OTA update is happening, while yellow will mean that it is in safe mode. So to play out the two scenarios above with the new color:
- If you tried updating from 1.0.47 to 1.147, you would flash the new user app, the DK would blink magenta while the update is happening. When it boots, it would start to blink yellow instead. Once it comes back online, it will start to blink magenta again, meaning the cloud recognized it needed an update and is now flashing new system firmware.
- Once you perform a factory reset, the system will blink yellow. Once it comes back online, it will still blink yellow and will stay in this state until you actually flash a new app.
This isn’t the Particle convention, but I think it will help. Because of how slow updates happen, I think the magenta color is really too confusing because it can mean Safe Mode or Update In Progress, and it is hard to tell the difference. I think changing the color will make all the difference.