When I execute the i2cdetect command after reseating the MC_23017 the command response is super slow. I also get a ton of messages in syslog transfer timeouts: Jun 22 19:39:06 rpi3b2 kernel: [18443.461850] i2c i2c-1: transfer timed out Jun 22 19:39:07 rpi3b2 kernel: [18444.461859] i2c i2c-1: transfer timed out Jun 22 19:39:08 rpi3b2 kernel: [18445.461901] i2c i2c-1: transfer timed out Jun 22 19:39:09 rpi3b2 kernel: [18446.461903] i2c i2c-1: transfer timed out Jun 22 19:39:10 rpi3b2 kernel: [18447.461916] i2c i2c-1: transfer timed out Jun 22 19:39:11 rpi3b2 kernel: [18448.461929] i2c i2c-1: transfer timed out Jun 22 19:39:12 rpi3b2 kernel: [18449.461918] i2c i2c-1: transfer timed out Jun 22 19:39:13 rpi3b2 kernel: [18450.461928] i2c i2c-1: transfer timed out Jun 22 19:39:14 rpi3b2 kernel: [18451.461929] i2c i2c-1: transfer timed out Jun 22 19:39:15 rpi3b2 kernel: [18452.461946] i2c i2c-1: transfer timed out Jun 22 19:39:16 rpi3b2 kernel: [18453.461929] i2c i2c-1: transfer timed out Jun 22 19:39:17 rpi3b2 kernel: [18454.461957] i2c i2c-1: transfer timed out Jun 22 19:39:18 rpi3b2 kernel: [18455.461944] i2c i2c-1: transfer timed out Jun 22 19:39:19 rpi3b2 kernel: [18456.461917] i2c i2c-1: transfer timed out
Jun 22 19:39:06 rpi3b2 kernel: [18443.461850] i2c i2c-1: transfer timed out
Jun 22 19:39:07 rpi3b2 kernel: [18444.461859] i2c i2c-1: transfer timed out
Jun 22 19:39:08 rpi3b2 kernel: [18445.461901] i2c i2c-1: transfer timed out
Jun 22 19:39:09 rpi3b2 kernel: [18446.461903] i2c i2c-1: transfer timed out
Jun 22 19:39:10 rpi3b2 kernel: [18447.461916] i2c i2c-1: transfer timed out
Jun 22 19:39:11 rpi3b2 kernel: [18448.461929] i2c i2c-1: transfer timed out
Jun 22 19:39:12 rpi3b2 kernel: [18449.461918] i2c i2c-1: transfer timed out
Jun 22 19:39:13 rpi3b2 kernel: [18450.461928] i2c i2c-1: transfer timed out
Jun 22 19:39:14 rpi3b2 kernel: [18451.461929] i2c i2c-1: transfer timed out
Jun 22 19:39:15 rpi3b2 kernel: [18452.461946] i2c i2c-1: transfer timed out
Jun 22 19:39:16 rpi3b2 kernel: [18453.461929] i2c i2c-1: transfer timed out
Jun 22 19:39:17 rpi3b2 kernel: [18454.461957] i2c i2c-1: transfer timed out
Jun 22 19:39:18 rpi3b2 kernel: [18455.461944] i2c i2c-1: transfer timed out
Jun 22 19:39:19 rpi3b2 kernel: [18456.461917] i2c i2c-1: transfer timed out
Can anyone help/provide an explaination on this? Much appriciated.
/*-------------------------------------------------------------------------------
- pgbl_01.c
- pigpio library.
- Blink LEDs program #1. */
/*-------------------------------------------------------------------------------
- Includes. */ #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h> #include <pigpio.h>
/*-------------------------------------------------------------------------------
- Global constants & variables. */
#define NUM_PINS 5 unsigned pins[] = { 5, 6, 13, 19, 26 };
/*-------------------------------------------------------------------------------
- Helper functions. */
// Print an 8-bit register value in binary. // const char* printb8(int x) { static char b[9]; b[0] = '\0'; int z; for (z = 128; z > 0; z >>= 1) { strcat(b, ((x & z) == z) ? "1" : "0"); } return b; } /* End printb */
// Press Any Key To Continue. // void paktc(){ printf("Press any key to continue...\n"); getchar(); //printf("%c\n", ch); } /* End paktc */
/*-------------------------------------------------------------------------------
- Main function. */
int main(int argc, char **argv) { char *message = "HELLO WOILD from the C programming language!!\n\n"; printf("%s", message);
if (gpioInitialise() < 0) {
fprintf(stderr, "pigpio initialisation failed.\n");
return(1);
}
else {
printf("pigpio initialisation OK.\n");
}
// Set pins for output low, delay 1 min, then high.
//
for (int p = 0; p < NUM_PINS; p++) {
gpioSetMode(p, PI_OUTPUT);
gpioWrite(pins[p], 0x00);
sleep(1);
gpioWrite(pins[p], 0x01);
}
// Clean up and close pigpio.
//
gpioTerminate();
printf("Done.\n");
} /* End main() */
/*-------------------------------------------------------------------------------
* pgbl_01.c
* pigpio library.
* Blink LEDs program #1.
*/
/*-------------------------------------------------------------------------------
* Includes.
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <pigpio.h>
/*-------------------------------------------------------------------------------
* Global constants & variables.
*/
#define NUM_PINS 5
unsigned pins[] = { 5, 6, 13, 19, 26 };
/*-------------------------------------------------------------------------------
* Helper functions.
*/
// Print an 8-bit register value in binary.
//
const char* printb8(int x) {
static char b[9];
b[0] = '\0';
int z;
for (z = 128; z > 0; z >>= 1) {
strcat(b, ((x & z) == z) ? "1" : "0");
}
return b;
} /* End printb */
// Press Any Key To Continue.
//
void paktc(){
printf("Press any key to continue...\n");
getchar();
//printf("%c\n", ch);
} /* End paktc */
/*-------------------------------------------------------------------------------
* Main function.
*/
int main(int argc, char **argv) {
char *message = "HELLO WOILD from the C programming language!!\n\n";
printf("%s", message);
if (gpioInitialise() < 0) {
fprintf(stderr, "pigpio initialisation failed.\n");
return(1);
}
else {
printf("pigpio initialisation OK.\n");
}
// Set pins for output low, delay 1 min, then high.
//
for (int p = 0; p < NUM_PINS; p++) {
gpioSetMode(p, PI_OUTPUT);
gpioWrite(pins[p], 0x00);
sleep(1);
gpioWrite(pins[p], 0x01);
}
// Clean up and close pigpio.
//
gpioTerminate();
printf("Done.\n");
} /* End main() */