Problema alimentazione MPU-6050, funziona solo se collegato al PC

Ciao a tutti,

da qualche tempo sto lavorando a un progettino tramite arduino per creare un semplice robot tagliaerba.

Ho progettato il robot e testato il tutto sempre con Arduino collegato in debug al computer e fin qui tutto bene.

Sto ora iniziando a testare che il robot si muova anche senza essere collegato al pc, e qui il primo problema...
Ho alimentato Arduino via USB tramite un power bank da 10'000mA mentre i motori sono collegati ad una batteria da 12V 7A.

Con questa configurazione il modulo MPU-6050 non mi ritorna nessun dato e quindi non riesco a bilanciare la direzione del robot.

Ad arduino sono collegati:

  • 3 sensori HC-SR04
  • 2 ponti ad H BTS7960
  • 1 modulo MPU-6050

Qui c'è il codice che ho implementato fin ora: GitHub - lucabiasotto/OttoMower
(purtroppo qui c'è solo il codice, non ho ancora pubblicato il circuito)

Ho misurato la tensione in uscita dal raspberry quando collegato al raspberry ed è d 5.01V, la tensione invece che alimenta il modulo MPU-6050 è sempre di 3.35V sia tramite PC che tramite power bank

Vi è mai capitato un problema simile? avete qualche idea su come potrei risolvere?

Grazie a tutti per i consigli :wink:

AGGIORNAMENTO:
Ho scoperto che se dopo aver avviato Arduino (alimentandolo a batteria) premo il tasto reset, arduino si riavvia e il giroscopio inizia a raccogliere informazioni.
Cosa può significare?

RISOLTO

Dopo aver scoperto che il problema c'era solo appena alimentavo Arduino ho modificato il codice in modo che la prima volta che do tensione ad Arduino attende qualche secondo ed effettua un reset.
In questo modo, dopo il reset, MPU-6050 legge i dati correttamente.

Non è elegantissima come soluzione, ma se qualcuno ha il mio stesso problema può funzionare.

Saluti