Failed status on line 81: 1. Aborting.
There are no issues with compilation and burning, and it can also connect to WiFi, but it starts up
RCCHECK(rclc_support_init_with_options(&support, 0, NULL, &init_options, &allocator));
Will report an error:
Failed status on line 81: 1. Aborting.
Strangely, the version I copied from Git yesterday can start normally, but rmw_microros/rmw_microros. h is not available.
After copying again today, this problem occurred
- Did you run the Docker command before monitoring the data from the MCU?
- Have you added
PRIV_REQUIRES micro_ros_espidf_componentto the CMakeLists.txt in the main directory?
Whether or not to add PRIV_REQUIRES micro_ros_ espidf_component in the CMakeLists.txt has no effect on the final result, as compilation can pass.
I am using ESP32-S3 MCU and ESP-IDF_5.4 development environment
And used git clone - b $ROS-DISTRO https://github.com/micro-ROS/micro_ros_espidf_component.git The micro_ros command clones the micro_ros_ espidf_component into the esp-idf_ 5.4/components directory, corresponding to branches being jazz.
Modified line 114 in micro_ros/libmicroros. mk,
# Workaround https://github.com/micro-ROS/micro_ros_espidf_component/issues/18
ifeq ($(IDF_TARGET),$(filter $(IDF_TARGET),esp32s2 esp32c3 esp32c6 esp32s3))
Adding esp32s3 will result in compilation errors.
The compilation process went very smoothly, and there were no issues with burning and connecting to the WiFi AP. However, when executing RCCHECK (rclc_Support_initw_ith_options (&support, 0, NULL,&init_options,&allocator)) When the error occurs, an error code of 1 will be returned
This is very strange because a version I cloned before was available, but I haven't been successful since then. I tried various methods to clone again, but I couldn't find the correct version.
So I judge that there is not a strong correlation between this and the PRIV_REQUIRES micro_ros_ espidf_component
After switching my board from the ESP32-WROOM-32 to the ESP32-WROOM-32E and utilizing the kilted code alongside the kilted Docker image, the "line xxx . Aborting" error disappear.(32E has bigger memory, may be.)
sudo docker run -it --rm --net=host microros/micro-ros-agent:kilted udp4 --port 35557 -v6