Dzień dobry
Mam problem z ESPHome. Chodzi o stworzenie własnego czujnika. Postępuję zgodnie z poradnikiem Custom Sensor Component — ESPHome.
No i w zasadzie poległem na samym początku. Kopiuję kod z tego poradnika i wklejam go do własnych plików:
studnia-lidar.yaml
esphome:
name: studnia-lidar
friendly_name: Studnia_Lidar
libraries:
- Wire
includes:
- my_custom_component.h
esp8266:
board: esp01_1m
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
itd.
plik my_custom_component.h jest umieszczony w katalogu esphome/
Jego zawartość:
#include <esphome.h>
class MyCustomComponent : public Component, public Sensor {
public:
void setup() override {
// This will be called once to set up the component
// think of it as the setup() call in Arduino
// subscribe("esphome-komorka-1/I2C_scan/command", &MyCustomComponent::on_message);
}
void loop() {
}
};
No i podczas kompilacji wywala mi taki błąd:
INFO ESPHome 2023.12.5
INFO Reading configuration /config/esphome/studnia-lidar.yaml...
INFO Generating C++ source...
INFO Compiling app...
Processing studnia-lidar (board: esp01_1m; framework: arduino; platform: platformio/espressif8266@3.2.0)
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB Flash
Dependency Graph
|-- ESPAsyncTCP-esphome @ 2.0.0
|-- Wire @ 1.0
|-- ESPAsyncWebServer-esphome @ 3.1.0
|-- DNSServer @ 1.1.1
|-- ESP8266WiFi @ 1.0
|-- ESP8266mDNS @ 1.2
|-- noise-c @ 0.1.4
|-- ArduinoJson @ 6.18.5
Compiling .pioenvs/studnia-lidar/src/main.cpp.o
In file included from src/main.cpp:26:
src/my_custom_component.h:2:59: error: expected class-name before '{' token
2 | class MyCustomComponent : public Component, public Sensor {
| ^
*** [.pioenvs/studnia-lidar/src/main.cpp.o] Error 1
========================= [FAILED] Took 10.24 seconds =========================
Jak wywalę z linijki “class MyCustomComponent : public Component, public Sensor {”
public Sensor i zostawię “class MyCustomComponent : public Component {” to nie wywala błędów przy kompilacji.
Wersja ESPHome 2023.12.5
Ktoś mi podpowie o co chodzi?