import processing.serial.*; //import processing library int linefeed = 10; Serial myPort; //the serial port float pot1; //variable for potentiometer position float pot2; //variable for potentiometer position Firefly[] fireflies = new Firefly[2]; //call Firefly class void setup() { size(800,600); smooth(); frameRate(30); fireflies[0] = new Firefly(20,20,30); fireflies[1] = new Firefly(200,400,40); //plug in the serial port number that is attached to Arduino, should be 0 on Mac myPort = new Serial(this, Serial.list()[0], 9600); //read bytes into a buffer until linefeed (ASCII 10) myPort.bufferUntil(linefeed); //initialize sensor value pot1 = 0; pot2=0; } void draw() { background(0); for (int i = 0; i < fireflies.length; i++) { fireflies[i].move(); fireflies[i].display(); } } void serialEvent(Serial myPort) { //read serial buffer String myString = myPort.readStringUntil(linefeed); //if you have any bytes other than linefeed if (myString != null) { myString = trim(myString); //convert sensor values into integers int sensors[] = int(split(myString, ',')); //print out the values from the variable sensor for (int sensorNum = 0; sensorNum < sensors.length; sensorNum++) { print("Sensor " + sensorNum + ": " + sensors[sensorNum] + "\t"); pot1 = sensors[0]; pot2 = sensors[1]; } //add a linefeed after all the sensor values are printed println(); } }