webpage -> gamepad api -> socket.io -> piGPIO out -> vex adi port
Code to receive data in PROS:
Declare ADI Sensors
ADIAnalogIn sensorY ('F');
ADIAnalogIn sensorX ('E');
Filter Data From ADI Ports
double previousX = valX;
double previousY = valY;
valY = ((sensorY.get_value()-15) / 10.6299) - 127; // get values from sensors
valX = ((sensorX.get_value()-15) / 10.6299) - 127;
if (fabs(valY) <= 50) { // Cancel out noise less than 50 (y value)
valY = 0;
}
if (fabs(valY - previousY) <= 10) { // Help reduce noise (y value)
valY = previousY;
}
if (fabs(valX) <= 50) { // Cancel out noise less than 50 (x value)
valX = 0;
}
if (fabs(valX - previousX) <= 10) { // Help reduce noise (x value)
valX = previousX;
}
opControlDrive(valY, valX); // pass data to your op control drive function