Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't create subscriber on ESP32-C3 #216

Open
2b-t opened this issue Dec 10, 2023 · 5 comments
Open

Can't create subscriber on ESP32-C3 #216

2b-t opened this issue Dec 10, 2023 · 5 comments

Comments

@2b-t
Copy link

2b-t commented Dec 10, 2023

Problem description

I have recently started to experiment with micro-ROS. While the examples involving just publishers such as int32_publisher are running fine, if I run any example involving a subscriber such as int32_sub_pub or ping_pong according to the official documentation using the provided Dockerfile this results in a stack dump.

Steps to reproduce the issue

In order to replicate this flash the ESP32-C3 board with one of the examples involving a subscriber (in the following I will make use of int32_sub_pub). In my case I open it in the container with the provided Dockerfile in interactive mode:

$ export LC_ALL=C # Override locale settings
$ . $IDF_PATH/export.sh
$ cd examples/int32_sub_pub
$ idf.py set-target esp32c3
$ idf.py menuconfig
# Set micro-ROS agent Settings ->
#   WiFi configuration ->
#     WiFI SSID (test_hotspot)
#     WiFI Password (test_password)
#   micro-ROS Agent IP (10.42.0.1)
$ idf.py build
$ sudo chmod o+rw /dev/ttyACM0 # Allow to write to device file
$ idf.py flash

connect both micro-controller and computer to the same hotspot, in my case a self-hosted hotspot, then run the micro-ROS agent on the computer (10.42.0.1)

$ docker run -it --rm --net=host microros/micro-ros-agent:humble udp4 --port 8888 -v6

and finally monitor the ESP32-C3 with:

$ idf.py monitor

Expected behavior

The ESP-C3 should publish its messages to the micro-ROS agent on the int32_publisher topic and wait for messages on the int32_subscriber topic. I should be able to see both topics on the micro-ROS agent side.

Actual behavior

The ESP32-C3 runs into a stack dump and reboots (For a full output see subscriber_bug.txt):

I (1599) main_task: Returned from app_main()
Guru Meditation Error: Core  0 panic'ed (Illegal instruction). Exception was unhandled.

Stack dump detected
Core  0 register dump:
MEPC    : 0x42015a2e  RA      : 0x4201596c  SP      : 0x3fcad780  GP      : 0x3fc91400  
0x42015a2e: rmw_wait at ??:?

0x4201596c: rmw_wait at ??:?

TP      : 0x3fc901b8  T0      : 0x4005890e  T1      : 0x0000000c  T2      : 0x00068081  
S0/FP   : 0x3fc94350  S1      : 0x3fcadafc  A0      : 0x3fca9a58  A1      : 0x00001000  
A2      : 0x00001000  A3      : 0x00000001  A4      : 0xffffffff  A5      : 0x00000001  
A6      : 0x00000000  A7      : 0xf4240000  S2      : 0x3fcadaf0  S3      : 0x00000064  
S4      : 0x3fcadb08  S5      : 0x3fcadb14  S6      : 0x05f5e100  S7      : 0x00000000  
S8      : 0x00000000  S9      : 0x3fcad8c4  S10     : 0x3fcadaec  S11     : 0x00000000  
T3      : 0x00000975  T4      : 0x00000000  T5      : 0x4200a2c8  T6      : 0x4200a2d0  
0x4200a2c8: __default_deallocate at allocator.c:?

0x4200a2d0: __default_allocate at allocator.c:?

MSTATUS : 0x00001881  MTVEC   : 0x40380001  MCAUSE  : 0x00000002  MTVAL   : 0xd009f7d3  
0x40380001: _vector_table at ??:?

MHARTID : 0x00000000  

Backtrace:

0x42015a2e in rmw_wait ()
#0  0x42015a2e in rmw_wait ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
ELF file SHA256: dc5c59390d980376
Rebooting...

Additional information

I have tried the following already to no avail, the problem stays the very same:

  • Reflash the ESP32 several times
  • Try a different ESP32 I had lying around
  • Change hotspot
  • Switch to ROS 2 Iron instead of Humble
  • Remove the publisher, being left with an example with only a subscriber
  • Doubled the statically allocated memory to 32000 Bytes for the ROS task in $ idf.py menuconfig under micro-ROS example-app settings/Stack the micro-ROS app (Bytes)
  • Added the following options to colcon.meta and proceed with a clean build, cleaning the workspace first with $ idf.py clean-microros:

If I comment the line that adds the subscription to the executor, e.g. RCCHECK(rclc_executor_add_subscription(&executor, &subscriber, &recv_msg, &subscription_callback, ON_NEW_DATA)); the publisher runs just fine while clearly the subscriber will not work.

Any input is highly appreciated!

@pablogs9
Copy link
Member

