-
Notifications
You must be signed in to change notification settings - Fork 836
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
esp32c3 #1751
Comments
You will probably need to provide more details, exactly which code is running and when does it happen? |
sorry, |
My guess is that there is something not quite right with the ESP core library for the ESP32-C3. As you said it is working on the normal ESP32, I'm going to have to ask you for all the exact versions of this library you're using, and the relevant core library versions for BOTH your ESP32 and the ES_32-C3 so a) it can be replicated, and b) determined if it is our library's code that is the problem, or c) If it's a bug in the C3 version. Also, can you please add the following to the "IRremoteESP8266.h" file: #define _ESP32_IRRECV_TIMER_HACK false Put it after: IRremoteESP8266/src/IRremoteESP8266.h Line 46 in 6bc095a
Also can you please confirm/check what the values of the following |
Oh, and what ESP32-C3 dev board are you using, so I can try to get the same? |
ESP32-C3-DevKitM-1 library -> Arduino by Espressif System 2.0.2 I will try your proposal and update you |
Oh, and can you please try installing/running the same example code without anything plugged in to the board, other than the USB cable of course. Just to eliminate any hardware/wiring issues. |
I've ordered a board, but that will take weeks & weeks to arrive. |
Also, what is the version of the IRremoteESP8266 library? |
@hydrafi Have you tried the above? |
The ESP-C3 board I ordered arrived today. |
I just tried building this and got an error message of:
@hydrafi Can you please post the |
Hi,
sorry for my inaction,
I use Arduino, Visualmicro or Visualcode
tomorrow I will dedicate a slot, I will do the tests and I will send you
everything,
thanks a lot
Massimo
Il 01/03/2022 09:59, David Conran ha scritto:
…
I just tried building this and got an error message of:
|Error: This board doesn't support arduino framework! |
@hydrafi <https://github.com/hydrafi> Can you please post the
|platformio.ini|
<https://github.com/crankyoldgit/IRremoteESP8266/blob/master/examples/IRrecvDumpV3/platformio.ini>
file you are using to build with so I can replicate it?
—
Reply to this email directly, view it on GitHub
<#1751 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AIUOZPQPSSFM6ALXV255FH3U5XMA5ANCNFSM5NDFRBNQ>.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
You are receiving this because you were mentioned.Message ID:
***@***.***>
--
Hydra srl
(Le informazioni contenute in questo messaggio di posta elettronica o nei
suoi allegati sono riservate e confidenziali e ne è vietata la diffusione in
qualunque modo eseguita senza autorizzazione scritta. Qualora Lei non fosse
la persona a cui il presente messaggio è destinato, La invitiamo ad
eliminarlo e a non utilizzare in alcun caso il suo contenuto, dandone
gentilmente comunicazione al mittente. Grazie.
This e-mail message, the information it contains and any files attached are
subject to attorney-client privilege and D.Lgs. 196/2003 and contain
confidential information intended only for the person(s) to whom it is
addressed. If you are not the intended recipient, you are hereby notified
that any use or distribution of this e-mail is strictly prohibited: please
notify the sender and delete the original message. Thank you.)
|
Hi, In Arduino IDE 1.8.19 I have installed library -> Arduino by Espressif System 2.0.2 and no problem with ESP32C3 dev module example used is IRrecvDEMO and the target has only 2 components, ESP-kit + IRreceiver. Only my change is the pin used to IRreceived .. |
Good news: I can kind-of replicate the crash. Bad news: I have no idea what is causing it yet. |
I've seemed to have narrowed it down to the |
I think I've found a/the problem. It is the use of GPIO 14, that seems to be used by the USB connection on the dev board for C3 devices. Using: const uint16_t kRecvPin = 10; Seemed to get to the main loop. @hydrafi Can you please test that out? |
FYI: GPIO |
Seems `14` was a poor default for the ESP-C3. Using it causes a reboot. Using `10` for the input GPIO avoids the crash. Fixes #1751
@hydrafi Can you please try the code in branch: https://github.com/crankyoldgit/IRremoteESP8266/tree/espc3 / PR #1768 ? Please let me know how it goes. I've partly tested this on my ESP32-C3 board. I've not tried to capture an IR signal on it yet, but it doesn't crash/boot-loop like it did, thus I'm considering it fixed. |
As a note for those trying to use PlatformIO to build the examples on an [env:esp32c3]
platform = espressif32
platform_packages =
toolchain-riscv-esp
framework-arduinoespressif32@https://github.com/espressif/arduino-esp32.git#cbcba53
platformio/tool-esptoolpy @ ~1.30100
framework = arduino
board = esp32dev
board_build.mcu = esp32c3
board_build.variant = esp32c3
board_build.f_cpu = 160000000L
board_build.f_flash = 80000000L
board_build.flash_mode = dio
board_build.arduino.ldscript = esp32c3_out.ld
build_unflags =
-DARDUINO_ESP32_DEV
-DARDUINO_VARIANT="esp32"
build_flags =
-DARDUINO_ESP32C3_DEV
-DARDUINO_VARIANT="esp32c3"
; -D_IR_LOCALE_=en-AU |
I had used gpio3 however I tried your new example sketch with gpio10 but nothing has changed. I don't know platformio, can you post the bin file that I try it? |
@hydrafi Try this: |
Hi, good news. |
That's great to know. I'll look at the timers used soon as well. |
* Add debug messages & a runtime assert to ensure we correctly allocated a system timer in `IRrecv::enableIRIn()`. * Limit the max number of the system timer to the appropriate size for the ESP32. ESP32-C3's only have two system timers (0-1), the rest have 4 (0-3). * Done in such a way it should be correct for future ESP32 models. Ref: https://docs.espressif.com/projects/arduino-esp32/en/latest/api/timer.html Fixes #1751
Fixes a compile error on older/normal ESP32 Arduino framework/cores. For #1751
@hydrafi Chasing up on this. Can you confirm if the recent changes now construct a binary for the ESP32-C3 that doesn't crash from the examples without any modifications in your build environment/hardware? |
ok |
- Seems an irrecv gpio of `14` was a poor default for the ESP-C3. Using it causes a reboot. - Using `10` for the input GPIO avoids the reboot. - Ensure when we allocate/use a system timer, that it actually succeeds. - ESP32-C3 only has two system timers (0 & 1). Try to automatically cater for that scenario. - Add extra debug messages - Add a run-time assert to check it succeeded. Fixes #1751
_v2.8.2 (20220314)_ **[Bug Fixes]** - ESP32-C3: Fix reboot/crashes on ESP32-C3s when receiving. (#1768 #1751) **[Features]** - HITACHI_AC296: Add `IRac` class support & tests. (#1776 #1758 #1757) - Support for Hitachi RAS-70YHA3 (remote RAR-3U3) (#1758 #1757) - LG: Add Swing Toggle support for Model `LG6711A20083V` (#1771 #1770) - IRMQTTServer: add `MQTT_SERVER_AUTODETECT_ENABLE` via mqtt mDNS (#1769) - Experimental basic support for Kelon 168 bit / 21 byte protocol. (#1747 #1745 #1744) - MitsubishiAC: Tweak repeat gap timing. (#1760 #1759) - Gree YAP0F8 (Detected as Kelvinator) vertical position set support (#1756) - Make KELON (48 bit) protocol decoding stricter. (#1746 #1744) - IRMQTTServer V1.6.1 (#1740 #1739 #1729) - HITACHI_AC264: Add minimal detailed support. (#1735 #1729) - LG2: Improve Light toggle msg handling. (#1738 #1737) - MIDEA: Add support for Quiet, Clean & Freeze Protect controls. (#1734 #1733) - Add basic support for HITACHI_AC264 264bit protocol. (#1730 #1729) - ESP32-C3: Work around for some C3 specific compiler issues again. (#1732 #1695) **[Misc]** - MIDEA: Update supported devices (#1774 #1773 #1716) - Update devices supported by ELECTRA_AC (#1766 #1765) - Improve documentation for `encodePioneer()` (#1761 #1749) - Update (un)supported DAIKIN128 devices. (#1752) - Refactor `decodeCOOLIX()` code & add another test case. (#1750 #1748) - Simplify code based on state_t being initialised by default. (#1736 #1699) - Add comments to help Teknopoint users. (#1731 #1728) - Fix library version string calculation. (#1727 #1725) - Confirm we can reproduce `TurnOnFujitsuAC.ino` via IRac/IRMQTTServer. (#1726 #1701)
##_v2.8.2 (20220314)_ **[Bug Fixes]** - ESP32-C3: Fix reboot/crashes on ESP32-C3s when receiving. (#1768 #1751) **[Features]** - HITACHI_AC296: Add `IRac` class support & tests. (#1776 #1758 #1757) - Support for Hitachi RAS-70YHA3 (remote RAR-3U3) (#1758 #1757) - LG: Add Swing Toggle support for Model `LG6711A20083V` (#1771 #1770) - IRMQTTServer: add `MQTT_SERVER_AUTODETECT_ENABLE` via mqtt mDNS (#1769) - Experimental basic support for Kelon 168 bit / 21 byte protocol. (#1747 #1745 #1744) - MitsubishiAC: Tweak repeat gap timing. (#1760 #1759) - Gree YAP0F8 (Detected as Kelvinator) vertical position set support (#1756) - Make KELON (48 bit) protocol decoding stricter. (#1746 #1744) - IRMQTTServer V1.6.1 (#1740 #1739 #1729) - HITACHI_AC264: Add minimal detailed support. (#1735 #1729) - LG2: Improve Light toggle msg handling. (#1738 #1737) - MIDEA: Add support for Quiet, Clean & Freeze Protect controls. (#1734 #1733) - Add basic support for HITACHI_AC264 264bit protocol. (#1730 #1729) - ESP32-C3: Work around for some C3 specific compiler issues again. (#1732 #1695) **[Misc]** - MIDEA: Update supported devices (#1774 #1773 #1716) - Update devices supported by ELECTRA_AC (#1766 #1765) - Improve documentation for `encodePioneer()` (#1761 #1749) - Update (un)supported DAIKIN128 devices. (#1752) - Refactor `decodeCOOLIX()` code & add another test case. (#1750 #1748) - Simplify code based on state_t being initialised by default. (#1736 #1699) - Add comments to help Teknopoint users. (#1731 #1728) - Fix library version string calculation. (#1727 #1725) - Confirm we can reproduce `TurnOnFujitsuAC.ino` via IRac/IRMQTTServer. (#1726 #1701)
FYI, the changes mentioned above have now been included in the new v2.8.2 release of the library. |
@crankyoldgit I made a custom setup for Tasmota for Platformio to use the C3, S2 and S3. Feel free to use :-) Thx for your awesome work with IRremoteESP8266
|
with esp32c3 device
Guru Meditation Error: Core 0 panic'ed (Load access fault). Exception was unhandled.
Core 0 register dump:
MEPC : 0x420193de RA : 0x42000d4c SP : 0x3fc948e0 GP : 0x3fc8b000
TP : 0x3fc8b424 T0 : 0x4005890e T1 : 0x403848e6 T2 : 0x00000000
S0/FP : 0x00000000 S1 : 0x00000000 A0 : 0x00000000 A1 : 0x0000c350
A2 : 0x0000c350 A3 : 0x00000000 A4 : 0x0000009f A5 : 0x00000032
A6 : 0x3fe00000 A7 : 0x00040000 S2 : 0x3fc8d1bc S3 : 0x00000000
S4 : 0x00000000 S5 : 0x00000000 S6 : 0x00000000 S7 : 0x00000000
S8 : 0x00000000 S9 : 0x00000000 S10 : 0x00000000 S11 : 0x00000000
T3 : 0xffffffff T4 : 0x00000000 T5 : 0x00000000 T6 : 0x00000000
MSTATUS : 0x00001881 MTVEC : 0x40380001 MCAUSE : 0x00000005 MTVAL : 0x00000001
MHARTID : 0x00000000
The text was updated successfully, but these errors were encountered: