I want to connect 2 AK9753 Human Presence Sensors from Qwiic to one Arduino Uno.
I tried to do this as did someone else on the forum: Help with SparkFun Human Presence Sensor Breakout - AK9753 but I keep getting a message:
Device_2 not found. Check wiring.
I am posting the code below:
#include <Wire.h>
#include "SparkFun_AK975X_Arduino_Library.h"
AK975X movementSensor1; //Hook object to the library
AK975X movementSensor2;
int ir1_1, ir1_2, ir1_3, ir1_4;
int ir2_1, ir2_2, ir2_3, ir2_4;
void setup()
{
Serial.begin(9600);
Serial.println("AK975X Read Example");
Wire.begin();
//Turn on sensor
if (movementSensor1.begin(Wire, I2C_SPEED_STANDARD, 0x64) == false)
{
Serial.println("Device_1 not found. Check wiring.");
while (1);
}
if (movementSensor2.begin(Wire, I2C_SPEED_STANDARD, 0x65) == false)
{
Serial.println("Device_2 not found. Check wiring.");
while (1);
}
}
void loop()
{
if (movementSensor1.available() || movementSensor2.available())
{
ir1_1 = movementSensor1.getIR1();
ir1_2 = movementSensor1.getIR2();
ir1_3 = movementSensor1.getIR3();
ir1_4 = movementSensor1.getIR4();
movementSensor1.refresh(); //Read dummy register after new data is read
ir2_1 = movementSensor2.getIR1();
ir2_2 = movementSensor2.getIR2();
ir2_3 = movementSensor2.getIR3();
ir2_4 = movementSensor2.getIR4();
movementSensor2.refresh(); //Read dummy register after new data is read
}
delay(1000);
}
From what I understand, you need to give a different address for the 2nd presence sensor so that the Arduino can distinguish them. Can this be done by using some program or does it have to be done physically (as per this site: How to Work with Jumper Pads and PCB Traces)
Please help