Solid magenta after a few minutes of flashing magenta?

Hi guys,

I just got my Sparkcore (awesome!) but I am having trouble getting it up and running. I’ve managed to connect to wifi and my app claimed it for a brief moment before it started updating its firmware over the air.

So, for a while it was behaving as documented - flashing magenta - after a few minutes, it just went solid magenta… and it’s been in that state for last 10 mins or so.

  1. What does it mean?
  2. Can I power it down to avoid killing my Sparkcore? I think I’m going to do this right after…

Please assist.

Many thanks.

Hey @visualdensity - when it goes solid magenta, it means it got stuck on a packet. You do unfortunately have to reset it when that happens (that’s a bug that we’re fixing, so that it recovers better from that state). However, don’t worry! You can reset during a stuck firmware update just fine, and in the absolute worst case if the firmware is corrupted, you can always do a factory reset.

3 Likes

visualdensity,

Thanks for reporting the issue! The flashing magenta light means that your Core successfully connected to our servers, and was in the middle of auto-updating. The solid magenta light means that it dropped a packet during the update process, so it got stuck. We’re working to improve the reliability of the over-the-air updates so that this happens less frequently.

In order to resolve the issue, make sure you’re in good range of Wi-Fi, and press the “RST” reset button on the Core. With the USB power facing away from you, it’s the button on the right. Tapping it once should cause the Core to reconnect to your network and begin the auto-update process again. Try this a few times if it’s still having trouble completing the update. If you’re still having issues, be sure to let us know, and we can help you debug further.

Will @ Spark

1 Like

Roger that. Will try it now and hopefully it gets through eventually.

Something unexpected just happened. I reconnected and it started doing the following:

  1. flashing green (connecting)
  2. brief breathing cyan (live)
  3. flashing magenta
  4. stopped ?! - the lights just went out. nothing.

I hit the reset button and it started reconnecting again. Now as I type, this - just got a solid magenta again. Going to reset a few more times and see how it goes…

@visualdensity How are you powering the Core? We’ve seen this behavior when it’s not getting enough power. I’d also recommend moving closer to your Wi-Fi router, if possible

@zach I’m powering it via my Macbook Pro USB - apparently it has 500mA available. Is that good enough? WiFi, confirm nearby - within reach.

I think perhaps you should allow a method to bypass the firmware update?

That should be plenty, but just in case, could you try it with an external power adapter (like one of the little power bricks for an iPhone or android phone) and see if it behaves any differently?

When we say reset.... How exactly do I do that? (Also stuck magenta)

Tap the reset button (it’s the one on the right if the USB connecter is pointed away from you)

Terrific! Thanks for the quick reply. I am breathing cyan now! Wahoo…

So when I tried to do it from my macbook pro usb… Flashing magenta… Plugged it into the wall. Success.

1 Like

Nice @iammerrick - I’m going to try it with a wall wart. Now… where’s that thing…

I actually can’t find one here in the office. Will update once I get to it tonight. Based on @iammerrick’s reply - it seems like that’s the answer.

A follow up on this item - I’ve put on a USB brick (1A output) and it yes, consistent with @iammerrick, it works. Phew! I’m now having fun with it. : )

Can you please provide us with the details on exactly how much power is required by the Sparkcore to reliably perform over-the-air update? This is because if we build devices that is powered by batteries, there’s a risk we can’t update it remotely.

Many thanks.

Could it be connected with the USB power negotiation cycle?
Most computers don’t really care to limit the output current on the USB sockets, but maybe the Mac Book Pro does actually only provide 100mA unless being asked by the connected device to provide more than the guaranteed 100mA.
If so, this might mean for Spark to check if the Cores actually tell the truth about their max. power demands while negotiating that topic with the host.
Maybe the firmware update draws just a bit more than the standard use case and so, the negotiated power might suffice for standard use, but not for DFU.

I can’t test this theory - since I haven’t got my Cores, yet :frowning:
But I have a Lenovo Thinkpad Tablet 2 that has a somewhat laughable USB port that would definetly fail if the Core would need any more than USB.org states as the bottom tolerance for max. current/voltage.

@ScruffR you’re on track with that but it seems from their support pages, Macbook Pro provides a supply of up to 500 mA and devices can request up to 900 mA - http://support.apple.com/kb/HT4049

When I checked the system’s profiler, I could see the USB detail had the following:

Current Available (mA):   500
Current Required (mA):   500

Hmm… still need to probe a little more to understand the Core a little better. :slight_smile:

@visualdensity We will work to better classify the issue and debug it. It should be fine with 500mA (the max current draw during transmit is ~350mA), so we’re surprised as well to see that it sometimes doesn’t get enough power from a computer USB connection. For most people it does get enough power, and we haven’t quite figured out why it doesn’t work in some cases. We’ll report back when we have more information.

1 Like

Just a note to say that I had this solid magenta issue and it persisted even on an external wall wart power supply. Sometimes I ended up with solid magenta and sometimes no lit led at all. Each reset caused the flashing to vary in length but eventually it did update. Took maybe 30 attempts though.

I guess it flashes for about 45 secs in order to complete the update. So worth persevering and try and keep your WiFi connection as strong as possible. It’s nicely robust in terms of just being able to reset and kick off the firmware update again - which is a credit to the developers.

K

1 Like

Hey guys, just wanted to let everyone know that we have a firmware fix that should improve this behavior by requesting more power from the USB host. It’ll automatically be included when you re-flash with the web IDE; I’ll let you know when it’s been included. In case you’re interested, here’s the commit: