From: Julien Olivain <ju.o@free.fr>
To: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Thierry Bultel <thierry.bultel@linatsea.fr>, buildroot@buildroot.org
Subject: Re: [Buildroot] candidate packages : ros2 and wxwidgets
Date: Fri, 07 Jan 2022 22:35:01 +0100 [thread overview]
Message-ID: <a8098a5d68bcf044356720ec3f7d2d9d@free.fr> (raw)
In-Reply-To: <20220105142924.4b11ed83@windsurf>
Hi Thomas, Thierry,
I would like to share some info about ROS in Buildroot.
On 05/01/2022 14:29, Thomas Petazzoni wrote:
> Hello Thierry,
>
> On Wed, 5 Jan 2022 10:46:46 +0100
> Thierry Bultel <thierry.bultel@linatsea.fr> wrote:
>
>> For a number of companies, I can see a growing interest in having ros2
>> support in buildroot.
>> Currently, people wanting to prototype (or make a product) a robotics
>> applications, are stuck
>> to either yocto, or, worse, to a desktop-like distribution.
[...]
>> What are your thought about these both packages ? Any ideas, or links
>> to
>> some WIP stuff ?
>
> These packages would certainly be very welcome. ROS2 especially makes a
> lot of sense.
>
> Some prior work:
>
> https://github.com/mchalain/br_ros
> http://lists.busybox.net/pipermail/buildroot/2019-March/246497.html
>
> I'll be happy to help in the review of such packages.
In the context of the HoverGames https://www.hovergames.com/ drone
challenge, I used ROS1 Noetic (last version for ROS1 series) with
Buildroot on various boards (EMCraft NavQ, Technexion pico-pi, QEmu
aarch64 and RV64). My actual need was the minimal dependencies to run
"mavros" (at that time, mavros was not available for ROS2).
I published my code here, for information:
https://github.com/jolivain/buildroot/commits/navq
See the demo defconfigs:
https://github.com/jolivain/buildroot/commit/a50de54e721910a00ebe7192e37661cc0ad81b37
ROS1 can be tested in qemu Aarch64 virt with:
make ros_defconfig
make
./output/images/start-qemu.sh
Login as root, then run a ros tutorial:
roslaunch roscpp_tutorials talker_listener.launch
or launch mavros:
roslaunch mavros px4.launch fcu_url:=tcp-l://localhost
While doing that, I did minor upstreaming work to let ROS play nicer
with Buildroot, for example:
https://github.com/ros-infrastructure/rospkg/commit/5ab4408e65f01bbb48971f6264f6c890b89cefa9
and few other buildroot fixes or updates.
Prior that work, I was aware of a previous integration, like this one:
https://github.com/flatmax/buildroot.rk3399.external/tree/master/package/rockchip/ros
It was a bit outdated for what I wanted to do. I took some examples
from it.
While my Buildroot patches were sufficient to fulfill my needs, I
don't think they were good enough to be upstreamed. Moreover, ROS1
Noetic is the last LTS version which will be EOL in 2025. See:
https://wiki.ros.org/Distributions#List_of_Distributions
This is why I didn't submitted my patches to Buildroot.
For the next 2022 edition of the HoverGames challenge, I would like
to switch to ROS2 in Buildroot. I'm currently exploring ways to
regenerate ROS2 buildroot recipes automatically, using the ROS
infrastructure packages. I believe this is the way the Gentoo and
Yocto/OpenEmbedded recipes are currently generated.
See:
https://github.com/ros-infrastructure/superflore
https://github.com/ros-infrastructure/superflore/tree/master/superflore/generators
My current idea would be to:
- Add in Buildroot the minimum changes, if needed
(minimal infra things like pkg-catkin, other non-ROS package
dependencies)
- Propose a "buildroot" generator in superflore upstream that create
an maintain some of the ROS2 recipes.
Comments, ideas and suggestions are welcome! Do not hesitate to
contact me to discuss that topic.
Best regards,
Julien.
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2022-01-07 21:35 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-05 9:46 [Buildroot] candidate packages : ros2 and wxwidgets Thierry Bultel
2022-01-05 13:29 ` Thomas Petazzoni
2022-01-05 13:40 ` Romain Naour
2022-01-05 13:49 ` Thierry Bultel
2022-01-05 14:32 ` Romain Naour
2022-01-17 10:07 ` Marcus Folkesson
2022-01-07 21:35 ` Julien Olivain [this message]
2022-01-08 13:27 ` Arnout Vandecappelle
2022-06-29 14:29 ` Mike Davies
2023-10-10 18:50 ` Stefan Nickl
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a8098a5d68bcf044356720ec3f7d2d9d@free.fr \
--to=ju.o@free.fr \
--cc=buildroot@buildroot.org \
--cc=thierry.bultel@linatsea.fr \
--cc=thomas.petazzoni@bootlin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox