EspHome & ESP32-C3 - Erreur à l'installation

Bonjour à tous,
Je viens d’acquérir un Esp32-C3 mini pour un premier projet tout simple avec ESPHome (histoire de me faire la main).
J’ai tester différentes méthodes trouvés lors de mes recherches, mais je suis systématiquement confronté à ce message d’erreur.

riscv32-esp-elf-g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
*** [.pioenvs/startrek/src/esphome/components/api/api_connection.cpp.o] Error 1
========================= [FAILED] Took 36.13 seconds =========================

Voici le code que je cherche à installer.

esphome:
  name: startrek
  friendly_name: StarTrek

esp32:
  board: esp32-c3-devkitm-1
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "***********************************************************"

ota:
  password: "***********************************************************"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Startrek Fallback Hotspot"
    password: "***********"

captive_portal:
    
sensor:
  - platform: ultrasonic
    trigger_pin: GPIO2
    echo_pin: GPIO3
    name: "Ultrasonic Sensor"

Merci pour votre aide

Bonjour,
je crois que c’est un problème de RAM, tu compile sur quel machine ?

tu peu tester avec:

esphome:
  ...
  compile_process_limit: 1
  • compile_process_limit (Optional, int): The maximum number of simultaneous compile processes to run. Defaults to the number of cores of the CPU which is also the maximum you can set.
    ESPHome Core Configuration — ESPHome

J’ai donc ajouté la ligne comme indiqué

esphome:
  name: startrek
  friendly_name: StarTrek
  compile_process_limit: 1

Mais, maintenant ca crache dés le début.

HARDWARE: ESP32C3 160MHz, 320KB RAM, 4MB Flash
 - toolchain-riscv32-esp @ 8.4.0+2021r2-patch5
Dependency Graph
|-- AsyncTCP-esphome @ 2.0.1
|-- WiFi @ 2.0.0
|-- FS @ 2.0.0
|-- Update @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 3.1.0
|-- DNSServer @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- noise-c @ 0.1.4
Compiling .pioenvs/startrek/src/esphome/components/api/api_connection.cpp.o
riscv32-esp-elf-g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
*** [.pioenvs/startrek/src/esphome/components/api/api_connection.cpp.o] Error 1
========================= [FAILED] Took 46.72 seconds =========================

A noté que j’ai essayé l’installation via le port USB du Raspberry, via celui du PC et en manuel.
Mais rien de mieux

Bj

c’est moi ou beaucoup ce font la main avec des esp ses jours ci :rofl:
( j’en fais parti , bienvenue au club @Chrispi )

Premièrement comme dis @WarC0zes :+1:
ensuite cela peux venir de ton environnement de codage , par exemple Linux interrompe le compilation car mémoire trop faible , essai ceci

augmenter la limite de mémoire disponible en utilisant la commande « ulimit -s unlimited » avant de lancer la compilation.

Si tu fais cela en VM , verifie qu’elle est jour et ses permissions

Hello,
bon, j’ai testé avec ta proposition et celle de @WarC0zes et ca donne ça dés le début :

HARDWARE: ESP32C3 160MHz, 320KB RAM, 4MB Flash
 - toolchain-riscv32-esp @ 8.4.0+2021r2-patch5
Dependency Graph
|-- AsyncTCP-esphome @ 2.0.1
|-- WiFi @ 2.0.0
|-- FS @ 2.0.0
|-- Update @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 3.1.0
|-- DNSServer @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- noise-c @ 0.1.4
Compiling .pioenvs/startrek/src/main.cpp.o
Linking .pioenvs/startrek/firmware.elf
collect2: fatal error: ld terminated with signal 9 [Killed]
compilation terminated.
*** [.pioenvs/startrek/firmware.elf] Error 1
========================= [FAILED] Took 101.46 seconds =========================

Quand je lance l’installation ca fini par coller le Swap à 100% et la mémoire à 90% et ca plante.
J’avoue que je désespère, 3 jours que je cherche à compiler.

Bon, j’y suis arrivé suite à une astuce trouvé sur le forum.
J’ai arrêté quelques modules complémentaire (file editor et Terminal ssl) pour libérer de la mémoire et c’est passé.

Ta utiliser c’est option compile_process_limit: 1 et désactiver des modules ?
ou sans l’option et désactiver juste des modules ?

J’ai testé cette solution sans désactiver de modules et ça ne marchait pas.
Puis j’ai retenter sans cette option mais en désactivant les modules et ça a fonctionné.
Pour info je suis sous Rpi3b+

1 « J'aime »