Skip to content

Support custom sensors#100

Merged
chapulina merged 1 commit intochapulina/5/pluginfrom
chapulina/5/custom_sensors
Aug 2, 2021
Merged

Support custom sensors#100
chapulina merged 1 commit intochapulina/5/pluginfrom
chapulina/5/custom_sensors

Conversation

@chapulina
Copy link
Contributor

🎉 New feature

Closes #9

Builds on top of #90

Summary

Add support for custom sensors that aren't installed together with ign-sensors, so that external users can implement their own sensors. This adds:

  • The environment variable IGN_SENSORS_PATH that users can set to find sensors.
  • An example with a custom sensor
  • An example with an executable that can loop any non-rendering sensor, and can be used to test the custom sensor

It also makes the deprecated Update function non-pure-virtual, so downstream developers aren't forced to implement a deprecated function.

I decided to work on this to validate that the work being done on #90 was flexible enough to support external sensors.

Test it

Follow the instructions on each example's READMEs.

Checklist

  • Signed all commits for DCO
  • Added tests ⚠️ TODO
  • Added example and/or tutorial ⚠️ TODO I want to move the READMEs to tutorials
  • Updated documentation (as needed) ⚠️ TODO document IGN_SENSORS_PATH somewhere
  • Updated migration guide (as needed)
  • codecheck passed (See contributing)
  • All tests passed (See test coverage)
  • While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge

Signed-off-by: Louise Poubel <louise@openrobotics.org>
@chapulina chapulina added the 🏢 edifice Ignition Edifice label Feb 17, 2021
@chapulina chapulina self-assigned this Feb 17, 2021
@chapulina chapulina mentioned this pull request Feb 17, 2021
@peci1
Copy link
Contributor

peci1 commented Feb 17, 2021

Great you started working on this. So how does this go together with the SDF spec? In #9, you mentioned custom namespaces, but that's not the case used in the example. What if I needed a some XML parameters completely unknown to the SDF spec?

Also, the wording of http://sdformat.org/spec?ver=1.7&elem=sensor#sensor_type could be changed to better reflect the fact that plugins can add more supported sensor types.

@chapulina chapulina added beta Targeting beta release of upcoming collection and removed beta Targeting beta release of upcoming collection labels Mar 17, 2021
@chapulina
Copy link
Contributor Author

Removing beta label, we won't have time to wrap this up before code freeze. Let's retarget at Ignition-F.

@chapulina chapulina added 🏯 fortress Ignition Fortress and removed 🏢 edifice Ignition Edifice labels Apr 1, 2021
@chapulina chapulina merged commit 5094b4c into chapulina/5/plugin Aug 2, 2021
@chapulina chapulina deleted the chapulina/5/custom_sensors branch August 2, 2021 22:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🏯 fortress Ignition Fortress

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants