-
Notifications
You must be signed in to change notification settings - Fork 129
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
Compilation error #135
Comments
Hi Szymon, Looks like something is not compiling in the IotWebConf templates. I retested it and compiles without any problems. Try to update the environment to the latest version using pio update... See https://docs.platformio.org/en/latest/core/userguide/pkg/cmd_update.html#cmd-pkg-update Below the output of my compilation: * Executing task: C:\Users\rzeld\.platformio\penv\Scripts\platformio.exe run
Processing esp32cam_m5stack_unitcams3 (board: esp32cam_m5stack_unitcams3; platform: espressif32; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32cam_m5stack_unitcams3.html
PLATFORM: Espressif 32 (6.7.0) > ESP32-CAM M5STACK UNITCAMS3
HARDWARE: ESP32S3 240MHz, 320KB RAM, 16MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-builtin, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
- framework-arduinoespressif32 @ 3.20016.0 (2.0.16)
- tool-esptoolpy @ 1.40501.0 (4.5.1)
- toolchain-riscv32-esp @ 8.4.0+2021r2-patch5
- toolchain-xtensa-esp32s3 @ 8.4.0+2021r2-patch5
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 38 compatible libraries
Scanning dependencies...
Dependency Graph
|-- IotWebConf @ 3.2.1
|-- Micro-RTSP @ 0.1.6
|-- micro-moustache @ 1.0.1
|-- ESPmDNS @ 2.0.0
|-- RTSPServer @ 1.0.0
Building in release mode
prepare_file([".pio\build\esp32cam_m5stack_unitcams3\index.min.html.txt.o"], ["html\index.min.html"])
Converting .pio\build\esp32cam_m5stack_unitcams3\index.min.html.txt.o
revert_original_file([".pio\build\esp32cam_m5stack_unitcams3\index.min.html.txt.o"], ["html\index.min.html"])
Compiling .pio\build\esp32cam_m5stack_unitcams3\src\main.cpp.o
Building .pio\build\esp32cam_m5stack_unitcams3\bootloader.bin
Generating partitions .pio\build\esp32cam_m5stack_unitcams3\partitions.bin
esptool.py v4.5.1
Creating esp32s3 image...
Merged 1 ELF section
Successfully created esp32s3 image.
Compiling .pio\build\esp32cam_m5stack_unitcams3\libba4\WiFi\WiFi.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libba4\WiFi\WiFiAP.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libba4\WiFi\WiFiClient.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libba4\WiFi\WiFiGeneric.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libba4\WiFi\WiFiMulti.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libba4\WiFi\WiFiSTA.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libba4\WiFi\WiFiScan.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libba4\WiFi\WiFiServer.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libba4\WiFi\WiFiUdp.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libad0\DNSServer\DNSServer.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libfcc\FS\FS.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libfcc\FS\vfs_api.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib3d8\WebServer\Parsing.cpp.o
Archiving .pio\build\esp32cam_m5stack_unitcams3\libba4\libWiFi.a
Archiving .pio\build\esp32cam_m5stack_unitcams3\libad0\libDNSServer.a
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib3d8\WebServer\WebServer.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib3d8\WebServer\detail\mimetable.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib963\EEPROM\EEPROM.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib068\ESPmDNS\ESPmDNS.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libe63\IotWebConf\IotWebConf.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libe63\IotWebConf\IotWebConfMultipleWifi.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libe63\IotWebConf\IotWebConfOptionalGroup.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libe63\IotWebConf\IotWebConfParameter.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib9ce\Micro-RTSP\CRtspSession.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib9ce\Micro-RTSP\CStreamer.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib9ce\Micro-RTSP\JPEGSamples.cpp.o
Archiving .pio\build\esp32cam_m5stack_unitcams3\libfcc\libFS.a
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib9ce\Micro-RTSP\OV2640.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib9ce\Micro-RTSP\OV2640Streamer.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib9ce\Micro-RTSP\SimStreamer.cpp.o
Archiving .pio\build\esp32cam_m5stack_unitcams3\lib963\libEEPROM.a
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib203\rtsp_server\rtsp_server.cpp.o
Archiving .pio\build\esp32cam_m5stack_unitcams3\lib3d8\libWebServer.a
Archiving .pio\build\esp32cam_m5stack_unitcams3\libe63\libIotWebConf.a
Archiving .pio\build\esp32cam_m5stack_unitcams3\lib068\libESPmDNS.a
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\Esp.cpp.o
Archiving .pio\build\esp32cam_m5stack_unitcams3\lib9ce\libMicro-RTSP.a
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\FirmwareMSC.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\FunctionalInterrupt.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\HWCDC.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\HardwareSerial.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\IPAddress.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\IPv6Address.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\MD5Builder.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\Print.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\Stream.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\StreamString.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\Tone.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\USB.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\USBCDC.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\USBMSC.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\WMath.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\WString.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\base64.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\cbuf.cpp.o
Archiving .pio\build\esp32cam_m5stack_unitcams3\lib203\librtsp_server.a
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-adc.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-bt.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-cpu.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-dac.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-gpio.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-i2c-slave.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-i2c.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-ledc.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-matrix.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-misc.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-psram.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-rgb-led.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-rmt.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-sigmadelta.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-spi.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-time.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-timer.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-tinyusb.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-touch.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\esp32-hal-uart.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\firmware_msc_fat.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\libb64\cdecode.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\libb64\cencode.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\main.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\stdlib_noniso.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\wiring_pulse.c.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\FrameworkArduino\wiring_shift.c.o
Archiving .pio\build\esp32cam_m5stack_unitcams3\libFrameworkArduino.a
Linking .pio\build\esp32cam_m5stack_unitcams3\firmware.elf
Retrieving maximum program size .pio\build\esp32cam_m5stack_unitcams3\firmware.elf
Checking size .pio\build\esp32cam_m5stack_unitcams3\firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM: [=== ] 25.8% (used 84412 bytes from 327680 bytes)
Flash: [===== ] 48.8% (used 960389 bytes from 1966080 bytes)
Building .pio\build\esp32cam_m5stack_unitcams3\firmware.bin
esptool.py v4.5.1
Creating esp32s3 image...
Merged 2 ELF sections
Successfully created esp32s3 image. |
Hello ! Thanks for quick relay, My log below, but the question is , can some one compile all camera models from IA thinker till ttgo and drop somewhere bin files ? Personally I am interested on Unit CamS3 but other people can use other models , same way as Tasmota have bin files in OTA section ;-) Result of my update: |
Hi, They are part of a release. Take a look at: https://github.com/rzeldent/esp32cam-rtsp/releases under the Assets! |
Hello !, Yes it is but not for S3 chip ;-(((((( Unexpected chip id in image. Expected 9 but value was 0. Is this image for a different chip model? Can Some one do for ESP32 unit CAMS3 ?? Regards |
fwiw, I see the same errors compiling on macos, compiling on linux works fine. |
I encountered the same issue..... Changing the [env]
platform = espressif32
framework = arduino to [env]
platform = [email protected]
framework = arduino fixed the problem. |
Or keep th environment up to date..,
https://docs.platformio.org/en/latest/core/userguide/pkg/cmd_update.html#cmd-pkg-update
This will update all the packages
…On Thu, 23 Jan 2025 at 18:49, tbnobody ***@***.***> wrote:
I encountered the same issue.....
Changing the platformio.ini from
[env]platform = espressif32framework = arduino
to
[env]platform = ***@***.*** = arduino
fixed the problem.
—
Reply to this email directly, view it on GitHub
<#135 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB2ENB5GW7E6N4Y6EAATRJT2METUDAVCNFSM6AAAAABL6EXDKKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMJQGU3DCMZZGE>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Sorry, I must be misunderstanding something. Are you suggesting there is another way of updating that should produce working results? I've also tried $ uname -a
Darwin Mac 24.2.0 Darwin Kernel Version 24.2.0: Fri Dec 6 18:51:28 PST 2024; root:xnu-11215.61.5~2/RELEASE_ARM64_T8112 arm64
$ pio pkg update
Resolving esp32cam_ai_thinker dependencies...
Already up-to-date.
Resolving esp32cam_espressif_esp_eye dependencies...
Already up-to-date.
Resolving esp32cam_espressif_esp32s2_cam_board dependencies...
Already up-to-date.
Resolving esp32cam_espressif_esp32s2_cam_header dependencies...
Already up-to-date.
Resolving esp32cam_espressif_esp32s3_cam_lcd dependencies...
Already up-to-date.
Resolving esp32cam_espressif_esp32s3_eye dependencies...
Already up-to-date.
Resolving esp32cam_freenove_wrover_kit dependencies...
Already up-to-date.
Resolving esp32cam_m5stack_camera_psram dependencies...
Already up-to-date.
Resolving esp32cam_m5stack_camera dependencies...
Already up-to-date.
Resolving esp32cam_m5stack_esp32cam dependencies...
Already up-to-date.
Resolving esp32cam_m5stack_unitcam dependencies...
Already up-to-date.
Resolving esp32cam_m5stack_unitcams3 dependencies...
Already up-to-date.
Resolving esp32cam_m5stack_wide dependencies...
Already up-to-date.
Resolving esp32cam_m5stack_m5poecam_w dependencies...
Already up-to-date.
Resolving esp32cam_seeed_xiao_esp32s3_sense dependencies...
Already up-to-date.
Resolving esp32cam_ttgo_t_camera dependencies...
Already up-to-date.
Resolving esp32cam_ttgo_t_journal dependencies...
Already up-to-date.
$ pio run --environment esp32cam_ai_thinker
Processing esp32cam_ai_thinker (board: esp32cam_ai_thinker; platform: espressif32; framework: arduino)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32cam_ai_thinker.html
PLATFORM: Espressif 32 (51.3.6+sha.ec17486) > ESP32CAM AI Thinker
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
- framework-arduinoespressif32 @ 3.0.7
- framework-arduinoespressif32-libs @ 5.1.0+sha.632e0c2a9f
- tool-esptoolpy @ 4.8.1
- tool-mklittlefs @ 3.2.0
- tool-riscv32-esp-elf-gdb @ 12.1.0+20221002
- tool-xtensa-esp-elf-gdb @ 12.1.0+20221002
- toolchain-xtensa-esp32 @ 12.2.0+20230208
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 45 compatible libraries
Scanning dependencies...
Dependency Graph
|-- IotWebConf @ 3.2.1
|-- Micro-RTSP @ 0.1.6
|-- micro-moustache @ 1.0.1
|-- WiFi @ 3.0.7
|-- ESPmDNS @ 3.0.7
|-- RTSPServer @ 1.0.0
Building in release mode
Compiling .pio/build/esp32cam_ai_thinker/src/main.cpp.o
Archiving .pio/build/esp32cam_ai_thinker/lib2dd/libNetwork.a
Indexing .pio/build/esp32cam_ai_thinker/lib2dd/libNetwork.a
Compiling .pio/build/esp32cam_ai_thinker/lib332/WiFi/WiFiGeneric.cpp.o
Compiling .pio/build/esp32cam_ai_thinker/lib332/WiFi/WiFiMulti.cpp.o
Compiling .pio/build/esp32cam_ai_thinker/lib332/WiFi/WiFiSTA.cpp.o
Compiling .pio/build/esp32cam_ai_thinker/lib332/WiFi/WiFiScan.cpp.o
Compiling .pio/build/esp32cam_ai_thinker/libf78/DNSServer/DNSServer.cpp.o
Compiling .pio/build/esp32cam_ai_thinker/lib5a9/FS/FS.cpp.o
Compiling .pio/build/esp32cam_ai_thinker/lib5a9/FS/vfs_api.cpp.o
In file included from .pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameter.h:949,
from src/main.cpp:6:
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:65:42: error: expected unqualified-id before 'const'
65 | PrimitiveBuilder<ValueType, ParamType>(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:65:42: error: expected ')' before 'const'
65 | PrimitiveBuilder<ValueType, ParamType>(const char* id) :
| ~^~~~~
| )
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:102:43: error: expected unqualified-id before 'const'
102 | Builder<IntTParameter<ValueType, base>>(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:102:43: error: expected ')' before 'const'
102 | Builder<IntTParameter<ValueType, base>>(const char* id) :
| ~^~~~~
| )
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:111:44: error: expected unqualified-id before 'const'
111 | Builder<UIntTParameter<ValueType, base>>(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:111:44: error: expected ')' before 'const'
111 | Builder<UIntTParameter<ValueType, base>>(const char* id) :
| ~^~~~~
| )
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:120:28: error: expected unqualified-id before 'const'
120 | Builder<FloatTParameter>(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:120:28: error: expected ')' before 'const'
120 | Builder<FloatTParameter>(const char* id) :
| ~^~~~~
| )
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:130:34: error: expected unqualified-id before 'const'
130 | Builder<SelectTParameter<len>>(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:130:34: error: expected ')' before 'const'
130 | Builder<SelectTParameter<len>>(const char* id) :
| ~^~~~~
| )
src/main.cpp:23:96: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::UIntTParameter<long unsigned int> >::Builder(const char [3])'
23 | auto param_frame_duration = iotwebconf::Builder<iotwebconf::UIntTParameter<unsigned long>>("fd").label("Frame duration (ms)").defaultValue(DEFAULT_FRAME_DURATION).min(10).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::UIntTParameter<long unsigned int> >::Builder(const iotwebconf::Builder<iotwebconf::UIntTParameter<long unsigned int> >&)'
107 | class Builder<UIntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: no known conversion for argument 1 from 'const char [3]' to 'const iotwebconf::Builder<iotwebconf::UIntTParameter<long unsigned int> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::UIntTParameter<long unsigned int> >::Builder(iotwebconf::Builder<iotwebconf::UIntTParameter<long unsigned int> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: no known conversion for argument 1 from 'const char [3]' to 'iotwebconf::Builder<iotwebconf::UIntTParameter<long unsigned int> >&&'
src/main.cpp:24:103: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::SelectTParameter<24> >::Builder(const char [3])'
24 | auto param_frame_size = iotwebconf::Builder<iotwebconf::SelectTParameter<sizeof(frame_sizes[0])>>("fs").label("Frame size").optionValues((const char *)&frame_sizes).optionNames((const char *)&frame_sizes).optionCount(sizeof(frame_sizes) / sizeof(frame_sizes[0])).nameLength(sizeof(frame_sizes[0])).defaultValue(DEFAULT_FRAME_SIZE).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<24> >::Builder(const iotwebconf::Builder<iotwebconf::SelectTParameter<24> >&)'
126 | class Builder<SelectTParameter<len>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [3]' to 'const iotwebconf::Builder<iotwebconf::SelectTParameter<24> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<24> >::Builder(iotwebconf::Builder<iotwebconf::SelectTParameter<24> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [3]' to 'iotwebconf::Builder<iotwebconf::SelectTParameter<24> >&&'
src/main.cpp:25:83: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::UIntTParameter<unsigned char> >::Builder(const char [2])'
25 | auto param_jpg_quality = iotwebconf::Builder<iotwebconf::UIntTParameter<byte>>("q").label("JPG quality").defaultValue(DEFAULT_JPEG_QUALITY).min(1).max(100).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::UIntTParameter<unsigned char> >::Builder(const iotwebconf::Builder<iotwebconf::UIntTParameter<unsigned char> >&)'
107 | class Builder<UIntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::UIntTParameter<unsigned char> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::UIntTParameter<unsigned char> >::Builder(iotwebconf::Builder<iotwebconf::UIntTParameter<unsigned char> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::UIntTParameter<unsigned char> >&&'
src/main.cpp:26:80: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const char [2])'
26 | auto param_brightness = iotwebconf::Builder<iotwebconf::IntTParameter<int>>("b").label("Brightness").defaultValue(DEFAULT_BRIGHTNESS).min(-2).max(2).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&'
src/main.cpp:27:78: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const char [2])'
27 | auto param_contrast = iotwebconf::Builder<iotwebconf::IntTParameter<int>>("c").label("Contrast").defaultValue(DEFAULT_CONTRAST).min(-2).max(2).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&'
src/main.cpp:28:80: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const char [2])'
28 | auto param_saturation = iotwebconf::Builder<iotwebconf::IntTParameter<int>>("s").label("Saturation").defaultValue(DEFAULT_SATURATION).min(-2).max(2).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&'
src/main.cpp:29:109: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::SelectTParameter<16> >::Builder(const char [2])'
29 | auto param_special_effect = iotwebconf::Builder<iotwebconf::SelectTParameter<sizeof(camera_effects[0])>>("e").label("Effect").optionValues((const char *)&camera_effects).optionNames((const char *)&camera_effects).optionCount(sizeof(camera_effects) / sizeof(camera_effects[0])).nameLength(sizeof(camera_effects[0])).defaultValue(DEFAULT_EFFECT).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<16> >::Builder(const iotwebconf::Builder<iotwebconf::SelectTParameter<16> >&)'
126 | class Builder<SelectTParameter<len>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::SelectTParameter<16> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<16> >::Builder(iotwebconf::Builder<iotwebconf::SelectTParameter<16> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::SelectTParameter<16> >&&'
src/main.cpp:32:105: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(const char [4])'
32 | auto param_wb_mode = iotwebconf::Builder<iotwebconf::SelectTParameter<sizeof(camera_wb_modes[0])>>("wbm").label("White balance mode").optionValues((const char *)&camera_wb_modes).optionNames((const char *)&camera_wb_modes).optionCount(sizeof(camera_wb_modes) / sizeof(camera_wb_modes[0])).nameLength(sizeof(camera_wb_modes[0])).defaultValue(DEFAULT_WHITE_BALANCE_MODE).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(const iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&)'
126 | class Builder<SelectTParameter<len>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [4]' to 'const iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [4]' to 'iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&&'
src/main.cpp:35:80: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const char [4])'
35 | auto param_ae_level = iotwebconf::Builder<iotwebconf::IntTParameter<int>>("ael").label("Auto Exposure level").defaultValue(DEFAULT_AE_LEVEL).min(-2).max(2).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [4]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [4]' to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&'
src/main.cpp:36:82: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const char [5])'
36 | auto param_aec_value = iotwebconf::Builder<iotwebconf::IntTParameter<int>>("aecv").label("Manual exposure value").defaultValue(DEFAULT_AEC_VALUE).min(9).max(1200).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [5]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [5]' to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&'
src/main.cpp:38:81: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const char [5])'
38 | auto param_agc_gain = iotwebconf::Builder<iotwebconf::IntTParameter<int>>("agcg").label("AGC gain").defaultValue(DEFAULT_AGC_GAIN).min(0).max(30).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [5]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter<int> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter<int> >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [5]' to 'iotwebconf::Builder<iotwebconf::IntTParameter<int> >&&'
src/main.cpp:39:115: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(const char [4])'
39 | auto param_gain_ceiling = iotwebconf::Builder<iotwebconf::SelectTParameter<sizeof(camera_gain_ceilings[0])>>("gcl").label("Auto Gain ceiling").optionValues((const char *)&camera_gain_ceilings).optionNames((const char *)&camera_gain_ceilings).optionCount(sizeof(camera_gain_ceilings) / sizeof(camera_gain_ceilings[0])).nameLength(sizeof(camera_gain_ceilings[0])).defaultValue(DEFAULT_GAIN_CEILING).build();
| ^
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(const iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&)'
126 | class Builder<SelectTParameter<len>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [4]' to 'const iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&&)'
.pio/libdeps/esp32cam_ai_thinker/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [4]' to 'iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&&'
src/main.cpp: In function 'void handle_root()':
src/main.cpp:79:53: error: 'class WiFiClass' has no member named 'softAPIPv6'; did you mean 'softAPIP'?
79 | auto ipv6 = WiFi.getMode() == WIFI_MODE_AP ? WiFi.softAPIPv6() : WiFi.localIPv6();
| ^~~~~~~~~~
| softAPIP
src/main.cpp:79:73: error: 'class WiFiClass' has no member named 'localIPv6'; did you mean 'localIP'?
79 | auto ipv6 = WiFi.getMode() == WIFI_MODE_AP ? WiFi.softAPIPv6() : WiFi.localIPv6();
| ^~~~~~~~~
| localIP
src/main.cpp: In function 'void setup()':
src/main.cpp:344:24: error: too few arguments to function 'void analogWriteResolution(uint8_t, uint8_t)'
344 | analogWriteResolution(8);
| ~~~~~~~~~~~~~~~~~~~~~^~~
In file included from /Users/bkw/.platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:36,
from src/main.cpp:1:
/Users/bkw/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal.h:92:6: note: declared here
92 | void analogWriteResolution(uint8_t pin, uint8_t bits);
| ^~~~~~~~~~~~~~~~~~~~~
*** [.pio/build/esp32cam_ai_thinker/src/main.cpp.o] Error 1
======================================================================= [FAILED] Took 2.00 seconds =======================================================================
Environment Status Duration
------------------- -------- ------------
esp32cam_ai_thinker FAILED 00:00:01.996
================================================================= 1 failed, 0 succeeded in 00:00:01.996 ================================================================= With
|
Might be that there's an issue with pio pkg update. I just reinstalled platformIo and worked out of the box! |
Indeed, clearing out my ~/.platformio fixed it. Thanks. |
Helo !
Setup following instruction form webside, new VSC , new PlatformIO and python 3.10
during compilation continues error:
Processing esp32cam_m5stack_unitcams3 (board: esp32cam_m5stack_unitcams3; platform: espressif32; framework: arduino)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via
-v, --verbose
optionCONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32cam_m5stack_unitcams3.html
PLATFORM: Espressif 32 (2024.5.13) > ESP32-CAM M5STACK UNITCAMS3
HARDWARE: ESP32S3 240MHz, 320KB RAM, 16MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-builtin, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 30 compatible libraries
Scanning dependencies...
Dependency Graph
|-- IotWebConf @ 3.2.1
|-- Micro-RTSP @ 0.1.6
|-- micro-moustache @ 1.0.1
|-- ESPmDNS @ 2.0.0
|-- RTSPServer @ 1.0.0
Building in release mode
prepare_file([".pio\build\esp32cam_m5stack_unitcams3\index.min.html.txt.o"], ["html\index.min.html"])
Converting .pio\build\esp32cam_m5stack_unitcams3\index.min.html.txt.o
revert_original_file([".pio\build\esp32cam_m5stack_unitcams3\index.min.html.txt.o"], ["html\index.min.html"])
Compiling .pio\build\esp32cam_m5stack_unitcams3\src\main.cpp.o
Building .pio\build\esp32cam_m5stack_unitcams3\bootloader.bin
Generating partitions .pio\build\esp32cam_m5stack_unitcams3\partitions.bin
esptool.py v4.7.3
Creating esp32s3 image...
Merged 1 ELF section
Successfully created esp32s3 image.
Compiling .pio\build\esp32cam_m5stack_unitcams3\libf98\AsyncUDP\AsyncUDP.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libaaa\Network\NetworkClient.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libaaa\Network\NetworkEvents.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libaaa\Network\NetworkInterface.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libaaa\Network\NetworkManager.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libaaa\Network\NetworkServer.cpp.o
Compiling .pio\build\esp32cam_m5stack_unitcams3\libaaa\Network\NetworkUdp.cpp.o
Archiving .pio\build\esp32cam_m5stack_unitcams3\libf98\libAsyncUDP.a
In file included from .pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameter.h:949,
from src/main.cpp:6:
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:65:42: error: expected unqualified-id before 'const'
65 | PrimitiveBuilder<ValueType, ParamType>(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:65:42: error: expected ')' before 'const'
65 | PrimitiveBuilder<ValueType, ParamType>(const char* id) :
| ~^~~~~
| )
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:102:43: error: expected unqualified-id before 'const'
102 | Builder<IntTParameter<ValueType, base>>(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:102:43: error: expected ')' before 'const'
102 | Builder<IntTParameter<ValueType, base>>(const char* id) :
| ~^~~~~
| )
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:111:44: error: expected unqualified-id before 'const'
111 | Builder<UIntTParameter<ValueType, base>>(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:111:44: error: expected ')' before 'const'
111 | Builder<UIntTParameter<ValueType, base>>(const char* id) :
| ~^~~~~
| )
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:120:28: error: expected unqualified-id before 'const'
120 | Builder(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:120:28: error: expected ')' before 'const'
120 | Builder(const char* id) :
| ~^~~~~
| )
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:130:34: error: expected unqualified-id before 'const'
130 | Builder<SelectTParameter>(const char* id) :
| ^~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:130:34: error: expected ')' before 'const'
130 | Builder<SelectTParameter>(const char* id) :
| ~^~~~~
| )
src/main.cpp:23:96: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::UIntTParameter >::Builder(const char [3])'
23 | auto param_frame_duration = iotwebconf::Builder<iotwebconf::UIntTParameter>("fd").label("Frame duration (ms)").defaultValue(DEFAULT_FRAME_DURATION).min(10).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::UIntTParameter >::Builder(const iotwebconf::Builder<iotwebconf::UIntTParameter >&)'
107 | class Builder<UIntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: no known conversion for argument 1 from 'const char [3]' to 'const iotwebconf::Builder<iotwebconf::UIntTParameter >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::UIntTParameter >::Builder(iotwebconf::Builder<iotwebconf::UIntTParameter >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: no known conversion for argument 1 from 'const char [3]' to 'iotwebconf::Builder<iotwebconf::UIntTParameter >&&'
src/main.cpp:24:103: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::SelectTParameter<24> >::Builder(const char [3])'
24 | auto param_frame_size = iotwebconf::Builder<iotwebconf::SelectTParameter<sizeof(frame_sizes[0])>>("fs").label("Frame size").optionValues((const char *)&frame_sizes).optionNames((const char *)&frame_sizes).optionCount(sizeof(frame_sizes) / sizeof(frame_sizes[0])).nameLength(sizeof(frame_sizes[0])).defaultValue(DEFAULT_FRAME_SIZE).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<24> >::Builder(const iotwebconf::Builder<iotwebconf::SelectTParameter<24> >&)'
126 | class Builder<SelectTParameter> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [3]' to 'const iotwebconf::Builder<iotwebconf::SelectTParameter<24> >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<24> >::Builder(iotwebconf::Builder<iotwebconf::SelectTParameter<24> >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [3]' to 'iotwebconf::Builder<iotwebconf::SelectTParameter<24> >&&'
src/main.cpp:25:83: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::UIntTParameter >::Builder(const char [2])'
25 | auto param_jpg_quality = iotwebconf::Builder<iotwebconf::UIntTParameter>("q").label("JPG quality").defaultValue(DEFAULT_JPEG_QUALITY).min(1).max(100).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::UIntTParameter >::Builder(const iotwebconf::Builder<iotwebconf::UIntTParameter >&)'
107 | class Builder<UIntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::UIntTParameter >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::UIntTParameter >::Builder(iotwebconf::Builder<iotwebconf::UIntTParameter >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:107:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::UIntTParameter >&&'
src/main.cpp:26:80: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const char [2])'
26 | auto param_brightness = iotwebconf::Builder<iotwebconf::IntTParameter>("b").label("Brightness").defaultValue(DEFAULT_BRIGHTNESS).min(-2).max(2).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::IntTParameter >&&'
src/main.cpp:27:78: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const char [2])'
27 | auto param_contrast = iotwebconf::Builder<iotwebconf::IntTParameter>("c").label("Contrast").defaultValue(DEFAULT_CONTRAST).min(-2).max(2).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::IntTParameter >&&'
src/main.cpp:28:80: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const char [2])'
28 | auto param_saturation = iotwebconf::Builder<iotwebconf::IntTParameter>("s").label("Saturation").defaultValue(DEFAULT_SATURATION).min(-2).max(2).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::IntTParameter >&&'
src/main.cpp:29:109: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::SelectTParameter<16> >::Builder(const char [2])'
29 | auto param_special_effect = iotwebconf::Builder<iotwebconf::SelectTParameter<sizeof(camera_effects[0])>>("e").label("Effect").optionValues((const char *)&camera_effects).optionNames((const char *)&camera_effects).optionCount(sizeof(camera_effects) / sizeof(camera_effects[0])).nameLength(sizeof(camera_effects[0])).defaultValue(DEFAULT_EFFECT).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<16> >::Builder(const iotwebconf::Builder<iotwebconf::SelectTParameter<16> >&)'
126 | class Builder<SelectTParameter> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [2]' to 'const iotwebconf::Builder<iotwebconf::SelectTParameter<16> >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<16> >::Builder(iotwebconf::Builder<iotwebconf::SelectTParameter<16> >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [2]' to 'iotwebconf::Builder<iotwebconf::SelectTParameter<16> >&&'
src/main.cpp:32:105: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(const char [4])'
32 | auto param_wb_mode = iotwebconf::Builder<iotwebconf::SelectTParameter<sizeof(camera_wb_modes[0])>>("wbm").label("White balance mode").optionValues((const char *)&camera_wb_modes).optionNames((const char *)&camera_wb_modes).optionCount(sizeof(camera_wb_modes) / sizeof(camera_wb_modes[0])).nameLength(sizeof(camera_wb_modes[0])).defaultValue(DEFAULT_WHITE_BALANCE_MODE).build();
| ^
Compiling .pio\build\esp32cam_m5stack_unitcams3\lib7b9\WiFi\AP.cpp.o
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(const iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&)'
126 | class Builder<SelectTParameter> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [4]' to 'const iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [4]' to 'iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&&'
src/main.cpp:35:80: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const char [4])'
35 | auto param_ae_level = iotwebconf::Builder<iotwebconf::IntTParameter>("ael").label("Auto Exposure level").defaultValue(DEFAULT_AE_LEVEL).min(-2).max(2).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [4]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [4]' to 'iotwebconf::Builder<iotwebconf::IntTParameter >&&'
src/main.cpp:36:82: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const char [5])'
36 | auto param_aec_value = iotwebconf::Builder<iotwebconf::IntTParameter>("aecv").label("Manual exposure value").defaultValue(DEFAULT_AEC_VALUE).min(9).max(1200).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(const iotwebconf::Builder<iotwebconf::IntTParameter >&)'
98 | class Builder<IntTParameter<ValueType, base>> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Compiling .pio\build\esp32cam_m5stack_unitcams3\lib7b9\WiFi\STA.cpp.o
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [5]' to 'const iotwebconf::Builder<iotwebconf::IntTParameter >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::IntTParameter >::Builder(iotwebconf::Builder<iotwebconf::IntTParameter >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:98:7: note: no known conversion for argument 1 from 'const char [5]' to 'iotwebconf::Builder<iotwebconf::IntTParameter >&&'
src/main.cpp:39:115: error: no matching function for call to 'iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(const char [4])'
39 | auto param_gain_ceiling = iotwebconf::Builder<iotwebconf::SelectTParameter<sizeof(camera_gain_ceilings[0])>>("gcl").label("Auto Gain ceiling").optionValues((const char *)&camera_gain_ceilings).optionNames((const char *)&camera_gain_ceilings).optionCount(sizeof(camera_gain_ceilings) / sizeof(camera_gain_ceilings[0])).nameLength(sizeof(camera_gain_ceilings[0])).defaultValue(DEFAULT_GAIN_CEILING).build();
| ^
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(const iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&)'
126 | class Builder<SelectTParameter> :
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [4]' to 'const iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: candidate: 'constexpr iotwebconf::Builder<iotwebconf::SelectTParameter<12> >::Builder(iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&&)'
.pio/libdeps/esp32cam_m5stack_unitcams3/IotWebConf/src/IotWebConfTParameterBuilder.h:126:7: note: no known conversion for argument 1 from 'const char [4]' to 'iotwebconf::Builder<iotwebconf::SelectTParameter<12> >&&'
src/main.cpp: In function 'void handle_root()':
src/main.cpp:79:53: error: 'class WiFiClass' has no member named 'softAPIPv6'; did you mean 'softAPIP'?
79 | auto ipv6 = WiFi.getMode() == WIFI_MODE_AP ? WiFi.softAPIPv6() : WiFi.localIPv6();
| ^~~~~~~~~~
| softAPIP
src/main.cpp:79:73: error: 'class WiFiClass' has no member named 'localIPv6'; did you mean 'localIP'?
79 | auto ipv6 = WiFi.getMode() == WIFI_MODE_AP ? WiFi.softAPIPv6() : WiFi.localIPv6();
| ^~~~~~~~~
| localIP
*** [.pio\build\esp32cam_m5stack_unitcams3\src\main.cpp.o] Error 1
============================================================================================================================ [FAILED] Took 17.59 seconds ============================================================================================================================
Environment Status Duration
esp32cam_m5stack_unitcams3 FAILED 00:00:17.593
======================================================================================================================= 1 failed, 0 succeeded in 00:00:17.593 =======================================================================================================================
The text was updated successfully, but these errors were encountered: