Adafruit Father M0

Salve,

sto utilizzando la scheda Adafruit Father M0 Bluetooth

Ho un problema con la porta usb, le prime connessioni con il PC hanno successo, trova l'ultimo driver installato e riconosce il dispositivo, riesco a vedere la COM, a caricare il programma, a vedere le stringhe dal monitor seriale.

Dopo poco comincia a non riconoscere più la seriale alla connessione, poi a volte viene riconosciuta, ma quando finisce il caricamento del programma la porta non esiste piu'.

Pensando che fosse guasto, ho chiesto la sostituzione, il secondo ha durato qualche mese, poi stessa cosa.

Pensando di aver pasticciato con qualche connessione, ne ho ordinato un terzo, questo dopo un giorno ha smesso di funzionare con lo stesso problema.

Ho anche provato ad seguire questo suggerimento

#if defined(ARDUINO_SAMD_ZERO) && defined(SERIAL_PORT_USBVIRTUAL)
 // Required for Serial on Zero based boards
 #define Serial SERIAL_PORT_USBVIRTUAL
#endif

Non capisco se mi sfugge qualcosa o è un prodotto difettoso.

Suggerimenti?

Grazie

ho scoperto che il problema sta in queste linee

int TabIRs[] = {A0, A1, A2, A3, A4, A5};
int IndIR; 

  for (IndIR=0; IndIR<sizeof(TabIRs); IndIR++)
  {
    pinMode (TabIRs[IndIR], INPUT);
  }

eppure mi sembra che non siano i pin della uart

Sizeof non dice quanti elementi del vettore ma la dimensione totale in byte
Ogni cella int è 2 byte, 6 celle x 2 = 12

TabIRS dichiararlo byte invece di int è risolvi