IRremoteESP8266
IRremoteESP8266 copied to clipboard
Feature Request: Support for esp32 Arduino 3.0.0
Espressif Arduino 3.0.0 alpha for ESP32, ESP32-S2, ESP32-S3, ES32C3 and ESP32-C6 is released. IRremoteESP8266 does not work with. Compile errors
Can you be more specific? What exactly don't work?
Trying to compile IRrecvDumpV3
with Espressif Arduino 3.0.0 alpha is generating this compile errors
The Timer API has changed. Arduino 3.0.0 is based on IDF 5.1. We (Tasmota crew) tried to adopt to the new API
It does compile, but it seems there are now timing issues. The recognition result are terrible.
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp: In function 'void gpio_intr()':
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:218:10: warning: '++' expression of 'volatile'-qualified type is deprecated [-Wvolatile]
218 | params.rawlen++;
| ~~~~~~~^~~~~~
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:246:3: error: 'timerAlarmEnable' was not declared in this scope; did you mean 'timerAlarm'?
246 | timerAlarmEnable(timer);
| ^~~~~~~~~~~~~~~~
| timerAlarm
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp: In member function 'void IRrecv::enableIRIn(bool)':
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:362:21: error: too many arguments to function 'hw_timer_t* timerBegin(uint32_t)'
362 | timer = timerBegin(_timer_num, 80, true);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
In file included from /Users/hans/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal.h:84,
from /Users/hans/.platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:36,
from /Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.h:10,
from /Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:6:
/Users/hans/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-timer.h:35:14: note: declared here
35 | hw_timer_t * timerBegin(uint32_t frequency);
| ^~~~~~~~~~
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:371:3: error: 'timerAlarmWrite' was not declared in this scope; did you mean 'timerWrite'?
371 | timerAlarmWrite(timer, MS_TO_USEC(params.timeout), ONCE);
| ^~~~~~~~~~~~~~~
| timerWrite
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:375:23: error: too many arguments to function 'void timerAttachInterrupt(hw_timer_t*, void (*)())'
375 | timerAttachInterrupt(timer, &read_timeout, false);
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/hans/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-timer.h:50:6: note: declared here
50 | void timerAttachInterrupt(hw_timer_t * timer, void (*userFunc)(void));
| ^~~~~~~~~~~~~~~~~~~~
Compiling .pio/build/esp32dev/lib0e3/src/IRutils.cpp.o
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp: In member function 'void IRrecv::disableIRIn()':
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:401:3: error: 'timerAlarmDisable' was not declared in this scope
401 | timerAlarmDisable(timer);
| ^~~~~~~~~~~~~~~~~
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp: In member function 'void IRrecv::pause()':
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:416:3: error: 'gpio_intr_disable' was not declared in this scope; did you mean 'esp_intr_disable'?
416 | gpio_intr_disable((gpio_num_t)params.recvpin);
| ^~~~~~~~~~~~~~~~~
| esp_intr_disable
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp: In member function 'void IRrecv::resume()':
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:429:3: error: 'timerAlarmDisable' was not declared in this scope
429 | timerAlarmDisable(timer);
| ^~~~~~~~~~~~~~~~~
Archiving .pio/build/esp32dev/libcbb/libESPmDNS.a
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:430:3: error: 'gpio_intr_enable' was not declared in this scope; did you mean 'esp_intr_enable'?
430 | gpio_intr_enable((gpio_num_t)params.recvpin);
| ^~~~~~~~~~~~~~~~
| esp_intr_enable
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp: In member function 'void IRrecv::crudeNoiseFilter(decode_results*, uint16_t)':
/Volumes/T7-Mac/IRremoteESP8266/src/IRrecv.cpp:506:37: warning: compound assignment with 'volatile'-qualified left operand is deprecated [-Wvolatile]
506 | results->rawbuf[offset - 1] += addition;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
Indexing .pio/build/esp32dev/libcbb/libESPmDNS.a
*** [.pio/build/esp32dev/lib0e3/src/IRrecv.cpp.o] Error 1
I made a Platform to use Arduino 3.0.0 alpha1 with Platformio. Just use this for esp32 devices
platform = https://github.com/tasmota/platform-espressif32/releases/download/2023.10.10/platform-espressif32.zip
The compilation issues above are already solved in the Tasmota development
branch and I'm working on patching these in #2040
Not yet testing with hardware, just 'making it work' first 😅
The gpio_intr_enable
and gpio_intr_disable
issues are with the 2023.10.10 platform release, and don't occur when using 2023.10.03.
@tonhuisman Platform 2023.10.10 uses the code base of Arduino 3.0.0 alpha1 release. Every other(platform) builds before are not relevant. The are WiP builds and do not align with anything official. Platform 2023.10.03 is NOT Arduino 3.0.0! it is Arduino core 2.0.14
@tonhuisman Now the fun starts, it does compile now with your open PR. Try to receive something. EDIT: Does not work. Crashes. In earlier build it did not crash. So more work
Now the fun starts
Not sure if that's to blame on my work, as I just copied the mods made at Tasmota 😄
It crashes at calling timerAlarm
, so I'd expect that to crash on Tasmota as well when using Arduinoe 3.0, but as Tasmota is still using Arduino 2,0.14 it'll probably work as before...
It crashes with Tasmota too. Earlier WiP builds (before alpha1) did not crash. Don't know if the introduced a bug or more changes where done which needs adopting. But the non crashing are not useable either since most of the time decoding fails. Ground work / investigation needs to be done.
I have fixed the crash and the timer issues here https://github.com/arendst/Tasmota/pull/19904
I have fixed the crash and the timer issues here arendst/Tasmota#19904
Thanks! I'll apply those changes in my PR soon.
I've applied the latest fixes by @s-hadinger and also added an extra NULL-check so it won't crash and burn when disableIRIn()
is called multiple times.
I'm also getting the same error on the ESP32 38-pin Development Board. Is there any update regarding this issue? What should I do? Could you please guide me on this problem?
In function 'void gpio_intr()':
error: 'timerAlarmEnable' was not declared in this scope; did you mean 'timerAlarm'?
246 | timerAlarmEnable(timer);
| ^~~~~~~~~~~~~~~~
| timerAlarm
In member function 'void IRrecv::enableIRIn(bool)':
error: too many arguments to function 'hw_timer_t* timerBegin(uint32_t)'
362 | timer = timerBegin(_timer_num, 80, true);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
note: declared here
35 | hw_timer_t *timerBegin(uint32_t frequency);
| ^~~~~~~~~~
error: 'timerAlarmWrite' was not declared in this scope; did you mean 'timerWrite'?
371 | timerAlarmWrite(timer, MS_TO_USEC(params.timeout), ONCE);
| ^~~~~~~~~~~~~~~
| timerWrite
error: too many arguments to function 'void timerAttachInterrupt(hw_timer_t*, void (*)())'
375 | timerAttachInterrupt(timer, &read_timeout, false);
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
note: declared here
50 | void timerAttachInterrupt(hw_timer_t *timer, void (*userFunc)(void));
| ^~~~~~~~~~~~~~~~~~~~
In member function 'void IRrecv::disableIRIn()':
error: 'timerAlarmDisable' was not declared in this scope
401 | timerAlarmDisable(timer);
| ^~~~~~~~~~~~~~~~~
In member function 'void IRrecv::pause()':
error: 'gpio_intr_disable' was not declared in this scope; did you mean 'esp_intr_disable'?
416 | gpio_intr_disable((gpio_num_t)params.recvpin);
| ^~~~~~~~~~~~~~~~~
| esp_intr_disable
In member function 'void IRrecv::resume()':
error: 'timerAlarmDisable' was not declared in this scope
429 | timerAlarmDisable(timer);
| ^~~~~~~~~~~~~~~~~
error: 'gpio_intr_enable' was not declared in this scope; did you mean 'esp_intr_enable'?
430 | gpio_intr_enable((gpio_num_t)params.recvpin);
| ^~~~~~~~~~~~~~~~
| esp_intr_enable
Using library IRremoteESP8266 at version 2.8.6
exit status 1
Compilation error: exit status 1
We have made all the fixes in Tasmota but I lost track of which ones were backported here
@avinashboy Are you compiling #2040 with IDF 5.1? As only that branch (PR) is adjusted and (somewhat) tested with IDF 5.1, the main 2.8.6 release doesn't have that (yet).
I am a teacher, 4 days ago, arduino-esp32 was officially updated to version 3.0.0 Release, then I found that IRremoteESP8266 compiler error, currently I can only let students use arduino-esp32 version 2.0.17. Will you update the library in the future to make it compatible with 3.0.0?Wish you a happy life.
@avinashboy Are you compiling #2040 with IDF 5.1? As only that branch (PR) is adjusted and (somewhat) tested with IDF 5.1, the main 2.8.6 release doesn't have that (yet).
Yes, I do
Thank you very much. Looking forward to your update.
I am a teacher, 4 days ago, arduino-esp32 was officially updated to version 3.0.0 Release, then I found that IRremoteESP8266 compiler error, currently I can only let students use arduino-esp32 version 2.0.17. Will you update the library in the future to make it compatible with 3.0.0?Wish you a happy life.
Thank you so much. It works if we downgrade the ESP32 board manager to 2.0.17.
Hi Guys! First at all, congratulations by IRremoteESP8266!
By the way, I tried esp32-arduino-libs-3.0.2@idf-release_v5.1 and I would like you let know the compile problems:
Using library IRremoteESP8266 version 2.8.6 by David Conran, Mark Szabo, Sebastien Warin, Roi Dayan, Massimiliano Pinto, Christian Nilsson in folder "C:\Users\phmota\Documents\Arduino\libraries\IRremoteESP8266" "c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp-x32\2302/bin/xtensa-esp32-elf-g++" -MMD -c "@c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/flags/cpp_flags" -w -Os -DF_CPU=240000000L -DARDUINO=108010 -DARDUINO_ESP32_DEV -DARDUINO_ARCH_ESP32 "-DARDUINO_BOARD="ESP32_DEV"" "-DARDUINO_VARIANT="esp32"" -DARDUINO_PARTITION_default "-DARDUINO_HOST_OS="windows"" "-DARDUINO_FQBN="esp32:esp32:esp32:UploadSpeed=921600,CPUFreq=240,FlashFreq=80,FlashMode=qio,FlashSize=4M,PartitionScheme=default,DebugLevel=none,PSRAM=disabled,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default"" -DESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DARDUINO_USB_CDC_ON_BOOT=0 "@c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/flags/defines" "-ID:\Google Drive\PROGRAMAÇÃO\Arduino\3 - WiFi\ESP32 - DS18B20 PIR Fancoletes" -iprefix "c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/include/" "@c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/flags/includes" "-Ic:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/qio_qspi/include" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\cores\esp32" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\variants\esp32" -I"C:\Users\phmota\Documents\Arduino\libraries\OneWire" -I"C:\Users\phmota\Documents\Arduino\libraries\DallasTemperature" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\WiFi\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\Network\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\HTTPClient\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\NetworkClientSecure\src" -I"C:\Users\phmota\Documents\Arduino\libraries\NTPClient" -I"C:\Users\phmota\Documents\Arduino\libraries\OneWire\utility" -I"C:\Users\phmota\Documents\Arduino\libraries\DallasTemperature\utility" -I"C:\Users\phmota\Documents\Arduino\libraries\NTPClient\utility" -I"C:\Users\phmota\Documents\Arduino\libraries\IRremoteESP8266\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\EEPROM\src" -I"C:\Users\phmota\Documents\Arduino\libraries\WebServer\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\FS\src" "@C:\Users\phmota\AppData\Local\Temp\VMBuilds\Fancoletes ESP32\esp32_esp32\Release/build_opt.h" "@C:\Users\phmota\AppData\Local\Temp\VMBuilds\Fancoletes ESP32\esp32_esp32\Release/file_opts" "C:\Users\phmota\Documents\Arduino\libraries\IRremoteESP8266\src\IRac.cpp" -o "C:\Users\phmota\AppData\Local\Temp\VMBuilds\Fancoletes ESP32\esp32_esp32\Release\IRremoteESP8266\IRac.cpp.o" "c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp-x32\2302/bin/xtensa-esp32-elf-g++" -MMD -c "@c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/flags/cpp_flags" -w -Os -DF_CPU=240000000L -DARDUINO=108010 -DARDUINO_ESP32_DEV -DARDUINO_ARCH_ESP32 "-DARDUINO_BOARD="ESP32_DEV"" "-DARDUINO_VARIANT="esp32"" -DARDUINO_PARTITION_default "-DARDUINO_HOST_OS="windows"" "-DARDUINO_FQBN="esp32:esp32:esp32:UploadSpeed=921600,CPUFreq=240,FlashFreq=80,FlashMode=qio,FlashSize=4M,PartitionScheme=default,DebugLevel=none,PSRAM=disabled,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default"" -DESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DARDUINO_USB_CDC_ON_BOOT=0 "@c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/flags/defines" "-ID:\Google Drive\PROGRAMAÇÃO\Arduino\3 - WiFi\ESP32 - DS18B20 PIR Fancoletes" -iprefix "c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/include/" "@c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/flags/includes" "-Ic:\Users\phmota\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32/qio_qspi/include" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\cores\esp32" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\variants\esp32" -I"C:\Users\phmota\Documents\Arduino\libraries\OneWire" -I"C:\Users\phmota\Documents\Arduino\libraries\DallasTemperature" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\WiFi\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\Network\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\HTTPClient\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\NetworkClientSecure\src" -I"C:\Users\phmota\Documents\Arduino\libraries\NTPClient" -I"C:\Users\phmota\Documents\Arduino\libraries\OneWire\utility" -I"C:\Users\phmota\Documents\Arduino\libraries\DallasTemperature\utility" -I"C:\Users\phmota\Documents\Arduino\libraries\NTPClient\utility" -I"C:\Users\phmota\Documents\Arduino\libraries\IRremoteESP8266\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\EEPROM\src" -I"C:\Users\phmota\Documents\Arduino\libraries\WebServer\src" -I"c:\Users\phmota\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\FS\src" "@C:\Users\phmota\AppData\Local\Temp\VMBuilds\Fancoletes ESP32\esp32_esp32\Release/build_opt.h" "@C:\Users\phmota\AppData\Local\Temp\VMBuilds\Fancoletes ESP32\esp32_esp32\Release/file_opts" "C:\Users\phmota\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp" -o "C:\Users\phmota\AppData\Local\Temp\VMBuilds\Fancoletes ESP32\esp32_esp32\Release\IRremoteESP8266\IRrecv.cpp.o"
irrecv.cpp: In function void gpio_intr()
irrecv.cpp: 246:3: error: 'timerAlarmEnable' was not declared in this scope; did you mean 'timerAlarm'? 246 | timerAlarmEnable(timer) | ^~~~~~~~~~~~~~~~ | timerAlarm irrecv.cpp: In member function void IRrecv::enableIRIn(bool)
irrecv.cpp: 362:21: error: too many arguments to function 'hw_timer_t* timerBegin(uint32_t) 362 | timer = timerBegin(_timer_num, 80, true) | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
esp32-hal.h:84: In file included from arduino.h:36: from IRrecv.h:10: from irrecv.cpp:6: from esp32-hal-timer.h:35: note declared here 35 | hw_timer_t *timerBegin(uint32_t frequency) | ^~~~~~~~~~
irrecv.cpp: 371:3: error: 'timerAlarmWrite' was not declared in this scope; did you mean 'timerWrite'? 371 | timerAlarmWrite(timer, MS_TO_USEC(params.timeout), ONCE) | ^~~~~~~~~~~~~~~ | timerWrite
irrecv.cpp: 375:23: error: too many arguments to function 'void timerAttachInterrupt(hw_timer_t*, void (*)()) 375 | timerAttachInterrupt(timer, &read_timeout, false) | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ esp32-hal-timer.h:50: note declared here 50 | void timerAttachInterrupt(hw_timer_t *timer, void (*userFunc)(void)) | ^~~~~~~~~~~~~~~~~~~~ irrecv.cpp: In member function void IRrecv::disableIRIn()
irrecv.cpp: 401:3: error: 'timerAlarmDisable' was not declared in this scope 401 | timerAlarmDisable(timer) | ^~~~~~~~~~~~~~~~~ irrecv.cpp: In member function void IRrecv::pause()
irrecv.cpp: 416:3: error: 'gpio_intr_disable' was not declared in this scope; did you mean 'esp_intr_disable'? 416 | gpio_intr_disable((gpio_num_t)params.recvpin) | ^~~~~~~~~~~~~~~~~ | esp_intr_disable irrecv.cpp: In member function void IRrecv::resume()
irrecv.cpp: 429:3: error: 'timerAlarmDisable' was not declared in this scope 429 | timerAlarmDisable(timer) | ^~~~~~~~~~~~~~~~~
irrecv.cpp: 430:3: error: 'gpio_intr_enable' was not declared in this scope; did you mean 'esp_intr_enable'? 430 | gpio_intr_enable((gpio_num_t)params.recvpin) | ^~~~~~~~~~~~~~~~ | esp_intr_enable
@phphengenharia use the PR #2040 which adds the needed changes.
It compiled fine. Thanks.
I need also the update for Espressif ver 3.x
I need also the update for Espressif ver 3.x
Repeated answer: use the PR #2040 which adds the needed changes.
Steps to use PR https://github.com/crankyoldgit/IRremoteESP8266/pull/2040 in Arduino IDE 2.3.2 under Linux (no IDE restart required):
##########
# prerequisites:
# * have Github "gh" cli tool installed, e.g. for Debian 12 with "sudo apt install gh" (while quite outdated, it works for these steps)
# * in Arduino IDE 2's Library Manager GUI, remove any currently installed "IRremoteESP8266" released library, e.g. remove the currently latest (as of this writing) release 2.8.6
##########
# clone *this* repository to Arduino IDE 2's library directory:
cd "${HOME}/Arduino/libraries/"
git clone https://github.com/crankyoldgit/IRremoteESP8266.git
# check out merge request #2040:
cd "${HOME}/Arduino/libraries/IRremoteESP8266/"
gh pr checkout 2040
# if this is the first time the gh command is used, follow setup instructions,
# e.g. "gh auth login"
# then execute "gh pr checkout 2040" again
# if everything went well, "git show --summary" should show the following latest commit:
# $ git show --summary
# commit db98aa001b8302ee827d1cd23367eb43480ba5ee (HEAD -> feature/C++20-compatibility)
# Author: Ton Huisman <[email protected]>
# Date: Thu Nov 2 21:22:16 2023 +0100
#
# [Lib] Add latest ESP32 fixes by @s-hadinger, add extra NULL safeguard, update Platform build
#
Steps to use PR #2040 in Arduino IDE 2.3.2 under Linux (no IDE restart required):
Can someone provide a Windows solution?
For Windows the git
commands are the same, with the same requirement: having the Github tools installed. The only difference would be the directory names, but you should be able to open a command prompt from Windows Explorer to get there.
Hello, Why the main branch doesn't support the version 3.x ?
Thierry
Le ven. 9 août 2024 à 08:49, Ton Huisman @.***> a écrit :
For Windows the git commands are the same, with the same requirement: having the Github tools installed. The only difference would be the directory names, but you should be able to open a command prompt from Windows Explorer to get there.
— Reply to this email directly, view it on GitHub https://github.com/crankyoldgit/IRremoteESP8266/issues/2039#issuecomment-2277871054, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA6QD4NX3RVBSLCASDNUFQLZQS3D3AVCNFSM6AAAAAA5V66ZQOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENZXHA3TCMBVGQ . You are receiving this because you commented.Message ID: @.***>
-- Thierry Vorms Québec Canada