-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I2C Transfer fails after soft Reset #5
Comments
Hello @WannabeMaker Interesting behavior you are observing here! and you are not alone since the Adafruit driver has a note about it... Cheers |
Hello @qfisch, The following code does not work. When reading the flow we get negative values and large numbers. It is impossible either to give it a set point.
but this one does. To cite the Adafruit library author "double tapping it" seems to do the trick.
|
Hello @WannabeMaker After testing with the boards around (Arduino/ESP32), I could not reproduce the behavior. I2C can be pretty sensitive to wiring. Could you share more about your setup/wiring ? Thanks |
Good morning,
I have been experiencing a strange behavior when I am trying to run the SCD example code on a P1AM-200 from Fact Engineering. As found on their website, "this board uses the ATSAMD51P20 Microcontroller like the Adafruit Grand Central M4".
When I try to run the example code out of the box I get the following error:
"Error trying to execute readFirmwareVersion(): Received NACK on transmit of data"
I ran a few different test trying to isolate the issue and the issue originate from the sensor.softReset(); line.
The following code all give the Received NACK on transmit
The followoing code works, without the use the softReset();
The following code works as expected with the softReset();
This solution seems to be the cleanest one. Line 97 in the Adafruit_SCD30.cpp file gave me this idea.
// first I2C xfer after reset can fail, double tapping seems to get by it
Running the command above in the following order gives the following error: "Error trying to execute readFirmwareVersion(): Wrong CRC found"
Why would this be happening? Is it the expected behavior of the library?
Thank you in advance.
P.S. I don't write many bug report, please forgive me if it is very lenghty
The text was updated successfully, but these errors were encountered: