Federico:
E ho riposizionato il tutto alla luce della foto di astrobeed..
Un po' meglio ma dopo poco sembra andare a caso o inizia a girare tutto in maniera vorticosa ??!?!?!!
Quasi sicuramente il tuo problema è legato alla mancata coerenza tra gli assi del gyro e quelli dell'accelerometro e, forse, anche per i fondo scala.
Io ho montato il tutto su breadboard per comodità, in settimana preparo una schedina dedicata dove mettere anche il magnetometro e il sensore di pressione, e il verso di montaggio è praticamente obbligato, infatti, e l'avevo pure detto, ho dovuto modificare i riferimenti degli assi nel software per farli tornare nel giusto modo.
In pratica devi avere che muovendo l'asse roll del gyro e quello roll dell'accelerometro i relativi grafici e valori devono muoversi assieme e con lo stesso segno, la stessa cosa va rifatta per tutti gli altri assi modificando l'assegnazione, e il verso, come serve nel software.
Nel tuo caso devi agire su questa porzione di codice :
// **************************
// ADC ACC
// **************************
#if defined(ADCACC)
void adc_ACC_init(){
pinMode(A1,INPUT);
pinMode(A2,INPUT);
pinMode(A3,INPUT);
}
void adc_ACC_getRawADC() {
accADC[ROLL] = -analogRead(A1);
accADC[PITCH] = -analogRead(A2);
accADC[YAW] = -analogRead(A3);
acc_1G = 75;
acc_25deg = 32; // = acc_1G * sin(25 deg)
accPresent = 1;
}
#endif
Basta spostare A1, A2, A3 come serve ed eventualmente togliere il segno - per invertire la direzione.