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
Add Zenoh pico support #22017
Add Zenoh pico support #22017
Conversation
1e0acef
to
d6270f9
Compare
Hm to get Zenoh-pico to build, I think CMake 1.14 is mandatory need to check if CMake 1.13 might work as well. |
We can re-evaluate the actual requirement if you're hitting it somewhere. Some of the older containers might just need a bump. |
99dfef4
to
68bbdae
Compare
Yay! |
2f65fef
to
e177d79
Compare
These are the blocker for moving to CMake 3.14
|
e177d79
to
c4044be
Compare
5e1b643
to
2a3a89e
Compare
Okay CI is successful now, (CMake 3.9 works and rosidl) I've added 2 targets that can Zenoh and communicate with ROS2
|
39433f5
to
ac75e1c
Compare
I would be interested if this could work on the fmuk66 target as well since zenoh pico is supposed to be lightweight? |
Albeit zenoh-pico is lightweight the current implementation might still be too big for the fmuk66. Personally I would like to develop and improve zenoh-pico for mr-canhubk344 or other bigger targets before moving over to smaller targets. |
19f2e7c
to
3b5af6c
Compare
7d8752b
to
0480569
Compare
0480569
to
5e01340
Compare
This pull request has been mentioned on Discussion Forum for PX4, Pixhawk, QGroundControl, MAVSDK, MAVLink. There might be relevant details there: |
Hi, i'm facing the problem when i try to
|
That errors seems to indicate there's a problem with a preinstalled version of |
it seems like that idlc doesn't support "-f cdrstream-desc" option |
It does but you've got a "preinstalled" version. Are you by any chance running the px4 build after sourcing ros2? |
i build px4_sitl_zenoh with a new shell environment , now it works.. Thanks !! |
Zenoh is a publish/subscribe protocol supporting peer-to-peer (FMU-to-FMU) and routed communication (FUM-to-Companion/Linux). Zenoh is plug-gable and on Linux it can be bridged to ROS2/DDS through zenoh-plugin-dds.
Zenoh-Pico is an implementation of Zenoh in C for constrained devices, it's fully compatible with the Rust Zenoh implementation.
For serialization of the messages the CycloneDDS CDRSTREAM library is used to generate DDS/ROS2 byte compatible serialization. This is decoupled from Zenoh so that other modules can re-use the serialization library.
Setup (FMU-to-Companion/Linux)
Companion/Linux
zenohd
zenohd -e udp/224.0.0.225:7447
note zenohd v0.10.0-dev-23-g44875300 or newer requiredzenoh-bridge-dds -m client
FMU
CONFIG_DRIVERS_ZENOH
.zenoh config addpublisher sensor_combined sensor
zenoh start
Companion/Linux
ros2 topic echo sensor px4_msgs/SensorCombined
to receive msgs from the FMUCurrent shortcomings