For some reason, whenever I call “nMotorEncoder” on any IME, I get a ROBOTC Exception Violation Report saying
“Byte Code Interpreter Exception:
Program Slot: 0, Task ID: usercontrol[2]
Error at PC: Teleop+0x0021
Task at PC: Teleop+0x0021
TaskState: ‘Exception’
Exception Type: ‘Invalid Sensor Encoder Port for Motor(64)’”
I verified that everything was set up properly in “Motor and Sensors Setup,” but I still get this error. Here is a copy of my pragma code at the start of our program:
#pragma config(I2C_Usage, I2C1, i2cSensors)
#pragma config(Sensor, in1, spatPot, sensorPotentiometer)
#pragma config(Sensor, in2, compass, sensorGyro)
#pragma config(Sensor, in7, armPotR, sensorPotentiometer)
#pragma config(Sensor, in8, armPotL, sensorPotentiometer)
#pragma config(Sensor, I2C_1, L_Enc, sensorQuadEncoderOnI2CPort, , AutoAssign)
#pragma config(Sensor, I2C_2, R_Enc, sensorQuadEncoderOnI2CPort, , AutoAssign)
#pragma config(Motor, port1, RightMotor1, tmotorVex393HighSpeed, openLoop, reversed, encoder, encoderPort, I2C_2, 1000)
#pragma config(Motor, port2, LeftMotor1, tmotorVex393HighSpeed, openLoop, encoder, encoderPort, I2C_1, 1000)
#pragma config(Motor, port3, ArmRight, tmotorVex393, openLoop)
#pragma config(Motor, port4, RightMotor2, tmotorVex393HighSpeed, openLoop, reversed)
#pragma config(Motor, port5, LeftMotor2, tmotorVex393HighSpeed, openLoop)
#pragma config(Motor, port6, Spatula1, tmotorVex393, openLoop)
#pragma config(Motor, port7, Spatula2, tmotorVex393, openLoop)
#pragma config(Motor, port8, ArmLeft, tmotorVex393, openLoop)
#pragma config(Motor, port9, RightMotor3, tmotorVex393HighSpeed, openLoop, reversed)
#pragma config(Motor, port10, LeftMotor3, tmotorVex393HighSpeed, openLoop)
//*!!Code automatically generated by 'ROBOTC' configuration wizard !!*//
We really need these IMEs to work… HELP PLEASE?!