Processing keine Verbindung zum Arduino

Hallo alle Zusammen,

ich beschäftige mich gerade mit der grafischen Darstellung am PC von Werten die vom Arduino gesendet werden....

Ich verwende die IDE Version 1.8.13 und Processing Version 4.0b1.

Leider bekomme ich beim Ausführen immer folgende Fehlermeldung:

ArrayIndexOutOfBoundsException: Index 2 out of bounds for length 1

import processing.serial.*;

Serial myPort; // Create object from Serial class
int val; // Data received from the serial port

void setup()
{
size(200, 200);
// I know that the first port in the serial list on my mac
// is always my FTDI adaptor, so I open Serial.list()[0].
// On Windows machines, this generally opens COM1.
// Open whatever port is the one you're using.
String portName = Serial.list()[2];
myPort = new Serial(this, portName, 9600);
}

Der ComPort ist beim Arduino auf 2 eingestellt. Unter Werkzeuge: ComPort ist das zu sehen und auch im Hardware Manager. Auch beim Auslesen der Geräte im Processing bekomme ich die Angabe COM 2.

Wo könnte der Fehler liegen? Was könnte ich versuchen?

Vielen Dank

Versuchen Sie, die Liste der Ports anzuzeigen

  // display the known Serial ports
  printArray(Serial.list());

Es ist wahrscheinlich, dass Ihr Serial.list() Array keinen Eintrag für #2 hat
String portName = Serial.list()[2];

=>

import processing.serial.*;
Serial myPort;  // Create object from Serial class

void setup() 
{
  size(200, 200);
  printArray(Serial.list()); // Überprüfen Sie, was Sie hier sehen und notieren Sie den Index, der Ihrem Arduino entspricht.
  String portName = Serial.list()[5];
  myPort = new Serial(this, portName, 9600);
}

PS: natürlich sollten Sie den Serial Monitor nicht in der Arduino IDE geöffnet haben

Ok vielen Dank für die Hilfe.

Ich habe den seriellen Monitor vom Arduino nicht geöffnet....Allerdings das gleiche Bild.

Arduino auf ComPort 1
Fehlermeldung:

[0] "COM1"
ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1

Programm sieht wie folgt aus:

import processing.serial.*;
Serial myPort; // Create object from Serial class

void setup()
{
size(200, 200);
printArray(Serial.list()); // Überprüfen Sie, was Sie hier sehen und notieren Sie den Index, der Ihrem Arduino entspricht.
String portName = Serial.list()[1];
myPort = new Serial(this, portName, 9600);
}

Was ist die vollständige Ausgabe in der Konsole für Processing?
➜ was sehen Sie von printArray(Serial.list());

wenn es nur ist
[0] "COM1"
dann bedeutet dies, dass das Verarbeitungsprogramm Ihren Arduino nicht sieht. es sieht nur COM1 als Eintrag #0, also wenn Sie Eintrag #1 mit Serial.list()[1] fragen, bekommen Sie den Java-Absturz.

Ja das ist die vollständige Ausgabe der Konsole, mehr leider nicht.

Das einzige was ich noch versuchen würde wäre mit einem Leonardo, ob hier eine Verbindung möglich ist.

es scheint, dass Processing Ihr Arduino nicht sehen kann ...