**Requester: @Aaryan-Anand **
(Non-developer requests only): Is your feature request related to a problem? Please describe.
Euler angles suffer from gimbal lock, and it's advisable to start from scratch with quats rather than try to make it work when we barely have anything right now.
Describe the solution you'd like
We'll want to start with some way of converting our raw sensor readings (3DOF) into quaternions. This should happen after the conversion step of sensor_dump to replace our current state estimations.
This is going to span the top level firmware and mod; the SENSOR_DATA struct will need to be modified which, as always, is going to complicate this significantly since SDEC updates are involved (see SunDevilRocketry/Flight-Computer-Firmware#217). We may want to consider our final intended data structure before starting this so we only have to make the change once. Unless we convert back to euler, we will also need to modify the dashboard dump data structure with careful attention paid to our telemetry packet sizing limit.
Describe alternatives you've considered
GIMBALLOCKGIMBALLOCKGIMBALLOCK-
Additional context
N/A
Points of Contact
all parts of this are kinda me (@ETSells) only? probably loop in our little state estimation task force as well.
**Requester: @Aaryan-Anand **
(Non-developer requests only): Is your feature request related to a problem? Please describe.
Euler angles suffer from gimbal lock, and it's advisable to start from scratch with quats rather than try to make it work when we barely have anything right now.
Describe the solution you'd like
We'll want to start with some way of converting our raw sensor readings (3DOF) into quaternions. This should happen after the conversion step of sensor_dump to replace our current state estimations.
This is going to span the top level firmware and mod; the
SENSOR_DATAstruct will need to be modified which, as always, is going to complicate this significantly since SDEC updates are involved (see SunDevilRocketry/Flight-Computer-Firmware#217). We may want to consider our final intended data structure before starting this so we only have to make the change once. Unless we convert back to euler, we will also need to modify the dashboard dump data structure with careful attention paid to our telemetry packet sizing limit.Describe alternatives you've considered
GIMBALLOCKGIMBALLOCKGIMBALLOCK-
Additional context
N/A
Points of Contact
all parts of this are kinda me (@ETSells) only? probably loop in our little state estimation task force as well.