diff --git a/hal/lib/Athena/Digital.cpp b/hal/lib/Athena/Digital.cpp index e3edbeaabd..1ad211d089 100644 --- a/hal/lib/Athena/Digital.cpp +++ b/hal/lib/Athena/Digital.cpp @@ -1453,6 +1453,8 @@ void i2CInitialize(uint8_t port, int32_t *status) { } else if(port == 1) { i2CMXPObjCount++; if (i2CMXPHandle > 0) return; + if(!allocateDIO(getPort(24), false, status)) return; + if(!allocateDIO(getPort(25), false, status)) return; digitalSystem->writeEnableMXPSpecialFunction(digitalSystem->readEnableMXPSpecialFunction(status)|0xC000, status); i2CMXPHandle = i2clib_open("/dev/i2c-1"); } diff --git a/wpilibc/wpilibC++/include/SensorBase.h b/wpilibc/wpilibC++/include/SensorBase.h index c64298bc88..7baa9e1e12 100644 --- a/wpilibc/wpilibC++/include/SensorBase.h +++ b/wpilibc/wpilibC++/include/SensorBase.h @@ -35,7 +35,7 @@ public: static bool CheckSolenoidChannel(uint32_t channel); static bool CheckPDPChannel(uint32_t channel); - static const uint32_t kDigitalChannels = 20; + static const uint32_t kDigitalChannels = 26; static const uint32_t kAnalogInputs = 8; static const uint32_t kAnalogOutputs = 2; static const uint32_t kSolenoidChannels = 8; diff --git a/wpilibj/wpilibJava/src/main/java/edu/wpi/first/wpilibj/SensorBase.java b/wpilibj/wpilibJava/src/main/java/edu/wpi/first/wpilibj/SensorBase.java index 32a6477611..9c5772d027 100644 --- a/wpilibj/wpilibJava/src/main/java/edu/wpi/first/wpilibj/SensorBase.java +++ b/wpilibj/wpilibJava/src/main/java/edu/wpi/first/wpilibj/SensorBase.java @@ -28,7 +28,7 @@ public abstract class SensorBase { // TODO: Refactor /** * Number of digital channels per digital sidecar */ - public static final int kDigitalChannels = 20; + public static final int kDigitalChannels = 26; /** * Number of digital modules * XXX: This number is incorrect. We need to find the correct number.