xxxxxxxxxx
67
// Visualization of data from EVM board:
// https://github.com/mitmedialab/TI_EVM_logger
var host = 'localhost:8080';
var socket;
const square_size = 450;
var SensorValues;
var oldSensorValue;
var toggle;
function setup() {
frameRate(33);
createCanvas(displayWidth, displayHeight);
socket = new WebSocket('ws://' + host);
socket.onmessage = readMessage;
SensorValues = [0,0,0,0];
oldSensorValue = 0;
toggle = true;
}
function readMessage(event) {
SensorValues = split(event.data, ',');
}
function draw() {
background(0);
if (fullscreen()) {
translate(displayWidth/2 - square_size/2,
3.5*displayHeight/5 - square_size/2);
}
// falling edge detection
const threshold = 60;
var sensorValue = float(SensorValues[0]);
if ((sensorValue <= threshold) && (threshold < oldSensorValue))
toggle = !toggle;
y = toggle ? square_size : square_size/2;
oldSensorValue = sensorValue;
// draw rectangle:
fill(0);
strokeWeight(6);
stroke(255);
rect(10, 10, square_size-20, y);
}
// full screen functions:
function mousePressed() {
if (mouseX > 0 && mouseX < windowWidth &&
mouseY > 0 && mouseY < windowHeight) {
let fs = fullscreen();
fullscreen(!fs);
}
}
function windowResized() {
resizeCanvas(displayWidth, displayHeight);
background(0);
}