Estoy usando un acelerómetro BLE barato MPU 6050 que notifica los valores X, Y, Z como un único atributo. Parece que este tipo de valor no se ha estandarizado y no sé cómo leer los datos correctamente.
Aquí hay algunos ejemplos:
- 0xFF52FFBC36AC
- 0xFF5CFFD83656
- 0xFF50FFB83620
- 0xFF4EFFE43648
- 0xFF6AFFEC3676
- 0xFF4EFFEC365A
Es bastante obvio, incluso al mover el dispositivo que X, Y, Z se pueden dividir, por ejemplo, en 0xFF52, 0xFFBC, 0x36AC.
¿Cómo debería convertirlo en algo utilizable (firmado [g] quizás?)?
Empecé poniendo el dispositivo en el plano y girando solo alrededor del eje X, y obtengo estos valores (recopilados rápidamente como borrador) para Y y Z (decimal):
| Rotation Around X | Y | Z |
|:------------------:|:----------:|:-------------------:|
| 0° | 65535 or 0 | 13900 (only g here) |
| 45° | 56000 | 11100 |
| 90° | 49000 | 62000 |
| 135° | 54000 | 52000 |
| 180° (upside down) | 65535 or 0 | 46300 |
| 225 | 8300 | 49000 |
| 270 | 1600 | 63000 |
| 315 | 9400 | 11100 |
| 360 | 65535 or 0 | 13900 |