Is PX4 Avoidance Dead?

It seems to me that github for PX4 Avoidance is dead is no longer works. GitHub - PX4/PX4-Avoidance: PX4 avoidance ROS node for obstacle detection and avoidance.

Following the directions there no longer produces a working Avoidance Sim.

For example-
Running this step- ./Tools/setup/ --no-sim-tools --no-nuttx
Now produces an error that Simpy is no longer available.

Running this step

  1. . ~/Firmware/Tools/setup_gazebo.bash ~/Firmware ~/Firmware/build/px4_sitl_default

No longer works as setup_gazebo.bash has moved.

Is the PX4 Avoidance project completely dead? If you go to the ROS page it tells people to start using ROS2 but then ROS2 setup doesn’t work any longer because you change the DDS middleware.

Where should I be looking for guidance instead?

Edit this was run on an Ubuntu 18.04 VM on virtualbox or hyper-v…i tested both.

So in my above testing- I was using either hyper-v or virtualbox VMs. I finally just wiped my desktop and put ubuntu 20.04 on it and then ran through the setup. I was able to get a working simulation on avoidance after some tinkering.

I’m going to test and see if it was my virtual machines causing issues or possibly 20.04 did it as well. I’ll work on updating the avoidance github read me as well with what changes are required.

@Jhiggy have you looked at the issues and PRs of the repo? That usually gives you an indication of the amount of support and love a project gets.

To me, it looks like there are some people using it, or at least answering issues and PRs but it doesn’t seem actively developed and maintained.

I would probably ask in the avoidance issues. For the points mentioned above, consider making a pull request to fix up the items that are no longer in sync with PX4.

@JulianOes Thank you for taking the time to respond! I really appreciate it.

I’m new to opensource software and those tips for checking whether or not the project is active is helpful. I’ll work on fixing the documentation for Ubuntu 20.04 and the latest version of PX4 and then submit a pull request.

I still haven’t been able to make Avoidance work in a virtual machine but I’ll do one more test from scratch just to make sure I didn’t miss anything. You wouldn’t think that a VM would have any difference in how it is building and launching the model but there must be something in there that is causing havoc. (Graphics driver is the first thing I think of- although I have been able to get Gazebo to launch fine from the PX4 SITL page- just not from avoidance.

1 Like

A virtual machine can be a pain when it comes to the graphics indeed.

If you’re struggling with recent PX4 changes, it might be worthwhile to try out the v1.13.2 tag (or release/v1.13 branch) and try that instead.

Regarding the ROS2 setup, I’m not in the loop of how that all changed. Let me ping @hamishwillee for that.

I’ve made a pull request with my updated, working, readme. If you find this and the changes haven’t been pulled yet- you can find them here: GitHub - jhiggason/PX4-Avoidance: PX4 avoidance ROS node for obstacle detection and avoidance.

Amazing, thanks. Let me tag some people there to review it.

Back from holidays on Weds. There has been a change to the underlying transport layer in master, but the docs should be correct for 13.2. I haven’t yet had a straight answer to my questions on so can’t tell you the story for master. I’m thinking of just doing some creative writing so people can at least get started, but probably not until next month.

W.r.t. PX4 avoidance, I take the same view as @JulianOes - it doesn’t look properly maintained. Really needs to be in CI.