Interupt vom MCP23017 mit FHEM einlesen

Begonnen von wowatsch, 04 Januar 2018, 18:07:55

Vorheriges Thema - Nächstes Thema

wowatsch

Hallo,
Ich betreieb FHEM auf einem Raspi. Habe dort ein MCP23017 Chip angeschlossen. Kann auch die Pins schalten die als Ausgänge deklariert sind. Jetzt möchte ich aber die Eingänge über ein Interupt einlesen und dann wenn es nötig ist einen Ausgang schalten.
Wie gehe ich da besser vor?
Ansich kann ich ja den input Wert einlesen. Aber der Wert aktualisiert sich nicht bei Zeiten.
Danke schon mal.

klausw

Interrupt out vom MCP muss an einen Gpio des Pi angeschlossen werden.
Hast du schon oben rechts in der Forensuche "MCP23017 interrupt" eingegeben?
Darüber solltest du die Lösung finden.
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

wowatsch

So, bei mir läuft es jetzt auch mit dem Interupt.
Danke für die Hilfe.
Aber das ist ja eine etwas komische Lösung.
Gibt es nicht die Möglichkeit beim Senden von I2C alle Daten aktualisiert werden?
Ich meine dadurch, dass eine Aktion ausgelöst wird über I2C kommuniziert. Und diese Kommunikation sollte dann dafür sorgen.

klausw

Zitat von: wowatsch am 05 Januar 2018, 12:55:11
Aber das ist ja eine etwas komische Lösung.
Gibt es nicht die Möglichkeit beim Senden von I2C alle Daten aktualisiert werden?
Ich meine dadurch, dass eine Aktion ausgelöst wird über I2C kommuniziert. Und diese Kommunikation sollte dann dafür sorgen.
Komisch ist da nix, nicht mal etwas. Der Bus macht das wofür er entwickelt wurde. Und Interrupts gehören nicht dazu  8)
Beim I2C gibt es ein Master Device. Dieses hat die komplette Kontrolle über den Bus. Nur der Master kann Daten von sich aus Senden oder anfordern. er gibt auch den Takt vor.
Die Sub Devices, in deinem Fall der MCP23017 kann von sich aus nicht auf den I2C schreiben.
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