Hardware Timer Interrupt

New important release v1.0.2 of this ESP8266TimerInterrupt library

New features in version v1.0.2:

  1. Allow maximum 16 ISR-based timers ,
  2. The maximum interval is practically unlimited (limited only by unsigned long miliseconds)
  3. The accuracy is nearly perfect compared to software timers. The most important feature is they’re ISR-based timer. Therefore, their executions are not blocked by bad-behaving functions / tasks.
  4. These important features are absolutely necessary for mission-critical tasks.

The ISR_Timer_Complex example will demonstrate the nearly perfect accuracy compared to software timers by printing the actual elapsed millisecs of each type of timers. Being ISR-based timers, their executions are not blocked by bad-behaving functions / tasks, such as connecting to WiFi, Internet and Blynk services. You can also have many (up to 16) timers to use. This non-being-blocked important feature is absolutely necessary for mission-critical tasks.
You’ll see Software Timer is blocked while system is connecting to WiFi / Internet / Blynk, as well as by blocking task in loop(), using delay() function as an example. The elapsed time then is very un-accurate.

The following ISR_based FireSmokeAlarm is one example using ISR-based Time from this library for so-called mission-critical projects.

2 Likes