gbionics / gbionics/human-dynamics-estimation

Quaternion/Position order is not coherent between logger and thrift

Open
#413 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
102
Forks
32
Avg merge
7d 1h
Merged PRs (30d)
1

Description

**Describe the bug**
With @Zweisteine96 we noticed difference in the linear/angular serialization used used for iFeel data:
- in the thrift message we use angular/linear for the pose (see [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/msgs/thrift/WearableData.thrift#L55-L56) and [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/msgs/thrift/WearableData.thrift#L60-L61)), while for the velocity in the thift we use linear/angular (see [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/msgs/thrift/WearableData.thrift#L62-L63))
- In the sensors interface implementation the order seems to be again orientation/position (see [here](https://github.com/robotology/wearables/blob/efb34b1baaf98006ef2e9add0cdfe98ec6f30e86/interfaces/IWear/include/Wearable/IWear/Sensors/IPoseSensor.h#L32) and [here](https://github.com/robotology/wearables/blob/efb34b1baaf98006ef2e9add0cdfe98ec6f30e86/interfaces/IWear/include/Wearable/IWear/Sensors/IPoseSensor.h#L48-L65))
- In the logger, data are saved as position/orientation (see [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/wrappers/IWearLogger/src/IWearLogger.cpp#L522-L530) and [here](https://github.com/robotology/wearables/blob/59ea45c9c80dec9317790c5a4b8712a31a7d9ee1/wrappers/IWearLogger/src/IWearLogger.cpp#L663-L664))

The difference between logger and thrift has created some confusion.

This opens ups to some solutions:
- Document property the way data are logged and transmitted
- Change the order in the thrift (this will break backcompatibility of the dataset, even if it would be clear the order used)
- Change the order in the logger (same as previous)
- ... others?

Any suggestion/opinion @RiccardoGrieco @traversaro @diegoferigo ?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by comparing the cited fields in msgs/thrift/WearableData.thrift, interfaces/IWear/include/Wearable/IWear/Sensors/IPoseSensor.h, and wrappers/IWearLogger/src/IWearLogger.cpp. Determine and document the intended ordering across the thrift messages, sensor interface, and logger, including the dataset compatibility implications. Done requires a decided convention and an agreed update or documentation plan.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
data, distributed-systems
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.