When i try to install my code on my device
i received always that error message
INFO ESPHome 2024.2.0
INFO Reading configuration /config/esphome/est32.yaml...
WARNING GPIO12 is a strapping PIN and should only be used for I/O with care.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
INFO Generating C++ source...
INFO Compiling app...
Processing est-poe-32 (board: esp32dev; framework: espidf; platform: platformio/[email protected])
--------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
- framework-espidf @ 3.40406.240122 (4.4.6)
- tool-cmake @ 3.16.9
- tool-ninja @ 1.10.2
- toolchain-esp32ulp @ 2.35.0-20220830
- toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
Reading CMake configuration...
Dependency Graph
|-- ArduinoJson @ 6.18.5
Linking .pioenvs/est-poe-32/firmware.elf
/data/cache/platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: .pioenvs/est-poe-32/src/main.o:(.literal._Z5setupv+0xd8): undefined reference to `vtable for esphome::pulse_meter::PulseMeterSensor'
/data/cache/platformio/packages/toolchain-xtensa-esp32/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld: .pioenvs/est-poe-32/src/main.o:(.literal._Z5setupv+0xdc): undefined reference to `vtable for esphome::pulse_meter::PulseMeterSensor'
collect2: error: ld returned 1 exit status
*** [.pioenvs/est-poe-32/firmware.elf] Error 1
========================= [FAILED] Took 71.16 seconds =========================
Nope, itās not technically correct. If you think itās a good thing for everyone to stick with a common config organization or a standard if you will. Call it what you want but, I call it a positive development.
I wasnāt claiming it would. I was trying to get them to organize in what is the most common order so that when they look at their config and compare it with others, itās not all backwards and more difficult to learn. Itās kind of a ābig pictureā thing. Some people see it, some donāt.
Oh, come on now. Some exaggeration is to be expected but, doing a copy and paste falls way short of most peopleās definition of, āA blind goose chaseā and seeing how people arenāt knocking each other over in order to try to help this person, maybe making a mountain out of a mole hill for suggesting the idea of doing something similar to PEP 8 is a little ridiculous.
and itās kind of a waste of time. Iāll do the mature thing and not engage in an unproductive and unhelpful waste of time debate about nothing.
I tried to compile the firmware based on your config and everything worked just fine. As I donāt have the dev board you are using, I couldnāt install and test it, though.
So I donāt think there is anything wrong with your yml file. The error message you get says the linker fails on something (ld returned 1 exit status plus the two lines before that which say undefined reference ...).
Maybe you have a problem with your toolchain/ESPhome installation? (outdated/installation problem/ā¦) I suggest you uninstall and reinstall ESPhome and try again.
I wonder if thats the problemā¦ they appear to be using one of the ethernet boards and if you look at what they used for friendly_name it appears to be one of the esp32 POE boards. Does using the generic, āesp32devā for the board type, cover etho esp32 poe boards or are did they select the wrong type of board to setup and thats why its failing?
I received this error also. Cleaning the build file fixed the issue.
In your main ESP home dashboard, navigate to the module with the issue, select the three dots located in the bottom right adjacent to ālogsā and select āclean build files.ā
This should address your issue, unless there are other outstanding kinks.