Hello,
I am unable to merge the yaml files for the ESP32-S3 Core Board and the I2C IO Expander inoput board DI8.
I merged them, and I think the SCL and SDA lines are set up correctly (GPIO38 and GPIO39). When compiling, I get an error in ESP-HOME every time.
I get the error below:
Reading CMake configuration...
Dependency Graph
|-- noise-c @ 0.1.4
|-- ArduinoJson @ 6.18.5
Linking .pioenvs/controller_avs412/firmware.elf
/data/cache/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/controller_avs412/src/main.o:(.literal._Z5setupv+0x70): undefined reference to `vtable for esphome::i2c::IDFI2CBus'
/data/cache/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/controller_avs412/src/main.o:(.literal._Z5setupv+0x74): undefined reference to `vtable for esphome::i2c::IDFI2CBus'
/data/cache/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/controller_avs412/src/main.o:(.literal._Z5setupv+0x94): undefined reference to `vtable for esphome::pcf8574::PCF8574Component'
/data/cache/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/controller_avs412/src/main.o:(.literal._Z5setupv+0x1f4): undefined reference to `vtable for esphome::pcf8574::PCF8574GPIOPin'
collect2: error: ld returned 1 exit status
*** [.pioenvs/controller_avs412/firmware.elf] Error 1
========================= [FAILED] Took 11.95 seconds =========================
Can anyone tell you what's going wrong?
Thank you.
I am unable to merge the yaml files for the ESP32-S3 Core Board and the I2C IO Expander inoput board DI8.
I merged them, and I think the SCL and SDA lines are set up correctly (GPIO38 and GPIO39). When compiling, I get an error in ESP-HOME every time.
I get the error below:
Reading CMake configuration...
Dependency Graph
|-- noise-c @ 0.1.4
|-- ArduinoJson @ 6.18.5
Linking .pioenvs/controller_avs412/firmware.elf
/data/cache/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/controller_avs412/src/main.o:(.literal._Z5setupv+0x70): undefined reference to `vtable for esphome::i2c::IDFI2CBus'
/data/cache/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/controller_avs412/src/main.o:(.literal._Z5setupv+0x74): undefined reference to `vtable for esphome::i2c::IDFI2CBus'
/data/cache/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/controller_avs412/src/main.o:(.literal._Z5setupv+0x94): undefined reference to `vtable for esphome::pcf8574::PCF8574Component'
/data/cache/platformio/packages/toolchain-xtensa-esp32s3/bin/../lib/gcc/xtensa-esp32s3-elf/8.4.0/../../../../xtensa-esp32s3-elf/bin/ld: .pioenvs/controller_avs412/src/main.o:(.literal._Z5setupv+0x1f4): undefined reference to `vtable for esphome::pcf8574::PCF8574GPIOPin'
collect2: error: ld returned 1 exit status
*** [.pioenvs/controller_avs412/firmware.elf] Error 1
========================= [FAILED] Took 11.95 seconds =========================
Can anyone tell you what's going wrong?
Thank you.
Code:
# =============================================================
# Diversen I/O Modules.
# IP range gereserveerd van 192.168.200.101 t/m 192.168.200.109
# =============================================================
esphome:
name: controller_avs412
friendly_name: CONTROLLER_AVS412
platformio_options:
board_build.flash_mode: dio
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
# Enable logging
logger:
hardware_uart: USB_SERIAL_JTAG
# Instellen I/O voor de RJ45 poort
ethernet:
type: W5500
clk_pin: GPIO43
mosi_pin: GPIO44
miso_pin: GPIO42
cs_pin: GPIO41
interrupt_pin: GPIO2
reset_pin: GPIO1
# Instellen statisch IP adres
manual_ip:
static_ip: 192.168.200.101
gateway: 192.168.200.1
subnet: 255.255.255.0
# Enable Home Assistant API
api:
encryption:
key: "pKeAagi+vmlVVS45THS6padK2DpyOx+KYxlztZsxvQo="
ota:
i2c:
sda: GPIO39
scl: GPIO38
scan: true
# id: bus_a
pcf8574:
- id: 'pcf8574_hub_in_1' # for input channel 1-8
address: 0x20 #replace by your PCF8574 address
# Activeren Web server.
web_server:
port: 80
# Instellen seriele communicatiepoort voor RS485
uart:
- id: uart_485
baud_rate: 9600
debug:
direction: BOTH
dummy_receiver: true
after:
timeout: 10ms
tx_pin: 16
rx_pin: 15
# Instellen seriele communicatiepoort voor de 4G communicatiemodule
- id: uart_sim7600
baud_rate: 115200
debug:
direction: BOTH
dummy_receiver: true
after:
timeout: 10ms
sequence:
- lambda: UARTDebug::log_string(direction, bytes);
tx_pin: 18
rx_pin: 17
# Software schakelaars voor RS485 en de 4G module aan/ uit te zetten
switch:
- platform: uart
uart_id: uart_485
name: "RS485 Button"
data: [0x11, 0x22, 0x33, 0x44, 0x55]
- platform: uart
uart_id: uart_sim7600
name: "UART 4G"
data: "AT+CGSN\r\n" # read 4G SIM7600 ID
# In- en uitgangen instellen
binary_sensor:
- platform: gpio
name: "ESP_CPU01_AVS412 TMP1"
pin:
number: 8
inverted: true
- platform: gpio
name: "ESP_CPU01_AVS412 TMP2"
pin:
number: 40
inverted: true
- platform: gpio
name: "ESP_CPU01_AVS412 DL"
pin:
number: 0
inverted: true
#- platform: gpio
# name: "ESP_CPU01_AVS412 SDA"
# pin:
# number: 39
# inverted: true
# mode:
# input: true
# pullup: true
#- platform: gpio
# name: "ESP_CPU01_AVS412 SCL"
# pin:
# number: 38
# inverted: true
# mode:
# input: true
# pullup: true
- platform: gpio
name: "ESP_CPU01_AVS412 IO10"
pin:
number: 10
inverted: true
mode:
input: true
pullup: true
- platform: gpio
name: "ESP_CPU01_AVS412 IO11"
pin:
number: 11
inverted: true
mode:
input: true
pullup: true
- platform: gpio
name: "CONTROLLER_AVS412 IO12"
pin:
number: 12
inverted: true
mode:
input: true
pullup: true
- platform: gpio
name: "CONTROLLER_AVS412 IO13"
pin:
number: 13
inverted: true
mode:
input: true
pullup: true
- platform: gpio
name: "CONTROLLER_AVS412 IO14"
pin:
number: 14
inverted: true
mode:
input: true
pullup: true
- platform: gpio
name: "CONTROLLER_AVS412 IO21"
pin:
number: 21
inverted: true
mode:
input: true
pullup: true
- platform: gpio
name: "CONTROLLER_AVS412 IO47"
pin:
number: 47
inverted: true
mode:
input: true
pullup: true
- platform: gpio
name: "CONTROLLER_AVS412 IO48"
pin:
number: 48
inverted: true
mode:
input: true
pullup: true
- platform: gpio
name: "a8-input1"
pin:
pcf8574: pcf8574_hub_in_1
number: 0
mode: INPUT
inverted: true
- platform: gpio
name: "a8-input2"
pin:
pcf8574: pcf8574_hub_in_1
number: 1
mode: INPUT
inverted: true
- platform: gpio
name: "a8-input3"
pin:
pcf8574: pcf8574_hub_in_1
number: 2
mode: INPUT
inverted: true
- platform: gpio
name: "a8-input4"
pin:
pcf8574: pcf8574_hub_in_1
number: 3
mode: INPUT
inverted: true
- platform: gpio
name: "a8-input5"
pin:
pcf8574: pcf8574_hub_in_1
number: 4
mode: INPUT
inverted: true
- platform: gpio
name: "a8-input6"
pin:
pcf8574: pcf8574_hub_in_1
number: 5
mode: INPUT
inverted: true
- platform: gpio
name: "a8-input7"
pin:
pcf8574: pcf8574_hub_in_1
number: 6
mode: INPUT
inverted: true
- platform: gpio
name: "a8-input8"
pin:
pcf8574: pcf8574_hub_in_1
number: 7
mode: INPUT
inverted: true
sensor:
- platform: adc
pin: 4
name: "CONTROLLER_AVS412 IO04 Current"
update_interval: 2s
unit_of_measurement: V
attenuation: 11db
filters:
- multiply: 5
- platform: adc
pin: 5
name: "CONTROLLER_AVS412 IO05 Current"
update_interval: 2s
unit_of_measurement: V
attenuation: 11db
filters:
- multiply: 5
- platform: adc
pin: 6
name: "CONTROLLER_AVS412 IO06 Current"
update_interval: 2s
unit_of_measurement: V
attenuation: 11db
filters:
- multiply: 5
- platform: adc
pin: 7
name: "CONTROLLER_AVS412 IO07 Current"
update_interval: 2s
unit_of_measurement: V
attenuation: 11db
filters:
- multiply: 5