Hello,
I'm opening this thread because I made a custom board with a BMA456 sensor, but it's not working. If I try to read the 0x00 register I don't get the 0x16 as result. I also tried to connect my board to arduino and run one of the examples but they also don't work. The other I2C sensors are all working. I tried both 0x18 and 0x19 as device address. I also tried to use the online API for this sensor, and I get "bma456_read_int_status.Error [65532] : Null pointer"
Did I do any error in the schematic that prevents the sensor from working? If yes, is it possible to fix it somehow without printing a new PCB?
If the schematic is correct, what can it be the issue?
Thank you all in advance,
Best regards
Good evening,
one aspect in the schematic is, that I miss the use pull-up resistors (4,7k) for each I2C wire. Maybe you could try this.
Additional I would check if the sensor is his right position. The SDO pin should have the voltage of Vcc or GND. Make sure it has a defined voltage.
Best regards
Hello tawa,
For hardware side, you should ensure SCL, SDA I2C bus had pull up resistance(from host MCU or external).
Refer BMA456 github code, https://github.com/BoschSensortec/BMA456-Sensor-API/tree/master/examples/bma456/generic
You also could refer example code in other community topic for BMA456 discussion. https://community.bosch-sensortec.com/t5/MEMS-sensors-forum/BMA456-Init-fail/m-p/47081
I didn't put pull-up resistors because my MCU has already pull up resistors.
I tried to follow the example already, but it's not working, I'll try again from zero.
Regarding the schematic, how I connected the jumper to the other elements is correct? Maybe the problem comes from there. What do you think about it?
Hello tawa,
Haven't seen mistake in your schematic. You could try to setup your software.