-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
State interface input filter #3409
State interface input filter #3409
Conversation
- selection of ahrs with settings from each module - init functions for each ahrs modules - remove old chimu
I think this a very nice improvement especially with multiple INS support! :) |
I'm working on the modifications required for multi-INS, it shouldn't be long. Your comment on ABI ids is correct. The options I found are:
@fvantienen do you have a preferred solution ? |
To allow multiple INS at the same time: - remove weak functions from ins.c - remove the INS_TYPE_H define - use ABI message to trigger INS reset
I think I would prefer the option with the 'components' section of the ID. But both seem fine for me |
On a second thought, using senders IDs generated is a bit annoying for some case like IMU calibration where the ABI ID is used. Maybe we can do something with a "component ID" that would be fixed, but then it is not really different from what we have already. Anyway, the PR should be ready for review. |
Will take a look at it later. |
yes indeed, it is even better to detect some errors at compile time, if the driver is not loaded |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this is tested I'm ok with merging it :)
tested and now working with C++ (EKF) |
* [generator] generate unique ID and names table for modules * [state] add accessors for the state origin * [state] don't access directly to state origin, use getters * [state] filter inputs with module ID * [ahrs] convert AHRS modules to state input filter - selection of ahrs with settings from each module - init functions for each ahrs modules - remove old chimu * update unit test * [ins] decoupled INS implementation To allow multiple INS at the same time: - remove weak functions from ins.c - remove the INS_TYPE_H define - use ABI message to trigger INS reset * [state] protect for c++
This PR is a proposal to add a filtering to the state interface setter functions. It allows to have a fine control of the modules allowed to push data to the state. Key elements are:
Some remaining work, for this PR or another one:
@fvantienen @dewagter @Fabien-B What is your opinion on this ?