Hi everyone ! I’m new here.
I have been using platformIO for my esp32 with no problem for months. But today I needed to change WifiClient
to WifiClientSecure
because our server got SSL, so i just added #include <WiFiClientSecure.h>
and changed the WifiClient client
line to WifiClientSecure client
Then this error occured when compiling;
Processing esp32dev (platform: espressif32; board: esp-wrover-kit; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp-wrover-kit.html
PLATFORM: Espressif 32 (4.3.0) > Espressif ESP-WROVER-KIT
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (ftdi) On-board (ftdi) External (cmsis-dap, 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.20003.220626 (2.0.3)
- tool-esptoolpy @ 1.30300.0 (3.3.0)
- toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch3
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 35 compatible libraries
Scanning dependencies...
Dependency Graph
|-- RTClib @ 2.1.1
| |-- Adafruit BusIO @ 1.14.1
| | |-- Wire @ 2.0.0
| | |-- SPI @ 2.0.0
| |-- Wire @ 2.0.0
|-- ESP32-PSRamFS @ 1.0.4-beta
| |-- FS @ 2.0.0
|-- FS @ 2.0.0
|-- SD @ 2.0.0
| |-- FS @ 2.0.0
| |-- SPI @ 2.0.0
|-- WiFi @ 2.0.0
|-- WiFiClientSecure @ 2.0.0
| |-- WiFi @ 2.0.0
|-- Wire @ 2.0.0
Building in release mode
Compiling .pio\build\esp32dev\src\main.cpp.o
src/main.cpp: In function 'bool readPost(fs::FS&, const char*)':
src/main.cpp:374:48: error: 'size_t Print::write(const char*, size_t)' is inaccessible within this context
written = client.write(fileBuffer, toRead);
^
In file included from C:/Users/zydiz/.platformio/packages/framework-arduinoespressif32/cores/esp32/Stream.h:26,
from C:/Users/zydiz/.platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:160,
from src/main.cpp:9:
C:/Users/zydiz/.platformio/packages/framework-arduinoespressif32/cores/esp32/Print.h:70:12: note: declared here
size_t write(const char *buffer, size_t size)
^~~~~
*** [.pio\build\esp32dev\src\main.cpp.o] Error 1
When I revert back my changes to plain old WifiClient
everything compiles.
The function that generates the error;
.
.
WiFiClientSecure client;
client.setInsecure();
.
.
written = client.write(fileBuffer, toRead);
log_d("%d", written);
delay(100/portTICK_PERIOD_MS);
}
.
.
client.stop();
delete[] fileBuffer;
file.close();
return true;
}
My includes;
#include <Arduino.h>
#include <esp_task_wdt.h>
#include <driver/i2s.h>
#include "sos-iir-filter.h"
#include <WiFi.h>
#include <WiFiClientSecure.h>
#include <bits/stdc++.h>
using namespace std;
#include "FS.h"
#include "SD.h"
#include "PSRamFS.h"
#include <Wire.h>
#include "RTClib.h"
#include "time.h"
My platformio.ini;
[env:esp32dev]
platform = espressif32
board = esp-wrover-kit
framework = arduino
monitor_speed = 115200
build_flags = -DCORE_DEBUG_LEVEL=5
-DBOARD_HAS_PSRAM
-mfix-esp32-psram-cache-issue
build_src_filter = +<main.cpp>, -<test.cpp>
monitor_filters = esp32_exception_decoder, log2file
lib_deps = adafruit/RTClib@^2.0.2
tobozo/ESP32-PSRamFS@^1.0.4-beta
board_build.f_flash = 80000000L
What may be the issue? Though it was some include + platformio.ini stuff that’s why I posted it here in this “PlatformIO IDE” category.