From e6cd0c1887c18d51ac44e820ac9c6e0f338c47c9 Mon Sep 17 00:00:00 2001 From: alanbjohnston Date: Mon, 10 Aug 2020 17:35:41 -0400 Subject: [PATCH] check if i2c-11 is present for vB5 --- afsk/telem.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/afsk/telem.c b/afsk/telem.c index c8d8d214..6fc88d43 100644 --- a/afsk/telem.c +++ b/afsk/telem.c @@ -240,10 +240,19 @@ int main(int argc, char *argv[]) { sensor[PLUS_Y] = config_sensor("/dev/i2c-1", 0x41, 400); sensor[BUS] = config_sensor("/dev/i2c-1", 0x45, 400); sensor[BAT] = config_sensor("/dev/i2c-1", 0x44, 400); - sensor[PLUS_Z] = config_sensor("/dev/i2c-3", 0x40, 400); - sensor[MINUS_X] = config_sensor("/dev/i2c-3", 0x41, 400); - sensor[MINUS_Y] = config_sensor("/dev/i2c-3", 0x44, 400); - sensor[MINUS_Z] = config_sensor("/dev/i2c-3", 0x45, 400); + + if (access("/dev/i2c-11", W_OK | R_OK) < 0) { // Test if I2C Bus 3 is present + printf("/dev/i2c-11 is present\n\n"); + sensor[PLUS_Z] = config_sensor("/dev/i2c-11", 0x40, 400); + sensor[MINUS_X] = config_sensor("/dev/i2c-11", 0x41, 400); + sensor[MINUS_Y] = config_sensor("/dev/i2c-11", 0x44, 400); + sensor[MINUS_Z] = config_sensor("/dev/i2c-11", 0x45, 400); + } else { + sensor[PLUS_Z] = config_sensor("/dev/i2c-3", 0x40, 400); + sensor[MINUS_X] = config_sensor("/dev/i2c-3", 0x41, 400); + sensor[MINUS_Y] = config_sensor("/dev/i2c-3", 0x44, 400); + sensor[MINUS_Z] = config_sensor("/dev/i2c-3", 0x45, 400); + } } else {