From e4819d3854d8cfed687e14e2ee6e973ddeefe9e1 Mon Sep 17 00:00:00 2001 From: Francois <thiebolt@irit.fr> Date: Tue, 15 Mar 2022 08:01:39 +0100 Subject: [PATCH] trying to overcome i2c comm issues with TSL2561 --- .../libraries/neocampus_drivers/TSL2561.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/neosensor/libraries/neocampus_drivers/TSL2561.cpp b/neosensor/libraries/neocampus_drivers/TSL2561.cpp index 44be5d65..a82920d2 100644 --- a/neosensor/libraries/neocampus_drivers/TSL2561.cpp +++ b/neosensor/libraries/neocampus_drivers/TSL2561.cpp @@ -214,6 +214,23 @@ bool TSL2561::_check_identity( uint8_t a ) { _powerON(a); delay(10); // check Register ID + Wire.beginTransmission(a); + Wire.write((uint8_t)(TSL2561_COMMAND_BIT | TSL2561_CLEAR_BIT | TSL2561_REGISTER_CONTROL)); + Wire.beginTransmission(a); + Wire.requestFrom(a, (uint8_t)1); + +TO BE CONTINUED + + else yield(); + + uint8_t i=0; + while( Wire.available() and (i < tabsize) ) { + tab[i++] = Wire.read(); + } + Wire.endTransmission(); + +TO BE CONTINUED + uint8_t _res = read8(a,TSL2561_REGISTER_ID); if( (_res&0xF0)!=REGISTER_ID_TSL2561 and (_res&0xF0)!=0x00 ) return false; -- GitLab