-
Notifications
You must be signed in to change notification settings - Fork 13.7k
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
sbgecom: Implement sbgECom INS driver #24137
base: main
Are you sure you want to change the base?
Conversation
f1fcfb3
to
96003fb
Compare
Hello @tolesam I have a question. Does this PR intend to be used with the Ellipse Series, Ellipse 2 Micro Series, or both? I'm interested in SBG products. |
Hello @saengphet, |
72a92c0
to
ffe24c4
Compare
Hi @dagar , Can you take a look at this PR please? Moreover, it seems the job "Build and Push Container" doesn't work on PRs, do you have any idea why? Thanks in advance. |
862fbd7
to
7627a34
Compare
5a85ddd
to
a70bb76
Compare
a70bb76
to
7545084
Compare
667bca1
to
ffeede9
Compare
b227586
to
550b04a
Compare
Hello @bresch , |
src/modules/simulation/sensor_airspeed_sim/SensorAirspeedSim.cpp
Outdated
Show resolved
Hide resolved
@@ -318,11 +318,6 @@ bool VehicleIMU::UpdateAccel() | |||
PX4_ERR("%d - accel %" PRIu32 " timestamp error timestamp_sample: %" PRIu64 ", previous timestamp_sample: %" PRIu64, | |||
_instance, accel.device_id, accel.timestamp_sample, _accel_timestamp_sample_last); | |||
} | |||
|
|||
if (accel.timestamp < accel.timestamp_sample) { |
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.
why do you remove those checks?
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.
When using an external INS that is not powered by the autopilot, if it is started beforehand, it causes errors.
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.
Right, but that shouldn't be fixed by ignoring the problem. From the point of view of the autopilot, it's not possible that the sample was received before it was created. If this is the case, it's because both systems are not time-synced.
If proper time-sync is not possible, I think we should rather override the timestamp_sample
in the driver, as having an incorrect timestamp_sample
is worse than assuming 0 delay between both timestamps.
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.
Ok, I understand. We can't have a proper time-sync for now so let's assume we have 0 delay between timestamps.
I 've pushed the change in the driver and revert the one in Vehicle_IMU.
@@ -21,7 +21,6 @@ CONFIG_DRIVERS_IMU_ANALOG_DEVICES_ADIS16448=y | |||
CONFIG_DRIVERS_IMU_INVENSENSE_ICM20602=y | |||
CONFIG_DRIVERS_IMU_INVENSENSE_ICM20649=y | |||
CONFIG_DRIVERS_IMU_INVENSENSE_ICM20948=y | |||
CONFIG_COMMON_INS=y |
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.
This would break existing setups using the vector nav driver. I understand you cannot leave it enabled as both drivers won't fit flash but maybe add a note in the PR description for the release notes that users of external INS (vector nav and sbgecom) need to enable the drivers in the config.
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.
Ok, I revert it and change the PR description.
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.
@bresch By reverting this change the issue is I have 3 jobs that are failing due to flash overflowing.
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.
@dagar do we then just disable all INS drivers?
8802af5
to
7d87025
Compare
@tolesam can you please rebase your pr with latest from main? I want to see if the failed CI tests are real |
fe7debc
to
3697ec7
Compare
@mrpollo |
b709a8e
to
8f5ed0e
Compare
Implement sbgECom messages handling to provide IMU sensors, GNSS and EKF data to the autopilot Be able to parametrize the serial port, baudrate and the communicating mode Clone sbgECom library only if sbgecom support is enabled and apply a patch Be able to send SBG Systems INS settings in several ways when starting sbgecom driver
8f5ed0e
to
3803497
Compare
New Feature
Implement sbgECom messages handling to provide IMU sensors, GNSS and EKF data to the autopilot
Be able to parametrize the serial port, baudrate and the communicating mode
Clone sbgECom library only if sbgecom support is enabled and apply a patch
Be able to send SBG Systems INS settings in several ways when starting sbgecom driver
Bug Fixes
Fix sensor airspeed simulator units
Fix HIGHRES_IMU pressure unit
Remarks
Users of external INS (vectornav and sbgecom) need to enable the drivers in the config. As all external INS are currently enabled on some board config, CI is failing.