Sitelet https://github.com/crankyoldgit/IRremoteESP8266/issues/1695#top
Skip to content

ESP32-C3 Support #1695

Description

@sh-user
ESP32-C3
RISC-V processor (RV32IMC)
Arduino 1.8.13
IRremoteESP8266 library 2.8.0

Is it possible to support ESP32-C3?
Example IRrecvDemo.ino does not compile

C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp: In member function 'uint32_t IRrecv::ticksLow(uint32_t, uint8_t, uint16_t)':
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1082:8: error: no matching function for call to 'max(int32_t, int)'
       0));
        ^
In file included from c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\algorithm:61,
                 from C:\Users\Alex1\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.1\cores\esp32/Arduino.h:155,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.h:10,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:6:
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algobase.h:219:5: note: candidate: 'template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)'
     max(const _Tp& __a, const _Tp& __b)
     ^~~
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algobase.h:219:5: note:   template argument deduction/substitution failed:
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1082:8: note:   deduced conflicting types for parameter 'const _Tp' ('long int' and 'int')
       0));
        ^
In file included from c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\algorithm:61,
                 from C:\Users\Alex1\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.1\cores\esp32/Arduino.h:155,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.h:10,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:6:
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algobase.h:265:5: note: candidate: 'template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)'
     max(const _Tp& __a, const _Tp& __b, _Compare __comp)
     ^~~
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algobase.h:265:5: note:   template argument deduction/substitution failed:
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1082:8: note:   deduced conflicting types for parameter 'const _Tp' ('long int' and 'int')
       0));
        ^
In file included from c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\algorithm:62,
                 from C:\Users\Alex1\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.1\cores\esp32/Arduino.h:155,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.h:10,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:6:
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algo.h:3462:5: note: candidate: 'template<class _Tp> _Tp std::max(std::initializer_list<_Tp>)'
     max(initializer_list<_Tp> __l)
     ^~~
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algo.h:3462:5: note:   template argument deduction/substitution failed:
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1082:8: note:   mismatched types 'std::initializer_list<_Tp>' and 'long int'
       0));
        ^
In file included from c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\algorithm:62,
                 from C:\Users\Alex1\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.1\cores\esp32/Arduino.h:155,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.h:10,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:6:
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algo.h:3468:5: note: candidate: 'template<class _Tp, class _Compare> _Tp std::max(std::initializer_list<_Tp>, _Compare)'
     max(initializer_list<_Tp> __l, _Compare __comp)
     ^~~
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algo.h:3468:5: note:   template argument deduction/substitution failed:
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1082:8: note:   mismatched types 'std::initializer_list<_Tp>' and 'long int'
       0));
        ^
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp: In member function 'bool IRrecv::matchAtLeast(uint32_t, uint32_t, uint8_t, uint16_t)':
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1165:75: error: no matching function for call to 'min(uint32_t&, unsigned int)'
   return measured >= ticksLow(std::min(desired, MS_TO_USEC(params.timeout)),
                                                                           ^
In file included from c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\algorithm:61,
                 from C:\Users\Alex1\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.1\cores\esp32/Arduino.h:155,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.h:10,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:6:
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algobase.h:195:5: note: candidate: 'template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&)'
     min(const _Tp& __a, const _Tp& __b)
     ^~~
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algobase.h:195:5: note:   template argument deduction/substitution failed:
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1165:75: note:   deduced conflicting types for parameter 'const _Tp' ('long unsigned int' and 'unsigned int')
   return measured >= ticksLow(std::min(desired, MS_TO_USEC(params.timeout)),
                                                                           ^
In file included from c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\algorithm:61,
                 from C:\Users\Alex1\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.1\cores\esp32/Arduino.h:155,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.h:10,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:6:
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algobase.h:243:5: note: candidate: 'template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare)'
     min(const _Tp& __a, const _Tp& __b, _Compare __comp)
     ^~~
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algobase.h:243:5: note:   template argument deduction/substitution failed:
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1165:75: note:   deduced conflicting types for parameter 'const _Tp' ('long unsigned int' and 'unsigned int')
   return measured >= ticksLow(std::min(desired, MS_TO_USEC(params.timeout)),
                                                                           ^
In file included from c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\algorithm:62,
                 from C:\Users\Alex1\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.1\cores\esp32/Arduino.h:155,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.h:10,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:6:
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algo.h:3450:5: note: candidate: 'template<class _Tp> _Tp std::min(std::initializer_list<_Tp>)'
     min(initializer_list<_Tp> __l)
     ^~~
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algo.h:3450:5: note:   template argument deduction/substitution failed:
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1165:75: note:   mismatched types 'std::initializer_list<_Tp>' and 'long unsigned int'
   return measured >= ticksLow(std::min(desired, MS_TO_USEC(params.timeout)),
                                                                           ^
In file included from c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\algorithm:62,
                 from C:\Users\Alex1\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.1\cores\esp32/Arduino.h:155,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.h:10,
                 from C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:6:
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algo.h:3456:5: note: candidate: 'template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare)'
     min(initializer_list<_Tp> __l, _Compare __comp)
     ^~~
c:\users\alex1\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\gcc8_4_0-esp-2021r2\riscv32-esp-elf\include\c++\8.4.0\bits\stl_algo.h:3456:5: note:   template argument deduction/substitution failed:
C:\Users\Alex1\Documents\Arduino\libraries\IRremoteESP8266\src\IRrecv.cpp:1165:75: note:   mismatched types 'std::initializer_list<_Tp>' and 'long unsigned int'
   return measured >= ticksLow(std::min(desired, MS_TO_USEC(params.timeout)),
                                                                           ^
exit status 1
Error compiling for board ESP32C3 Dev Module.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions