Skip to content
This repository was archived by the owner on Jan 29, 2023. It is now read-only.

Commit 4f7e5fa

Browse files
authored
v1.7.0 to add support to more ESP32_S2 boards
### Releases v1.7.0 1. Add support to - ESP32_S2 : ESP32S2 Native USB, UM FeatherS2 Neo, UM TinyS2, UM RMP, microS2, LOLIN_S2_MINI, LOLIN_S2_PICO, ADAFRUIT_FEATHER_ESP32S2, ADAFRUIT_FEATHER_ESP32S2_TFT, ATMegaZero ESP32-S2, Deneyap Mini, FRANZININHO_WIFI, FRANZININHO_WIFI_MSC
1 parent 264495c commit 4f7e5fa

10 files changed

+61
-32
lines changed

README.md

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ The catch is **your function is now part of an ISR (Interrupt Service Routine),
114114

115115
### Currently supported Boards
116116

117-
1. ESP32S2-based boards, such as `ESP32S2_DEV`, `ESP32_S2 Saola`, Adafruit `QTPY_ESP32S2`, etc.
117+
1. ESP32_S2-based boards, such as `ESP32S2_DEV`, `ESP32_S2 Saola`, Adafruit QTPY_ESP32S2, ESP32S2 Native USB, UM FeatherS2 Neo, UM TinyS2, UM RMP, microS2, etc.
118118

119119
---
120120

@@ -318,7 +318,7 @@ The following is the sample terminal output when running example [TimerInterrupt
318318

319319
```
320320
Starting TimerInterruptTest on ESP32S2_DEV
321-
ESP32_S2_TimerInterrupt v1.6.0
321+
ESP32_S2_TimerInterrupt v1.7.0
322322
CPU Frequency = 240 MHz
323323
[TISR] ESP32_S2_TimerInterrupt: _timerNo = 0, TIM_CLOCK_FREQ = 1000000.00
324324
[TISR] TIMER_BASE_CLK = 80000000, TIMER_DIVIDER = 80
@@ -351,7 +351,7 @@ The following is the sample terminal output when running example [Change_Interva
351351

352352
```
353353
Starting Change_Interval on ESP32S2_DEV
354-
ESP32_S2_TimerInterrupt v1.6.0
354+
ESP32_S2_TimerInterrupt v1.7.0
355355
CPU Frequency = 240 MHz
356356
[TISR] ESP32_S2_TimerInterrupt: _timerNo = 0, TIM_CLOCK_FREQ = 1000000.00
357357
[TISR] TIMER_BASE_CLK = 80000000, TIMER_DIVIDER = 80
@@ -389,7 +389,7 @@ The following is the sample terminal output when running example [Argument_None]
389389

390390
```
391391
Starting Argument_None on ESP32S2_DEV
392-
ESP32_S2_TimerInterrupt v1.6.0
392+
ESP32_S2_TimerInterrupt v1.7.0
393393
CPU Frequency = 240 MHz
394394
[TISR] ESP32_S2_TimerInterrupt: _timerNo = 0, TIM_CLOCK_FREQ = 1000000.00
395395
[TISR] TIMER_BASE_CLK = 80000000, TIMER_DIVIDER = 80
@@ -413,7 +413,7 @@ The following is the sample terminal output when running example [ISR_16_Timers_
413413

414414
```
415415
Starting ISR_16_Timers_Array_Complex on ESP32S2_DEV
416-
ESP32_S2_TimerInterrupt v1.6.0
416+
ESP32_S2_TimerInterrupt v1.7.0
417417
CPU Frequency = 240 MHz
418418
[TISR] ESP32_S2_TimerInterrupt: _timerNo = 1, TIM_CLOCK_FREQ = 1000000.00
419419
[TISR] TIMER_BASE_CLK = 80000000, TIMER_DIVIDER = 80
@@ -568,7 +568,7 @@ The following is the sample terminal output when running example [ISR_16_Timers_
568568

569569
```
570570
Starting ISR_16_Timers_Array on ESP32S2_DEV
571-
ESP32_S2_TimerInterrupt v1.6.0
571+
ESP32_S2_TimerInterrupt v1.7.0
572572
CPU Frequency = 240 MHz
573573
[TISR] ESP32_S2_TimerInterrupt: _timerNo = 1, TIM_CLOCK_FREQ = 1000000.00
574574
[TISR] TIMER_BASE_CLK = 80000000, TIMER_DIVIDER = 80
@@ -624,16 +624,17 @@ Submit issues to: [ESP32_S2_TimerInterrupt issues](https://github.com/khoih-prog
624624

625625
## DONE
626626

627-
1. Basic hardware timers for ESP32-S2.
628-
2. More hardware-initiated software-enabled timers
629-
3. Longer time interval
630-
4. Similar features for remaining Arduino boards such as SAMD21, SAMD51, SAM-DUE, nRF52, ESP8266, STM32, etc.
631-
5. Fix compiler errors due to conflict to some libraries.
632-
6. Add complex examples.
633-
7. Fix `multiple-definitions` linker error. Drop `src_cpp` and `src_h` directories
634-
8. Avoid deprecated functions.
635-
9. Optimize library code by using `reference-passing` instead of `value-passing`
636-
627+
1. Basic hardware timers for ESP32-S2.
628+
2. More hardware-initiated software-enabled timers
629+
3. Longer time interval
630+
4. Similar features for remaining Arduino boards such as SAMD21, SAMD51, SAM-DUE, nRF52, ESP8266, STM32, etc.
631+
5. Fix compiler errors due to conflict to some libraries.
632+
6. Add complex examples.
633+
7. Fix `multiple-definitions` linker error. Drop `src_cpp` and `src_h` directories
634+
8. Avoid deprecated functions.
635+
9. Optimize library code by using `reference-passing` instead of `value-passing`
636+
10. Add support to many more boards, such as
637+
- ESP32_S2 : ESP32S2 Native USB, UM FeatherS2 Neo, UM TinyS2, UM RMP, microS2, LOLIN_S2_MINI, LOLIN_S2_PICO, ADAFRUIT_FEATHER_ESP32S2, ADAFRUIT_FEATHER_ESP32S2_TFT, ATMegaZero ESP32-S2, Deneyap Mini, FRANZININHO_WIFI, FRANZININHO_WIFI_MSC
637638

638639
---
639640
---

changelog.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
## Table of Contents
1313

1414
* [Changelog](#changelog)
15+
* [Releases v1.7.0](#releases-v170)
1516
* [Releases v1.6.0](#releases-v160)
1617
* [Releases v1.5.1](#releases-v151)
1718
* [Releases v1.5.0](#releases-v150)
@@ -23,6 +24,12 @@
2324

2425
## Changelog
2526

27+
### Releases v1.7.0
28+
29+
1. Add support to
30+
- ESP32_S2 : ESP32S2 Native USB, UM FeatherS2 Neo, UM TinyS2, UM RMP, microS2, LOLIN_S2_MINI, LOLIN_S2_PICO, ADAFRUIT_FEATHER_ESP32S2, ADAFRUIT_FEATHER_ESP32S2_TFT, ATMegaZero ESP32-S2, Deneyap Mini, FRANZININHO_WIFI, FRANZININHO_WIFI_MSC
31+
32+
2633
### Releases v1.6.0
2734

2835
1. Suppress errors and warnings for new ESP32 core v2.0.4+

library.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "ESP32_S2_TimerInterrupt",
3-
"version": "1.6.0",
3+
"version": "1.7.0",
44
"keywords": "timing, device, control, timer, interrupt, hardware, isr, isr-based, hardware-timer, isr-timer, isr-based-timer, mission-critical, accuracy, precise, non-blocking, esp32, esp32-s2, esp32-c3",
55
"description": "This library enables you to use Interrupt from Hardware Timers on an ESP32-S2-based board. It now supports 16 ISR-based timers, while consuming only 1 Hardware Timer. Timers' interval is very long (ulong millisecs). The most important feature is they're ISR-based timers. Therefore, their executions are not blocked by bad-behaving functions or tasks. This important feature is absolutely necessary for mission-critical tasks. These hardware timers, using interrupt, still work even if other functions are blocking. Moreover, they are much more precise (certainly depending on clock frequency accuracy) than other software timers using millis() or micros(). That's necessary if you need to measure some data requiring better accuracy.",
66
"authors":

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name=ESP32_S2_TimerInterrupt
2-
version=1.6.0
2+
version=1.7.0
33
author=Khoi Hoang <[email protected]>
44
maintainer=Khoi Hoang <[email protected]>
55
sentence=This library enables you to use Interrupt from Hardware Timers on an ESP32-S2-based board

platformio/platformio.ini

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ build_flags =
4242
; comment the folowing line to enable WiFi debugging
4343
-D NDEBUG
4444

45+
46+
; ============================================================
47+
; ============================================================
48+
4549
[env:ESP32]
4650
platform = espressif32
4751
framework = arduino
@@ -84,6 +88,8 @@ board = esp32doit-devkit-v1
8488
;board = iotbusproteus
8589
;board = nina_w10
8690

91+
; ============================================================
92+
8793
[env:esp32s2]
8894
platform = espressif32
8995
framework = arduino
@@ -112,6 +118,7 @@ build_flags =
112118
-DARDUINO_ESP32S2_DEV
113119
-DARDUINO_VARIANT="esp32s2"
114120

121+
; ============================================================
115122

116123
[env:esp32s3]
117124
platform = espressif32
@@ -131,8 +138,9 @@ build_flags =
131138
-DARDUINO_ESP32S3_DEV
132139
-DARDUINO_VARIANT="esp32s3"
133140

141+
; ============================================================
134142

135-
[env:esp32sc3]
143+
[env:esp32c3]
136144
platform = espressif32
137145
framework = arduino
138146

@@ -149,3 +157,5 @@ build_unflags =
149157
build_flags =
150158
-DARDUINO_ESP32S3_DEV
151159
-DARDUINO_VARIANT="esp32c3"
160+
161+
; ============================================================

src/ESP32_S2_ISR_Timer-Impl.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
Based on BlynkTimer.h
2525
Author: Volodymyr Shymanskyy
2626
27-
Version: 1.6.0
27+
Version: 1.7.0
2828
2929
Version Modified By Date Comments
3030
------- ----------- ---------- -----------
@@ -33,6 +33,7 @@
3333
1.5.0 K.Hoang 23/01/2022 Avoid deprecated functions. Fix `multiple-definitions` linker error
3434
1.5.1 K Hoang 16/06/2022 Add support to new Adafruit board QTPY_ESP32S2
3535
1.6.0 K Hoang 10/08/2022 Suppress errors and warnings for new ESP32 core
36+
1.7.0 K Hoang 11/08/2022 Suppress warnings and add support for more ESP32_S2 boards
3637
*****************************************************************************************************************************/
3738

3839
#pragma once

src/ESP32_S2_ISR_Timer.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
Based on BlynkTimer.h
2525
Author: Volodymyr Shymanskyy
2626
27-
Version: 1.6.0
27+
Version: 1.7.0
2828
2929
Version Modified By Date Comments
3030
------- ----------- ---------- -----------
@@ -33,6 +33,7 @@
3333
1.5.0 K.Hoang 23/01/2022 Avoid deprecated functions. Fix `multiple-definitions` linker error
3434
1.5.1 K Hoang 16/06/2022 Add support to new Adafruit board QTPY_ESP32S2
3535
1.6.0 K Hoang 10/08/2022 Suppress errors and warnings for new ESP32 core
36+
1.7.0 K Hoang 11/08/2022 Suppress warnings and add support for more ESP32_S2 boards
3637
*****************************************************************************************************************************/
3738

3839
#pragma once

src/ESP32_S2_ISR_Timer.hpp

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
Based on BlynkTimer.h
2525
Author: Volodymyr Shymanskyy
2626
27-
Version: 1.6.0
27+
Version: 1.7.0
2828
2929
Version Modified By Date Comments
3030
------- ----------- ---------- -----------
@@ -33,6 +33,7 @@
3333
1.5.0 K.Hoang 23/01/2022 Avoid deprecated functions. Fix `multiple-definitions` linker error
3434
1.5.1 K Hoang 16/06/2022 Add support to new Adafruit board QTPY_ESP32S2
3535
1.6.0 K Hoang 10/08/2022 Suppress errors and warnings for new ESP32 core
36+
1.7.0 K Hoang 11/08/2022 Suppress warnings and add support for more ESP32_S2 boards
3637
*****************************************************************************************************************************/
3738

3839
#pragma once
@@ -42,18 +43,21 @@
4243

4344
#if !( ARDUINO_ESP32S2_DEV || ARDUINO_FEATHERS2 || ARDUINO_ESP32S2_THING_PLUS || ARDUINO_MICROS2 || \
4445
ARDUINO_METRO_ESP32S2 || ARDUINO_MAGTAG29_ESP32S2 || ARDUINO_FUNHOUSE_ESP32S2 || \
45-
ARDUINO_ADAFRUIT_FEATHER_ESP32S2_NOPSRAM || ARDUINO_ADAFRUIT_QTPY_ESP32S2)
46+
ARDUINO_ADAFRUIT_FEATHER_ESP32S2_NOPSRAM || ARDUINO_ADAFRUIT_QTPY_ESP32S2 || ARDUINO_ESP32S2_USB || \
47+
ARDUINO_FEATHERS2NEO || ARDUINO_TINYS2 || ARDUINO_RMP || ARDUINO_LOLIN_S2_MINI || ARDUINO_LOLIN_S2_PICO || \
48+
ARDUINO_ADAFRUIT_FEATHER_ESP32S2 || ARDUINO_ADAFRUIT_FEATHER_ESP32S2_TFT || ARDUINO_atmegazero_esp32s2 || \
49+
ARDUINO_DYM || ARDUINO_FRANZININHO_WIFI || ARDUINO_FRANZININHO_WIFI_MSC )
4650
#error This code is intended to run on the ESP32-S2 platform! Please check your Tools->Board setting.
4751
#endif
4852

4953
#ifndef ESP32_S2_TIMER_INTERRUPT_VERSION
50-
#define ESP32_S2_TIMER_INTERRUPT_VERSION "ESP32_S2_TimerInterrupt v1.6.0"
54+
#define ESP32_S2_TIMER_INTERRUPT_VERSION "ESP32_S2_TimerInterrupt v1.7.0"
5155

5256
#define ESP32_S2_TIMER_INTERRUPT_VERSION_MAJOR 1
53-
#define ESP32_S2_TIMER_INTERRUPT_VERSION_MINOR 6
57+
#define ESP32_S2_TIMER_INTERRUPT_VERSION_MINOR 7
5458
#define ESP32_S2_TIMER_INTERRUPT_VERSION_PATCH 0
5559

56-
#define ESP32_S2_TIMER_INTERRUPT_VERSION_INT 1006000
60+
#define ESP32_S2_TIMER_INTERRUPT_VERSION_INT 1007000
5761
#endif
5862

5963
#include "TimerInterrupt_Generic_Debug.h"

src/ESP32_S2_TimerInterrupt.h

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
Based on BlynkTimer.h
2626
Author: Volodymyr Shymanskyy
2727
28-
Version: 1.6.0
28+
Version: 1.7.0
2929
3030
Version Modified By Date Comments
3131
------- ----------- ---------- -----------
@@ -34,6 +34,7 @@
3434
1.5.0 K.Hoang 23/01/2022 Avoid deprecated functions. Fix `multiple-definitions` linker error
3535
1.5.1 K Hoang 16/06/2022 Add support to new Adafruit board QTPY_ESP32S2
3636
1.6.0 K Hoang 10/08/2022 Suppress errors and warnings for new ESP32 core
37+
1.7.0 K Hoang 11/08/2022 Suppress warnings and add support for more ESP32_S2 boards
3738
*****************************************************************************************************************************/
3839

3940
#pragma once
@@ -43,20 +44,23 @@
4344

4445
#if !( ARDUINO_ESP32S2_DEV || ARDUINO_FEATHERS2 || ARDUINO_ESP32S2_THING_PLUS || ARDUINO_MICROS2 || \
4546
ARDUINO_METRO_ESP32S2 || ARDUINO_MAGTAG29_ESP32S2 || ARDUINO_FUNHOUSE_ESP32S2 || \
46-
ARDUINO_ADAFRUIT_FEATHER_ESP32S2_NOPSRAM || ARDUINO_ADAFRUIT_QTPY_ESP32S2)
47+
ARDUINO_ADAFRUIT_FEATHER_ESP32S2_NOPSRAM || ARDUINO_ADAFRUIT_QTPY_ESP32S2 || ARDUINO_ESP32S2_USB || \
48+
ARDUINO_FEATHERS2NEO || ARDUINO_TINYS2 || ARDUINO_RMP || ARDUINO_LOLIN_S2_MINI || ARDUINO_LOLIN_S2_PICO || \
49+
ARDUINO_ADAFRUIT_FEATHER_ESP32S2 || ARDUINO_ADAFRUIT_FEATHER_ESP32S2_TFT || ARDUINO_atmegazero_esp32s2 || \
50+
ARDUINO_DYM || ARDUINO_FRANZININHO_WIFI || ARDUINO_FRANZININHO_WIFI_MSC )
4751
#error This code is intended to run on the ESP32-S2 platform! Please check your Tools->Board setting.
4852
#else
4953
#define USING_ESP32_S2_TIMER_INTERRUPT true
5054
#endif
5155

5256
#ifndef ESP32_S2_TIMER_INTERRUPT_VERSION
53-
#define ESP32_S2_TIMER_INTERRUPT_VERSION "ESP32_S2_TimerInterrupt v1.6.0"
57+
#define ESP32_S2_TIMER_INTERRUPT_VERSION "ESP32_S2_TimerInterrupt v1.7.0"
5458

5559
#define ESP32_S2_TIMER_INTERRUPT_VERSION_MAJOR 1
56-
#define ESP32_S2_TIMER_INTERRUPT_VERSION_MINOR 6
60+
#define ESP32_S2_TIMER_INTERRUPT_VERSION_MINOR 7
5761
#define ESP32_S2_TIMER_INTERRUPT_VERSION_PATCH 0
5862

59-
#define ESP32_S2_TIMER_INTERRUPT_VERSION_INT 1006000
63+
#define ESP32_S2_TIMER_INTERRUPT_VERSION_INT 1007000
6064
#endif
6165

6266
#ifndef TIMER_INTERRUPT_DEBUG

src/TimerInterrupt_Generic_Debug.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
Based on BlynkTimer.h
2525
Author: Volodymyr Shymanskyy
2626
27-
Version: 1.6.0
27+
Version: 1.7.0
2828
2929
Version Modified By Date Comments
3030
------- ----------- ---------- -----------
@@ -33,6 +33,7 @@
3333
1.5.0 K.Hoang 23/01/2022 Avoid deprecated functions. Fix `multiple-definitions` linker error
3434
1.5.1 K Hoang 16/06/2022 Add support to new Adafruit board QTPY_ESP32S2
3535
1.6.0 K Hoang 10/08/2022 Suppress errors and warnings for new ESP32 core
36+
1.7.0 K Hoang 11/08/2022 Suppress warnings and add support for more ESP32_S2 boards
3637
*****************************************************************************************************************************/
3738

3839
#pragma once

0 commit comments

Comments
 (0)