TSL2561 verweigert den Dienst im FHEM (I2C Error)

Begonnen von viper2035, 12 März 2017, 15:49:22

Vorheriges Thema - Nächstes Thema

viper2035

Hi,
ich versuche im Moment einen TSL2561 in FHEM zu integrieren. Leider bekomme ich immer die Meldung I2C Error. Wenn ich den Sensor allerdings über ein python Skript auslese, geht alles ohne Probleme, weshalb ich von einem Fehler meinerseits bei der Konfiguration in FHEM ausgehen. Die für den TSL2561 relevanten Zeilen (also denke ich) der Config sehen so aus:
define lichtsensorbus RPII2C 1
define tsl2561 I2C_TSL2561 /dev/i2c-1 0x39
attr tsl2561 IODev lichtsensorbus
attr tsl2561 floatArithmetics 1
attr tsl2561 poll_interval 5
attr tsl2561 useHiPiLib 0

im Logfile steht dann das:
2017.03.12 15:45:20 1: I2C_TSL2561_Define start: 4/tsl2561 I2C_TSL2561 /dev/i2c-1 0x39
2017.03.12 15:45:20 2: error initializing 'tsl2561': tsl2561: Error! I2C device not found: ARRAY(0xda2b88). Please check that these kernelmodules are loaded: i2c_bcm2708, i2c_dev
2017.03.12 15:45:21 1: tsl2561: Can't call method "bus_read" on an undefined value
2017.03.12 15:45:29 1: tsl2561: Can't call method "bus_write" on an undefined value

lsmod ergibt folgende Ausgabe:

Module                  Size  Used by
r8712u                161764  0
brcmfmac              186403  0
brcmutil                5661  1 brcmfmac
cfg80211              428431  1 brcmfmac
rfkill                 16037  2 cfg80211
bcm2835_gpiomem         3040  0
i2c_bcm2708             4834  0
bcm2835_wdt             3225  0
cdc_acm                17370  2
uio_pdrv_genirq         3164  0
uio                     8000  1 uio_pdrv_genirq
i2c_dev                 5859  0
ipv6                  347594  41

Hat jemand eine Idee was da los ist? Wo liegt mein Fehler? Wenn ihr noch irgendwas braucht, geb einfach Bescheid. Vielen Dank

klausw

Lesen bildet ;)

aus der Commandref:
define TSL2561 I2C_TSL2561 [<I2C device>] <I2C address>
<I2C device> mandatory for HiPi, must be omitted if you connect via IODev

Da du über das RPII2C gehst, darf das I2C device nicht im define stehen.

define tsl2561 I2C_TSL2561 0x39

RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280

viper2035

#2
Hi Danke,
ich glaube ich hatte auf Grund der Vielzahl an Möglichkeiten, die Übersicht verloren. Jetzt kommt der Fehler:
2017.03.12 21:29:59 3: lichtsensorbus: HWaccess blockweise von 0x39 lesen, Reg: 0x8a -> syswrite failure: Connection timed out
2017.03.12 21:30:08 3: lichtsensorbus: HWaccess blockweise nach 0x39 schreiben, Reg: 0x80 Inh: 0, laenge: 2| -> syswrite failure: Connection timed out


EDIT: Nach einem Neustart des PI's geht alles. Danke nochmal

klausw

Weshalb die Fehler auftreten verstehe ich zwar nicht, aber Hauptsache es funktioniert jetzt.
Evtl. war der I2C noch von deinen händischen Tests blockiert. Das RPII2C Modul hatte keinen Zugriff auf den Bus.
RasPi B v2 mit FHEM 18B20 über 1Wire, LED PWM Treiber über I2C, Luchtdruck-, Feuchtesensor und ein paar Schalter/LED\'s zum testen
Module: RPI_GPIO, RPII2C, I2C_EEPROM, I2C_MCP23008, I2C_MCP23017, I2C_MCP342x, I2C_PCA9532, I2C_PCF8574, I2C_SHT21, I2C_BME280