Which is the output of the micro-ROS Agent using the flag -v6?

@2b-t
Copy link
Author

2b-t commented Dec 12, 2023

Hi @pablogs9
Thanks for your quick reply!

The output of the micro-ROS agent with -v6 is the following:

tobit@P500:~$ docker run -it --rm --net=host microros/micro-ros-agent:humble udp4 --port 8888 -v6
[1702340879.676756] info     | UDPv4AgentLinux.cpp | init                     | running...             | port: 8888
[1702340879.677083] info     | Root.cpp           | set_verbose_level        | logger setup           | verbose_level: 6
[1702341006.162604] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x00000000, len: 24, data: 
0000: 80 00 00 00 00 01 10 00 58 52 43 45 01 00 01 0F 4F 60 5D E0 81 00 FC 01
[1702341006.162825] info     | Root.cpp           | create_client            | create                 | client_key: 0x4F605DE0, session_id: 0x81
[1702341006.162905] info     | SessionManager.hpp | establish_session        | session established    | client_key: 0x4F605DE0, address: 10.42.0.43:24558
[1702341006.163032] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 19, data: 
0000: 81 00 00 00 04 01 0B 00 00 00 58 52 43 45 01 00 01 0F 00
[1702341006.167917] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 64, data: 
0000: 81 80 00 00 01 07 36 00 00 0A 00 01 01 03 00 00 28 00 00 00 00 01 38 40 20 00 00 00 69 6E 74 33
0020: 32 5F 70 75 62 6C 69 73 68 65 72 5F 73 75 62 73 63 72 69 62 65 72 5F 72 63 6C 63 00 00 00 00 00
[1702341006.167946] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.169489] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.171055] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.172083] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.175093] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.175114] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.175150] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.175176] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.176210] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.177454] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.178572] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.179659] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.179680] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.181657] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.181681] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.183602] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.184753] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.184771] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.186676] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.186712] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.188713] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.189750] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.190854] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.192184] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.193349] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.195178] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.196104] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.196124] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.198364] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.199868] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.200653] info     | ProxyClient.cpp    | create_participant       | participant created    | client_key: 0x4F605DE0, participant_id: 0x000(1)
[1702341006.200872] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 14, data: 
0000: 81 80 00 00 05 01 06 00 00 0A 00 01 00 00
[1702341006.200966] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 01 00 00 00 80
[1702341006.200987] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 01 00 00 00 80
[1702341006.205143] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.205166] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.205179] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 00 00 80
[1702341006.205189] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 01 00 00 00 80
[1702341006.206370] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 84, data: 
0000: 81 80 01 00 01 07 4A 00 00 0B 00 02 02 03 00 00 3C 00 00 00 13 00 00 00 72 74 2F 69 6E 74 33 32
0020: 5F 70 75 62 6C 69 73 68 65 72 00 00 01 4C C9 3F 1C 00 00 00 73 74 64 5F 6D 73 67 73 3A 3A 6D 73
0040: 67 3A 3A 64 64 73 5F 3A 3A 49 6E 74 33 32 5F 00 00 01 00 00
[1702341006.206399] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 00 00 01 00 80
[1702341006.206468] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 01 00 00 00 80
[1702341006.206521] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 01 00 00 01 80
[1702341006.206523] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x4F605DE0, topic_id: 0x000(2), participant_id: 0x000(1)
[1702341006.206622] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 14, data: 
0000: 81 80 01 00 05 01 06 00 00 0B 00 02 00 00
[1702341006.206650] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
[1702341006.212911] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 01 00 01 00 80
[1702341006.212931] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 01 00 01 00 80
[1702341006.212940] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 84, data: 
0000: 81 80 01 00 01 07 4A 00 00 0B 00 02 02 03 00 00 3C 00 00 00 13 00 00 00 72 74 2F 69 6E 74 33 32
0020: 5F 70 75 62 6C 69 73 68 65 72 00 00 01 4C C9 3F 1C 00 00 00 73 74 64 5F 6D 73 67 73 3A 3A 6D 73
0040: 67 3A 3A 64 64 73 5F 3A 3A 49 6E 74 33 32 5F 00 00 01 00 00
[1702341006.212953] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
[1702341006.213012] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
[1702341006.213040] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
[1702341006.213065] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
[1702341006.213947] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 24, data: 
0000: 81 80 02 00 01 07 10 00 00 0C 00 03 03 03 00 00 02 00 00 00 00 00 00 01
[1702341006.214070] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x4F605DE0, publisher_id: 0x000(3), participant_id: 0x000(1)
[1702341006.214172] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 14, data: 
0000: 81 80 02 00 05 01 06 00 00 0C 00 03 00 00
[1702341006.214209] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
[1702341006.221947] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 01 00 02 00 80
[1702341006.221967] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 02 00 02 00 80
[1702341006.221976] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 02 00 02 00 80
[1702341006.221984] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 02 00 02 00 80
[1702341006.221993] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 02 00 02 00 80
[1702341006.222002] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 02 00 02 00 80
[1702341006.222038] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
[1702341006.222066] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
[1702341006.222086] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
[1702341006.224649] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
[1702341006.226010] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 36, data: 
0000: 81 80 03 00 01 07 1C 00 00 0D 00 05 05 03 00 00 0E 00 00 00 00 02 01 00 03 00 01 00 0A 00 00 00
0020: 00 00 00 03
[1702341006.226452] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0x4F605DE0, datawriter_id: 0x000(5), publisher_id: 0x000(3)
[1702341006.226562] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 14, data: 
0000: 81 80 03 00 05 01 06 00 00 0D 00 05 00 00
[1702341006.226593] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 04 00 00 00 80
[1702341006.229921] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 02 00 03 00 80
[1702341006.229947] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 04 00 00 00 80
[1702341006.230007] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 04 00 00 00 80
[1702341006.233683] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 84, data: 
0000: 81 80 04 00 01 07 4A 00 00 0E 00 12 02 03 00 00 3C 00 00 00 14 00 00 00 72 74 2F 69 6E 74 33 32
0020: 5F 73 75 62 73 63 72 69 62 65 72 00 00 01 00 00 1C 00 00 00 73 74 64 5F 6D 73 67 73 3A 3A 6D 73
0040: 67 3A 3A 64 64 73 5F 3A 3A 49 6E 74 33 32 5F 00 00 01 00 00
[1702341006.233781] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x4F605DE0, topic_id: 0x001(2), participant_id: 0x000(1)
[1702341006.233850] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 14, data: 
0000: 81 80 04 00 05 01 06 00 00 0E 00 12 00 00
[1702341006.233881] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 05 00 00 00 80
[1702341006.234703] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 03 00 04 00 80
[1702341006.234723] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 04 00 04 00 80
[1702341006.235562] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 05 00 00 00 80
[1702341006.238017] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 05 00 00 00 80
[1702341006.239728] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 24, data: 
0000: 81 80 05 00 01 07 10 00 00 0F 00 04 04 03 00 00 02 00 00 00 00 00 00 01
[1702341006.239748] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 04 00 05 00 80
[1702341006.239857] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 05 00 00 01 80
[1702341006.239898] info     | ProxyClient.cpp    | create_subscriber        | subscriber created     | client_key: 0x4F605DE0, subscriber_id: 0x000(4), participant_id: 0x000(1)
[1702341006.239944] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 14, data: 
0000: 81 80 05 00 05 01 06 00 00 0F 00 04 00 00
[1702341006.239966] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 06 00 00 00 80
[1702341006.243345] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 24, data: 
0000: 81 80 05 00 01 07 10 00 00 0F 00 04 04 03 00 00 02 00 00 00 00 00 00 01
[1702341006.243484] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 06 00 00 00 80
[1702341006.244852] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 06 00 00 00 80
[1702341006.246746] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 40, data: 
0000: 81 80 06 00 01 07 1D 00 00 10 00 06 06 03 00 00 0F 00 00 00 00 12 01 00 03 00 01 00 0A 00 00 00
0020: 00 00 00 00 04 00 00 00
[1702341006.247186] info     | ProxyClient.cpp    | create_datareader        | datareader created     | client_key: 0x4F605DE0, datareader_id: 0x000(6), subscriber_id: 0x000(4)
[1702341006.247251] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 14, data: 
0000: 81 80 06 00 05 01 06 00 00 10 00 06 00 00
[1702341006.247279] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 07 00 00 00 80
[1702341006.248103] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0B 01 05 00 05 00 06 00 80
[1702341006.248167] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 07 00 00 00 80
[1702341006.250881] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x4F605DE0, len: 13, data: 
0000: 81 00 00 00 0A 01 05 00 07 00 00 00 80

@2b-t
Copy link
Author

2b-t commented Dec 12, 2023

Got the same issue on ROS 2 Iron with the ESP32-C3 as well (while the ESP32-S3 works just fine). When checking out on a very old commit like f426aa2 (which happens to use espressif/idf:release-v4.3 instead of espressif/idf:release-v5.0, not sure if this is connected) it works without issues. I will try to narrow down which commit might have introduced this bug.

@ghufran1942
Copy link

@2b-t Were you able to identify the issue? I am facing the same issue.

@2b-t
Copy link
Author

2b-t commented Oct 3, 2024

@ghufran1942 Unfortunately no, have not worked much with MicroROS ever since. As described above checking out to an earlier version worked for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants