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

Olimex STM32 E407 FreeRTOS Broken: Build and PingPong App #84

Closed
Kelly-Coffey opened this issue Nov 7, 2021 · 5 comments
Closed

Olimex STM32 E407 FreeRTOS Broken: Build and PingPong App #84

Kelly-Coffey opened this issue Nov 7, 2021 · 5 comments

Comments

@Kelly-Coffey
Copy link

Kelly-Coffey commented Nov 7, 2021

Issue template

  • Hardware description: Olimex E407 with Olimex Tiny Debugger
  • RTOS: Foxy
  • Installation type: Standard Micro-ROS Foxy Install per Tutorial
  • Version or commit hash: Master/Foxy

Steps to reproduce the issue

Just run the FreeRTOS Ping-Pong first app Tutorial with Foxy as RTOS version

Expected behavior

Buld works, client can connect to agent and can send out pings

Actual behavior

Since last Friday 11/5 with previous install client create init options
// create init_options
RCCHECK(rclc_support_init(&support, 0, NULL, &allocator));

but agent would crash when initializing pingpong_node.
// create node
rcl_node_t node;
RCCHECK(rclc_node_init_default(&node, "pingpong_node", "", &support)); ,== crashed here.

Today following the tutorial fresh the build does not complete and issues the following error.

Starting >>> microxrcedds_client
Finished <<< tracetools_launch [1.02s]
Finished <<< tracetools [2.60s]
Finished <<< rosidl_parser [1.28s]                                                                    
Starting >>> rosidl_cmake
Finished <<< ros2trace [0.93s]                                                                             
Finished <<< tinydir_vendor [3.97s]                                                                         
Starting >>> rcutils
Finished <<< rosidl_cmake [1.08s]                                                                               
Starting >>> rosidl_generator_dds_idl
--- stderr: microxrcedds_client                                                                                 
/home/ubu/ws_check/firmware/mcu_ws/eProsima/Micro-XRCE-DDS-Client/src/c/profile/transport/ip/ip_posix.c:18:10: fatal error: arpa/inet.h: No such file or directory
 #include <arpa/inet.h>
          ^~~~~~~~~~~~~
compilation terminated.
make[3]: *** [CMakeFiles/microxrcedds_client.dir/build.make:391: CMakeFiles/microxrcedds_client.dir/src/c/profile/transport/ip/ip_posix.c.obj] Error 1
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/Makefile2:79: CMakeFiles/microxrcedds_client.dir/all] Error 2
make[1]: *** [Makefile:133: all] Error 2

Additional information

Thank you

@pablogs9
Copy link
Member

I have followed the steps in the FreeRTOS tutorial and I have found no problem. Check my session.

Could you provide steps for replicating?

@Kelly-Coffey
Copy link
Author

Kelly-Coffey commented Nov 10, 2021

Sorry. I should have been more complete with my steps to reproduce. I watched your video and was worried something was wrong with my ROS2 install until I saw you use serial as the transport. The tutorial is serial..,but I am using Ethernet as the transport.

I found the commit in Micro-XRCE-DDS-Client
eProsima/Micro-XRCE-DDS-Client@b8f251d

"Fix missing declarations of inet_to family for POSIX_NOPOLL (#272)
Signed-off-by: Patrick Roncagliolo [email protected]"

which causes the following build error
"--- stderr: microxrcedds_client
/home/ubu/microros_ws/firmware/mcu_ws/eProsima/Micro-XRCE-DDS-Client/src/c/profile/transport/ip/ip_posix.c:18:10: fatal error: arpa/inet.h: No such file or directory
#include <arpa/inet.h>
^~~~~~~~~~~~~
compilation terminated."

I will continue to debug the Agent issue I am seeing with Ethernet.
Thanks

@pablogs9
Copy link
Member

I have been checking and:

Why is this not being included correctly? I'll continue checking

@pablogs9
Copy link
Member

Got it! I this that this PR can solve the problem: #85

Can you test this branch?

@Kelly-Coffey
Copy link
Author

I have tested. The build works and the client is able to connect and publish pings with the agent. I did not check pong.

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

2 participants