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

Commit 6a2faca

Browse files
authored
v1.3.0 to suppress errors and warnings
### Releases v1.3.0 1. Suppress errors and warnings for new ESP32 core v2.0.4+
1 parent 74b6105 commit 6a2faca

12 files changed

+616
-526
lines changed

CONTRIBUTING.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
1-
## Contributing to ESP32_New_ISR_Servo
1+
## Contributing to ESP32_New_TimerInterrupt
22

33
### Reporting Bugs
44

5-
Please report bugs in ESP32_New_ISR_Servo if you find them.
5+
Please report bugs in [ESP32_New_TimerInterrupt Issues](https://github.com/khoih-prog/ESP32_New_TimerInterrupt/issues) if you find them.
66

77
However, before reporting a bug please check through the following:
88

9-
* [Existing Open Issues](https://github.com/khoih-prog/ESP32_New_ISR_Servo/issues) - someone might have already encountered this.
9+
* [Existing Open Issues](https://github.com/khoih-prog/ESP32_New_TimerInterrupt/issues) - someone might have already encountered this.
1010

11-
If you don't find anything, please [open a new issue](https://github.com/khoih-prog/ESP32_New_ISR_Servo/issues/new).
11+
If you don't find anything, please [open a new issue](https://github.com/khoih-prog/ESP32_New_TimerInterrupt/issues/new).
1212

1313
### How to submit a bug report
1414

@@ -37,7 +37,7 @@ OS: Ubuntu 20.04 LTS
3737
Linux xy-Inspiron-3593 5.15.0-41-generic #44~20.04.1-Ubuntu SMP Fri Jun 24 13:27:29 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
3838
3939
Context:
40-
I encountered a crash while trying to use the Timer Interrupt.
40+
I encountered a crash while using ESP32_New_TimerInterrupt.
4141
4242
Steps to reproduce:
4343
1. ...
@@ -50,7 +50,7 @@ Steps to reproduce:
5050

5151
Feel free to post feature requests. It's helpful if you can explain exactly why the feature would be useful.
5252

53-
There are usually some outstanding feature requests in the [existing issues list](https://github.com/khoih-prog/ESP32_New_ISR_Servo/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement), feel free to add comments to them.
53+
There are usually some outstanding feature requests in the [existing issues list](https://github.com/khoih-prog/ESP32_New_TimerInterrupt/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement), feel free to add comments to them.
5454

5555
### Sending Pull Requests
5656

README.md

Lines changed: 534 additions & 474 deletions
Large diffs are not rendered by default.

changelog.md

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
# ESP32_New_ISR_Servo Library
1+
# ESP32_New_TimerInterrupt Library
22

3-
[![arduino-library-badge](https://www.ardu-badge.com/badge/ESP32_New_ISR_Servo.svg?)](https://www.ardu-badge.com/ESP32_New_ISR_Servo)
4-
[![GitHub release](https://img.shields.io/github/release/khoih-prog/ESP32_New_ISR_Servo.svg)](https://github.com/khoih-prog/ESP32_New_ISR_Servo/releases)
5-
[![GitHub](https://img.shields.io/github/license/mashape/apistatus.svg)](https://github.com/khoih-prog/ESP32_New_ISR_Servo/blob/main/LICENSE)
3+
[![arduino-library-badge](https://www.ardu-badge.com/badge/ESP32_New_TimerInterrupt.svg?)](https://www.ardu-badge.com/ESP32_New_TimerInterrupt)
4+
[![GitHub release](https://img.shields.io/github/release/khoih-prog/ESP32_New_TimerInterrupt.svg)](https://github.com/khoih-prog/ESP32_New_TimerInterrupt/releases)
5+
[![GitHub](https://img.shields.io/github/license/mashape/apistatus.svg)](https://github.com/khoih-prog/ESP32_New_TimerInterrupt/blob/master/LICENSE)
66
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](#Contributing)
7-
[![GitHub issues](https://img.shields.io/github/issues/khoih-prog/ESP32_New_ISR_Servo.svg)](http://github.com/khoih-prog/ESP32_New_ISR_Servo/issues)
7+
[![GitHub issues](https://img.shields.io/github/issues/khoih-prog/ESP32_New_TimerInterrupt.svg)](http://github.com/khoih-prog/ESP32_New_TimerInterrupt/issues)
88

99
---
1010
---
@@ -16,8 +16,10 @@
1616
* [Releases v1.2.1](#releases-v121)
1717
* [Releases v1.2.0](#releases-v120)
1818
* [Releases v1.1.0](#releases-v110)
19+
* [Releases v1.0.1](#releases-v101)
1920
* [Releases v1.0.0](#releases-v100)
2021

22+
2123
---
2224
---
2325

@@ -33,20 +35,23 @@
3335

3436
### Releases v1.2.0
3537

36-
1. Fix breaking issue caused by **ESP32 core v2.0.1+** by increasing `TIMER_INTERVAL_MICRO` to `12uS` from `10uS`. Tested OK with ESP32 core v2.0.3 now
38+
1. Add support to new `ESP32-S3`
39+
2. Optimize library code by using `reference-passing` instead of `value-passing`
3740

3841

3942
### Releases v1.1.0
4043

41-
1. Add support to new `ESP32-S3` (ESP32S3_DEV, ESP32_S3_BOX, UM TINYS3, UM PROS3, UM FEATHERS3, etc.)
42-
2. Convert to h-only library.
43-
3. Optimize library code by using `reference-passing` instead of `value-passing`
44-
4. Improve accuracy by using `float`, instead of `uint32_t` for `position` in degrees
45-
5. Add example [multiFileProject](examples/multiFileProject) to demo for multiple-file project
44+
1. Fix `multiple-definitions` linker error. Drop `src_cpp` and `src_h` directories
45+
46+
### Releases v1.0.1
47+
48+
1. Avoid using `PIN_D1 (GPIO1)` in your code due to issue with core v2.0.0 and v2.0.1. Check [ESP32 Core v2.0.1 / 2.0.1 RC1 crashes if using pinMode with GPIO1 #5868](https://github.com/espressif/arduino-esp32/issues/5868). Only OK with core v1.0.6-
49+
2. Don't use `float` in `ISR` due to issue with core v2.0.0 and v2.0.1. Only OK with core v1.0.6-.
50+
3. Delete Blynk-related examples
51+
4. Add changelog.md
4652

4753
### Releases v1.0.0
4854

49-
1. Basic 16 ISR-based servo controllers using 1 hardware timer for ESP32, ESP32_S2, ESP32_C3-based board
50-
2. Tested with [ESP32 core v2.0.0-rc1+](https://github.com/espressif/arduino-esp32/releases/tag/2.0.0-rc1)
55+
1. Initial coding for ESP32, ESP32_S2, ESP32_C3 boards with [ESP32 core v2.0.0-rc1+](https://github.com/espressif/arduino-esp32/releases/tag/2.0.0-rc1)
5156

5257

examples/Argument_None/Argument_None.ino

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@
5757
bool IRAM_ATTR TimerHandler0(void * timerNo)
5858
{
5959
static bool toggle0 = false;
60-
static bool started = false;
6160

6261
//timer interrupt toggles pin LED_BUILTIN
6362
digitalWrite(LED_BUILTIN, toggle0);
@@ -74,7 +73,6 @@ bool IRAM_ATTR TimerHandler1(void * timerNo)
7473
/////////////////////////////////////////////////////////
7574

7675
static bool toggle1 = false;
77-
static bool started = false;
7876

7977
//timer interrupt toggles outputPin
8078
digitalWrite(PIN_D3, toggle1);

library.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
{
2-
"name": "ESP32_New_ISR_Servo",
2+
"name": "ESP32_New_TimerInterrupt",
33
"version": "1.3.0",
4-
"keywords": "timer, interrupt, isr, hardware, servo, isr-based-servo, servo-control, esp32, esp32-s2, esp32-s3, esp32-c3, mission-critical, precise, non-blocking",
5-
"description": "This library enables you to use 1 Hardware Timer on an ESP32, ESP32_S2, ESP32_C3-based board to control up to 16 or more servo motors. Tested OK with ESP32 core v2.0.4",
4+
"keywords": "timing, device, control, timer, interrupt, timer-interrupt, hardware, isr, isr-based, hardware-timer, isr-timer, isr-based-timer, mission-critical, accuracy, precise, non-blocking, esp32, esp32-s2, esp32-c3, esp32-s3",
5+
"description": "This library enables you to use Interrupt from Hardware Timers on an ESP32, ESP32_S2, ESP32_S3 or ESP32_C3-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":
77
{
88
"name": "Khoi Hoang",
99
"url": "https://github.com/khoih-prog",
1010
"maintainer": true
11-
},
11+
},
1212
"repository":
1313
{
1414
"type": "git",
15-
"url": "https://github.com/khoih-prog/ESP32_New_ISR_Servo"
15+
"url": "https://github.com/khoih-prog/ESP32_New_TimerInterrupt"
1616
},
17-
"homepage": "https://github.com/khoih-prog/ESP32_New_ISR_Servo",
17+
"homepage": "https://github.com/khoih-prog/ESP32_New_TimerInterrupt",
1818
"export": {
1919
"exclude": [
2020
"linux",
@@ -26,5 +26,5 @@
2626
"frameworks": "*",
2727
"platforms": "espressif32",
2828
"examples": "examples/*/*/*.ino",
29-
"headers": [ "ESP32_New_ISR_Servo.h", "ESP32_New_ISR_Servo.hpp" ]
29+
"headers": ["ESP32_New_TimerInterrupt.h", "ESP32_New_ISR_Timer.hpp", "ESP32_New_ISR_Timer.h"]
3030
}

library.properties

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
name=ESP32_New_ISR_Servo
1+
name=ESP32_New_TimerInterrupt
22
version=1.3.0
33
author=Khoi Hoang <khoih.prog@gmail.com>
44
maintainer=Khoi Hoang <khoih.prog@gmail.com>
5-
license=MIT
6-
sentence=This library enables you to use Interrupt from Hardware Timers on ESP32, ESP32_S2, ESP32_S3, ESP32_C3 boards to control multiple servo motors.
7-
paragraph=This library enables you to use 1 Hardware Timer on ESP32, ESP32_S2, ESP32_S3, ESP32_C3-based boards to control 16 or more servo motors. Tested OK with ESP32 core v2.0.4
5+
sentence=This library enables you to use Interrupt from Hardware Timers on an ESP32, ESP32_S2, ESP32_S3 or ESP32_C3-based board
6+
paragraph=These ESP32, ESP32_S2, ESP32_S3 or ESP32_C3 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 is mandatory if you need to measure some data requiring better accuracy. 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 are 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.
87
category=Device Control
9-
url=https://github.com/khoih-prog/ESP32_New_ISR_Servo
8+
url=https://github.com/khoih-prog/ESP32_New_TimerInterrupt
109
architectures=esp32
11-
includes=ESP32_New_ISR_Servo.h, ESP32_New_ISR_Servo.hpp
10+
repository=https://github.com/khoih-prog/ESP32_New_TimerInterrupt
11+
license=MIT
12+
includes=ESP32_New_TimerInterrupt.h,ESP32_New_ISR_Timer.hpp,ESP32_New_ISR_Timer.h

platformio/platformio.ini

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,4 +149,3 @@ build_unflags =
149149
build_flags =
150150
-DARDUINO_ESP32S3_DEV
151151
-DARDUINO_VARIANT="esp32c3"
152-

src/ESP32_New_ISR_Timer-Impl.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
Based on BlynkTimer.h
2828
Author: Volodymyr Shymanskyy
2929
30-
Version: 1.2.1
30+
Version: 1.3.0
3131
3232
Version Modified By Date Comments
3333
------- ----------- ---------- -----------
@@ -36,6 +36,7 @@
3636
1.1.0 K.Hoang 18/01/2022 Fix `multiple-definitions` linker error.
3737
1.2.0 K Hoang 12/02/2022 Add support to new ESP32-S3
3838
1.2.1 K Hoang 16/06/2022 Add support to new Adafruit boards
39+
1.3.0 K Hoang 03/08/2022 Suppress errors and warnings for new ESP32 core
3940
*****************************************************************************************************************************/
4041

4142
#pragma once

src/ESP32_New_ISR_Timer.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
Based on BlynkTimer.h
2828
Author: Volodymyr Shymanskyy
2929
30-
Version: 1.2.1
30+
Version: 1.3.0
3131
3232
Version Modified By Date Comments
3333
------- ----------- ---------- -----------
@@ -36,6 +36,7 @@
3636
1.1.0 K.Hoang 18/01/2022 Fix `multiple-definitions` linker error.
3737
1.2.0 K Hoang 12/02/2022 Add support to new ESP32-S3
3838
1.2.1 K Hoang 16/06/2022 Add support to new Adafruit boards
39+
1.3.0 K Hoang 03/08/2022 Suppress errors and warnings for new ESP32 core
3940
*****************************************************************************************************************************/
4041

4142
#pragma once

src/ESP32_New_ISR_Timer.hpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
Based on BlynkTimer.h
2828
Author: Volodymyr Shymanskyy
2929
30-
Version: 1.2.1
30+
Version: 1.3.0
3131
3232
Version Modified By Date Comments
3333
------- ----------- ---------- -----------
@@ -36,6 +36,7 @@
3636
1.1.0 K.Hoang 18/01/2022 Fix `multiple-definitions` linker error.
3737
1.2.0 K Hoang 12/02/2022 Add support to new ESP32-S3
3838
1.2.1 K Hoang 16/06/2022 Add support to new Adafruit boards
39+
1.3.0 K Hoang 03/08/2022 Suppress errors and warnings for new ESP32 core
3940
*****************************************************************************************************************************/
4041

4142
#pragma once
@@ -48,13 +49,13 @@
4849
#endif
4950

5051
#ifndef ESP32_NEW_TIMERINTERRUPT_VERSION
51-
#define ESP32_NEW_TIMERINTERRUPT_VERSION "ESP32_New_TimerInterrupt v1.2.1"
52+
#define ESP32_NEW_TIMERINTERRUPT_VERSION "ESP32_New_TimerInterrupt v1.3.0"
5253

5354
#define ESP32_NEW_TIMERINTERRUPT_VERSION_MAJOR 1
54-
#define ESP32_NEW_TIMERINTERRUPT_VERSION_MINOR 2
55-
#define ESP32_NEW_TIMERINTERRUPT_VERSION_PATCH 1
55+
#define ESP32_NEW_TIMERINTERRUPT_VERSION_MINOR 3
56+
#define ESP32_NEW_TIMERINTERRUPT_VERSION_PATCH 0
5657

57-
#define ESP32_NEW_TIMERINTERRUPT_VERSION_INT 1002001
58+
#define ESP32_NEW_TIMERINTERRUPT_VERSION_INT 1003000
5859
#endif
5960

6061
#include "TimerInterrupt_Generic_Debug.h"

0 commit comments

Comments
 (0)