You will need the P5 Serial App: https://github.com/p5-serial/p5.serialcontrol/releases
Arduino Code:
void setup() { Serial.begin(9600); pinMode(2, OUTPUT); pinMode(5, OUTPUT); while (Serial.available() <= 0) { Serial.println("0,0"); // send a starting message delay(300); // wait 1/3 second } } void loop() { while (Serial.available() > 0) { // read the incoming byte: int inByte = Serial.read(); switch (inByte) { case 0: digitalWrite(2, LOW); digitalWrite(5, LOW); break; case 1: digitalWrite(2, HIGH); break; case 2: digitalWrite(5, HIGH); break; } int sensorValue = analogRead(A0); Serial.print(sensorValue); Serial.print(","); sensorValue = analogRead(A1); Serial.print(sensorValue); Serial.println(); } }
P5js – Editor Code
Exercises:
- make something that uses only one sensor on arduino and makes the ellipse in processing move on the horizontal axis, in the middle of the screen, and nothing on arduino is controlled by processing
-
make something that controls the LED brightness from processing
-
take the gravity wind example below and make it so every time the ball bounces one led lights up and then turns off, and you can control the wind from one analog sensor
Gravity Wind (press space bar for new ball drop)
More Resources: https://itp.nyu.edu/physcomp/labs/#Asynchronous_Serial