Serial1 non funziona con alimentazione ext

Salve come da titolo ho un problema sulla seriale 1 del mega 2560.Mi spiego meglio se collego il mega alla porta usb funziona tutto perfettamente ,nel momento che passo ad alimentarlo dall'esterno,o sul jack o sul pin vin o direttamente sui 5volt smette di funzionare ,è forse un problema hardware?Allego lo scheck che utilizzo.Dimenticavo il display che utlizzo è un nextion 7pollici

//-------Librerie---------
#include <EmonLib.h>//lettore potenza
#include <Nextion.h>  //
//--------------
int CurrentPage = 0;  // Crea una variabile per memorizzare quale pagina è attualmente caricata
//--lettore tensione e corrente-------------
EnergyMonitor emon1;
//Inserire la tensione della vostra rete elettrica
int rete = 230.0; // Italia 230V
//Pin del sensore SCT
int pin_sct = A0;
int Wa;//variabile calcolo potenza
NexPage page0 = NexPage(0, 0, "page0");  // Page added as a touch event
NexPage page1 = NexPage(1, 0, "page1");  // Page added as a touch event
NexPage page2 = NexPage(2, 0, "page2");  // Page added as a touch event
// End of declaring objects
char buffer[100] = {0}; 
NexTouch *nex_listen_list[] =
{
  &page0,  // Page added as a touch event
  &page1,  // Page added as a touch event
  &page2,  // Page added as a touch event
  NULL  // String terminata
};  // Elenco degli eventi di fine tocco
// Page change event:
void page0PushCallback(void *ptr)  // If page 0 is loaded on the display, the following is going to execute:
{
  CurrentPage = 0;  // Set variable as 0 so from now on arduino knows page 0 is loaded on the display
  Serial.print("pagina0");
}  
void page1PushCallback(void *ptr)  // If page 1 is loaded on the display, the following is going to execute:
{
  CurrentPage = 1;  // Set variable as 1 so from now on arduino knows page 1 is loaded on the display
  Serial.print("pagina1");
}  
void page2PushCallback(void *ptr)  // If page 2 is loaded on the display, the following is going to execute:
{
  CurrentPage = 2;  // Set variable as 2 so from now on arduino knows page 2 is loaded on the display
  Serial.print("pagina2");
}  
void setup() {  // Put your setup code here, to run once:
  //Pin, calibrazione - Corrente Const= Ratio/Res. Burder. 1800/62 = 29.
  emon1.current(pin_sct, 29);
  //-------------
  Serial.begin(9600);  // Start Serial comunication at baud=9600
  Serial1.begin(9600);
  
  pinMode(A0, INPUT);
  pinMode(13, OUTPUT);
}  // End of setup
void loop() {  
  double Irms = emon1.calcIrms(1480) ;
  Wa = (Irms * rete); //calcolo la Potenza
  //------invio al display----------------
  Serial1.print("n7.val=");  // Questo viene inviato al display di nextion per impostare quale nome dell'oggetto (prima del punto) e quale attributo (dopo il punto) si sta per cambiare.
  Serial1.print(Wa);  // Questo è il valore che vuoi inviare a quell'oggetto e attributo menzionato prima.
  Serial1.write(0xff);  // Dobbiamo sempre inviare queste tre righe dopo ogni comando inviato al display di nextion...
  Serial1.write(0xff);
  Serial1.write(0xff);
  //--------------
  if (Wa < 10) {
    Serial1.print("t1.pco=");  // Questo viene inviato al display di nextion per impostare quale nome dell'oggetto (prima del punto) e quale attributo (dopo il punto) si sta per cambiare..
    Serial1.print(34784);  // Codice colore verde
    Serial1.write(0xff);  //Dobbiamo sempre inviare queste tre righe dopo ogni comando inviato al display di nextion..
    Serial1.write(0xff);
    Serial1.write(0xff);

  }
  if (Wa > 15) {
    Serial1.print("t1.pco=");  
    Serial1.print(63488);  // Codice colore rosso
    Serial1.write(0xff);  //Dobbiamo sempre inviare queste tre righe dopo ogni comando inviato al display di nextion..
    Serial1.write(0xff);
    Serial1.write(0xff);

  }

  nexLoop(nex_listen_list);  // Check for any touch event

}  // End of loop

Più che il codice sarebbe interessante vedere i collegamenti ...
... il mio sospetto è che tu alimenti TROPPE cose dai 5V di Arduino e, finché sei collega alla USB hai a disposizione 500mA, come passi al Jack nero a ai pin Vin, questa cosa NON è più vera ed è funzione della tensione di ingresso ... se dai 12V più di 200mA non tiri fuori, a 7V potrai arrivare a 300/350mA ... oltre iniziano i problemi perché il regolatore si surriscalda e non ce la fa ad alimentare i carichi, però ... in tutto questo discorso NON mi torma l'alimentazione diretta dal pin 5V ... ::slight_smile:

Vediamo lo schema dei collegamenti ....

Guglielmo

La massa?

Risolto era effettivamente un problema di massa ,Grazie a tutti