Hi guys,
I have interfaced two IMU sensors i.e. MPU6050 with an nrf51 controller chip. I read both the sensors and everything works fine when the circuit is made over a breadboard (so no issues in the code). In this case, I use the desired length of wires i.e. almost 6 inches for one MPU6050 and 1 inch for the other MPU6050.
Now as soon as I shift all this to a PCB Board i.e. one MPU6050 is with the NRF chip on the board having short connections and the other MPU connected off the board via 6-inch wires to the PCB board, the I2C starts hanging.
The supply voltage is 3.3V and pull ups used are 2.2k ohm. I have tried multiple things. Decreasing the pull-up value to 1k has improved the I2C performance as it now runs for a longer time on the PCB board. But the hanging still persists. Moreover, decreasing the wire length also solves the problem but can't do that due to design constraints.
On the breadboard, the I2C runs smoothly up to 10 inches of wire length, above that it also starts to hang but on the PCB I start getting issues above 3 inches.
What could be the potential things that I might be missing out on? Could there be a problem in the PCB design, what considerations should I keep in mind? The wires are directly soldered to the PCB board could that be causing some sort of interference?
Thanks in advance.
I have interfaced two IMU sensors i.e. MPU6050 with an nrf51 controller chip. I read both the sensors and everything works fine when the circuit is made over a breadboard (so no issues in the code). In this case, I use the desired length of wires i.e. almost 6 inches for one MPU6050 and 1 inch for the other MPU6050.
Now as soon as I shift all this to a PCB Board i.e. one MPU6050 is with the NRF chip on the board having short connections and the other MPU connected off the board via 6-inch wires to the PCB board, the I2C starts hanging.
The supply voltage is 3.3V and pull ups used are 2.2k ohm. I have tried multiple things. Decreasing the pull-up value to 1k has improved the I2C performance as it now runs for a longer time on the PCB board. But the hanging still persists. Moreover, decreasing the wire length also solves the problem but can't do that due to design constraints.
On the breadboard, the I2C runs smoothly up to 10 inches of wire length, above that it also starts to hang but on the PCB I start getting issues above 3 inches.
What could be the potential things that I might be missing out on? Could there be a problem in the PCB design, what considerations should I keep in mind? The wires are directly soldered to the PCB board could that be causing some sort of interference?
Thanks in advance.