imu_pipeline icon indicating copy to clipboard operation
imu_pipeline copied to clipboard

More filters

Open dawonn opened this issue 12 years ago • 5 comments

I have been working on a collection of imu filters that may be useful for the general public.

Here's a general outline of the idea I'm working towards: http://goo.gl/Mv2om0

So far the attitude filters work pretty well on the devices I've tested.

FYI: I'm working on the yaw estimation by integrating the magnetometer data, but it's still a work in progress. :)

dawonn avatar Nov 11 '13 22:11 dawonn

I'm not sure if I should accept Mahony and Madgwick in this package as they are GPL licensed. Mixing the licensing on packages can be confusing. However, there isn't a lot that's as good as those implementations.

chadrockey avatar Nov 11 '13 22:11 chadrockey

This is also a fairly large pull request, can you split this out into at least:

  1. Mahony

  2. Madgwick

  3. Python Scripts

I would also prefer the small python scripts to be implemented in C++ so there's the capability of running them on platforms that may not include python.

chadrockey avatar Nov 11 '13 22:11 chadrockey

This sounds like a good case for separate packages.

tfoote avatar Nov 11 '13 23:11 tfoote

Unfortunately, it sounds like separate packages would be best. The remaining question is where to host it...

The package name "imu_pipeline" sounds like a great centralized location to put commonly used IMU filters. But it would seem that only BSD licensed c/c++ code is acceptable? (Understandable, but very frustrating!)

Perhaps imu_pipeline should be reorganized into a meta package so each filter node can be located within it's own package hosted the imu_pipeline repository. This is advantageous for many reasons:

  1. It collects many IMU filtering packages into a single repository where they can be easily discovered.
  2. Each package can be licensed independently.
  3. It allows for advanced users to depend only on filter stages they use.
  4. The IMU pipeline repository can develop a community of users, maintainers, and developers.
  5. Decreases the number of repositories to be tracked, which makes migrating to a new version of ROS easier for the maintainer.

I think this solves all of the for-mentioned problems and yields a better overall experience for the ROS community, thoughts? If you like the idea, I have no problem volunteering to do the work.

dawonn avatar Nov 12 '13 00:11 dawonn

@dawonn Sorry for the delay, but I agree, imu_pipeline should become a metapackage for Indigo and include other, better quantized packages.

@mintar @idryanov

chadrockey avatar Dec 06 '13 20:12 chadrockey