Skip to content

LTR390 Fails to Init with RP2040 #11

Closed
@jknappatdirigible

Description

@jknappatdirigible

I am trying to integrate the LTR390 with a Feather RP2040 but the device is failing to initialize. I am running Circuitpython 7.0.0 (adafruit-circuitpython-adafruit_feather_rp2040-en_US-7.0.0.uf2) and using the libraries from the latest Circuitpython bundle (adafruit-circuitpython-bundle-7.x-mpy-20211127).

The code I am running is as follows:

import board
import adafruit_ltr390

i2c = board.I2C()

ltr = adafruit_ltr390.LTR390(i2c)
print("UV:", ltr.uvs, "\t\tAmbient Light:", ltr.light)
print("UVI:", ltr.uvi, "\t\tLux:", ltr.lux)

And the error I'm receiving is:

code.py output:
Traceback (most recent call last):
  File "code.py", line 6, in <module>
  File "adafruit_ltr390.py", line 286, in __init__
  File "adafruit_ltr390.py", line 292, in initialize
  File "adafruit_ltr390.py", line 315, in _reset
  File "adafruit_register/i2c_bit.py", line 43, in __get__
OSError: [Errno 116] ETIMEDOUT

Code done running.

I have also attached a photo of my setup. You may notice that there are other sensors and boards connected to the Feather RP2040, but I have tried connecting the LTR390 directly to the RP2040 via STEMMA QT Cable. This didn't produce any positive change, however. Other things I have tried include:

  • Changing the cable
  • Using a spare RP2040 that was working with release 1.1.1
  • Wiring the VIN, GND, SCL, and SDA pins on the LTR390 to the appropriate pins on the RP2040
  • Using Circuitpython 7.1.0-beta.0

I have managed to get the code to execute successfully with a Feather M0 RFM95 LoRa Radio, so the problem appears to be specific to the RP2040.

Hope you can make more sense of this than I have so far. Please let me know if I can provide any additional info.

IMG_1356

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions