- This topic has 3 replies, 1 voice, and was last updated 4 years, 2 months ago by .
- You must be logged in to reply to this topic.
Home › Forums › The libraries hosted on the site › PCF8574 i2c digital I/O expander › Add functionality to check if device is connected properly.
Tagged: Enhancement
Hey Renzo,
Thank you for this very usefull library! I am using it for a current project, however I found that I am not able to see if the device is connected properly.
As a solution to this, I would like to suggest that the return value of “_write.endtransmission()” is used to see if the I2C transmission was succesfull.
For example, a “status” parameter could be added to the PCF8574 class, which indicates that the latest transmission has failed. It is also possible to return the result of “_write.endtransmission()” in the .begin() function, instead of using a void function.
Feel free to do with this suggestion as you please.
Best, Michiel
Hi Michiel
now It’s possible to check the status with
if (pcf8574.begin()){
Serial.println("pcf8574 started!");
}else{
Serial.println("pcf8574 not started!");
}
or
if (pcf8574.digitalWrite(P7, startVal)){
Serial.println("Write ok");
}else{
Serial.println("Write not ok");
}
It’s also possible to get last writeStatus with
uint8_t getTransmissionStatusCode() const {
return transmissionStatus;
}
bool isLastTransmissionSuccess(){
return transmissionStatus==0;
}
Bye Renzo
Any tips on how to check if digitalReadAll() is successful?
Br/Mob
I think there Is no way tuo check that the buffer retrieved Is correct.
I only check if there are data to buffer but It isn’t a solution maybe.
Bye Renzo
More
3D Printer 3D printer upgrade ABB Arduino Arduino IDE Arduino SAMD boards Aurora AWS CNC Cyclone PCB Factory Cyclone PCB Factory how to build It Display DynamoDB E32 E70 EByte esp01 esp32 esp8266 File System Firmware i2c Library LoRa MicroPython Milling PCB My PCB Networking PCB pinout Power saving Raspberry Pi REST API RF rp2040 SD Card Sensors Sleep and Wake UP SPI STM32 Temperature Tutorial Web Server Wemos D1 mini WiFi