Skip to content

FIPATECH/CDFR26_ESP32_rebuild

Repository files navigation

CDFR26 ESP32 rebuild

Build

Lancer le build via le wrapper du projet :

./scripts/pio_run.sh esp32-s3-devkitm-1

Ce script prépare automatiquement l'environnement local du projet :

  • création du venv .venv-pio
  • installation de PlatformIO 6.x
  • correction de compatibilité empy==3.3.4 pour ESP-IDF / micro-ROS
  • initialisation des submodules components/micro_ros_espidf_component et components/SparkFun_Qwiic_OTOS_ESP32_Library
  • rebuild forcé de micro-ROS si les artefacts générés sont incomplets ou pas en transport custom

La bibliothèque SparkFun OTOS reste utilisée depuis components/SparkFun_Qwiic_OTOS_ESP32_Library/.

Flash

Pour builder puis flasher :

./scripts/pio_run.sh esp32-s3-devkitm-1 -t upload

Le wrapper détecte automatiquement le port série USB de l'ESP32 si une seule carte compatible est branchée.

Si plusieurs ports sont présents, préciser le port :

./scripts/pio_run.sh esp32-s3-devkitm-1 -t upload --upload-port /dev/ttyACM0

Notes micro-ROS

Le transport micro-ROS est forcé en custom via app-colcon.meta.

Sur l'ESP32-S3 de ce projet, le transport custom passe par l'USB série natif (/dev/ttyACM* côté hôte), avec un baudrate hôte fixé à 921600 dans include/config.h.

Nettoyage complet

Si vous voulez régénérer entièrement l'environnement de build :

rm -rf .pio .venv-pio \
  components/micro_ros_espidf_component/include \
  components/micro_ros_espidf_component/libmicroros.a \
  components/micro_ros_espidf_component/micro_ros_dev \
  components/micro_ros_espidf_component/micro_ros_src \
  components/micro_ros_espidf_component/esp32_toolchain.cmake

./scripts/pio_run.sh esp32-s3-devkitm-1

Il faut changer le colcon.meta dans micro_ros :

{
  "names": {
    "tracetools": {
      "cmake-args": [
        "-DTRACETOOLS_DISABLED=ON",
        "-DTRACETOOLS_STATUS_CHECKING_TOOL=OFF"
      ]
    },
    "rcl": {
      "cmake-args": [
        "-DRCL_COMMAND_LINE_ENABLED=OFF",
        "-DRCL_LOGGING_ENABLED=OFF"
      ]
    },
    "rcutils": {
      "cmake-args": [
        "-DBUILD_SHARED=OFF",
        "-DENABLE_TESTING=OFF",
        "-DRCUTILS_NO_FILESYSTEM=ON",
        "-DRCUTILS_NO_THREAD_SUPPORT=ON",
        "-DRCUTILS_NO_64_ATOMIC=ON",
        "-DRCUTILS_AVOID_DYNAMIC_ALLOCATION=ON"
      ]
    },
    "microxrcedds_client": {
      "cmake-args": [
        "-DUCLIENT_PIC=OFF",
        "-DUCLIENT_PROFILE_DISCOVERY=ON",
        "-DUCLIENT_PROFILE_UDP=ON",
        "-DUCLIENT_PROFILE_CUSTOM_TRANSPORT=ON",
        "-DUCLIENT_PROFILE_SERIAL=OFF",
        "-DUCLIENT_PROFILE_TCP=OFF",
        "-DUCLIENT_MIN_HEARTBEAT_TIME_INTERVAL=1"
      ]
    },
    "rmw_microxrcedds": {
      "cmake-args": [
        "-DRMW_UXRCE_XML_BUFFER_LENGTH=400",
        "-DRMW_UXRCE_TRANSPORT=udp",
        "-DRMW_UXRCE_MAX_NODES=1",
        "-DRMW_UXRCE_MAX_PUBLISHERS=8",
        "-DRMW_UXRCE_MAX_SUBSCRIPTIONS=2",
        "-DRMW_UXRCE_MAX_SERVICES=6",
        "-DRMW_UXRCE_MAX_CLIENTS=1",
        "-DRMW_UXRCE_MAX_HISTORY=4"
      ]
    },
    "embeddedrtps": {
      "cmake-args": [
        "-DERTPS_MAX_PUBLISHERS=8",
        "-DERTPS_MAX_SUBSCRIPTIONS=2",
        "-DERTPS_MAX_SERVICES=6",
        "-DERTPS_MAX_CLIENTS=1",
        "-DERTPS_MAX_HISTORY=10"
      ]
    }
  }
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors