Particle Device OS Updates: Comments

@smnnekho, yes, System_Threading is enabled (and needs to be for the use-case - need to operate whether or not the device is connected to Particle Cloud).

Glad to see that I am not the only one…

Just noticed 0.4.7 seems to have broken multithreading for me. It’s obvious in my case because I have an OLED display that usually initialises while the connection is taking place. Since 0.4.7 it doesn’t turn on until the connection with the cloud is established, leading me to think that multithreading might not be working at all…

Just checked this by reverting to the ‘latest’ branch (as in 0.4.6) and building again with the same source - multithreading working again. This is on a P1. Perhaps related to the issue you’re having @UMD?

G65434_2, @smnnekho, RE:

Reverted to firmware 0.4.6 and compiled against that. Same code, same problem… So, not a regression with 0.4.7 (good!). My issue is now off topic, I will raise another ticket.

Forgive me for the silly question, I’m new to low-level programming in C. I was just wondering how the new software timers compare to something like SparkIntervalTimer and what the technical and practical differences are?

@G65434_2, @smnnekho Case closed on the variable/function registration issue:

By the way, 0.4.7 is great, but we all know that!

@TheKiwi, SparkIntervalTimer uses hardware timers which fire an interrupts that call a user ISR. Using hardware interrupts allows precise timing at the cost of using hardware resources, some of which may impact I/O pin functions related to those resources (eg. PWM or Tone). They also allow a user to create sub-millisecond interrupts.

Software Timers are provided by the FreeRTOS kernel and have a minimum resolution of 1 milliseconds. However, they don’t user hardware resources, you can have up to 10 at a time and they are quite precise. For many timing requirements, these timers are great and remove the need to use millis() type timers in loop(), whose accuracy may be affected by delays within loop().

Like hardware interrupts, Software Timer callback functions should be non-blocking and short. Hope that helps! :smile:

5 Likes

Release 0.4.9 is just around the corner, ready for deployment on Monday. Anyone that’s interested in testing the current release candidate via the local toolchain are invited to pull tag v0.4.9-rc.2 from our firmware github repo.

3 Likes

Thank you!

Will five it a shot. I hoped that the servo issues (detaching) was scheduled to be fixed on this one :confused: but doesn’t show in change log … Ohh well :blush:

Thank You!
I hope the i2C issues have been resolved in 0.4.9 :smile:

So, I am just wondering; since 2016-01-25 is nearly over now, has the release been pushed back a day or so? I’m jumping up and down like a kid at Christmas here, with the new features and bugfixes that are in 0.4.9. Can’t wait!

Hehe, nice! 0.4.9 is a release the firmware team are particularly proud of - lots of new features, enhancements and fixes. The release has been pushed to github - will announce here when it’s available with our online build tools… :smile:

3 Likes

The :cloud: build farm has been updated to 0.4.9 :clap:

2 Likes

Question to the firmware team of Particle.
Whether stability of the Electron is already accomplished for use in end devices?
I know that every day firmware constantly improving. Thanks to Particle team and Contributors.
All honors guys :slight_smile:
But I want to know who is the progress of Electron firmware in terms of stability of the connection?
I’m working on hardware that should have almost 24x7 stability so I want to know if there are a perfect stability of the connection.

Hello,
Can I get a link to the bin files for firmware 0.5.0 for electron?
@mdma, @BDub

@developer_bt, look at the bottom of the linked page:

:smile:

Here no bin files for 0.5.0 files is for 0.5.0-rc.2. :smile:

I was again a problem with detection of firmware version in Web IDE.
Again I returned to 0.4.8 then update to 0.5.0 rc2 with DFU, and now is detected as 0.5.0 in WEB IDE.
Why can not update via OTA to a newer version?

0.5.0-rc.2 is the same as 0.5.0, they are identical.

1 Like

0.5.0 is out! :smile:

1 Like