@ Uwe: concordo con te sulla potenziale pericolosità della LiPo ma era per fare una prova per vedere il riscaldamento.
@ kurtommy: in pratica colleghi Arduino all'USB e alimenti sia Arduino che il motor shield, questo significa alimentare la logica a 5V (se ho ben capito, e dovrebbe essere ciò che ti dicevo anch'io). NON devi collegare i motori direttamente allo shield in quanto li devi pilotare con una tensione inferiore. Ora ATTENZIONE! io faccio un ragionamento per logica, ma siccome non so come vengono pilotati i motori non posso darti certezza che la cosa vada bene.
SE, e SOLO SE, ogni fase viene pilotata separatamente e SEMPRE con una tensione positiva, la soluzione è relativamente semplice: ogni usc ita che prima andava alla propria fase ora deve andare alla base di un transistor NPN, tramite una R da 4,7K; l'emettitore del TR va a GND, la fase del motore va sul collettore e da qui parte una R da calcolare. Più o meno io penserei a: R = V/I = 3,7V/0.4A = 9,25 ohm. Quindi dovrebbe essere circa 10 ohm 2W (anche 1W al limite potrebbe bastare). Un dubbio che ho è se in questo calcolo vada considerata la R di 6,8ohm del motore, però io ho calcolato sulla limitazione di corrente. L'altro dubbio che ho è se le fasi vengono sempre pilotate con tensioni positive o ce ne sono anche di negative.
Comunque a mio avviso il principio è questo, con tale sistema tu alimenti la logica ed il motor shield a 5V ed ai motori invii una corrente massima di 0,4A, come da specifiche, secondo me risolviamo. Ti chiedo però di pazientare ed aspettare conferma di Uwe o qualcun altro che abbia esperienza di pilotaggio di motori, io purtroppo non ne ho.