Nach welchen Vorgaben kann ich ein neues Modul I2C_HMC5883L für die Schnittstelle RPII2C errichten?
Das Modul würde sich zb. für eine Gaszähler eignen.
Schau dir mal die I2C Module an (nicht gerade das vom BMP180 da dort noch die HiPi Option drin ist, die an sich keinen Sinn mehr macht und das Modul nur verkompliziert).
Hier (https://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/FHEM/52_I2C_MMA845X.pm) hast du ein Modul für einen bereits bestehenden 3-Achsen Beschleunigungssensor
Hier (https://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/FHEM/52_I2C_BME280.pm) habe ich ein paar Kommentare zur Funktion an den Subroutinen.
Das wichtigste, was du beachten musst ist, daß die I2C Kommunikation asynchron aufgebaut sein muss. Sprich Register auslesen und die Antwort darauf sind entkoppelt (du kannst nicht einfach einen Registerinhalt anfordern und gleich mit dem Ergebnis weiterarbeiten). Sonder du forderst einen Registerinhalt an. Dieser wird dann irgendwann geliefert und dann machst du weiter.
Hat der HMC5883L eine Triggeroption, oder wie möchtest du ihn am Gaszähler verwenden?
@Burny4600:
Hallo Chris!
Könntest Du bitte dieses Thema eigenständig in das passenden Board (Unterforum) verschieben (Button unterhalb des Themas). Das Board sollte zur Erhaltung der Übersichtlichkeit des Forum laut angepinnten Beitrag bitte nur für funktionsfähige Codeschnipsel genutzt werden. Bitte hier keine Fragethemen starten. Vielen Dank für Deine Unterstützung.
Gruß, Christian
@klausw
Grundsätzlich sollte das Modul so funktionieren wie ein Readkontakt nur das dieses Modul empfindlicher ist als ein Readkontakt.
Das Modul wird wie ein Readkontakt beim Gaszähler unterhalb der letzten Zählerzahl platziert und jeder Impulse löst ein Reading aus.
So wäre es für diesen Fall gedacht.
Für einen weiteren Fall möchte ich das Modul für die Ermagnetfeld Erfassung nutzen und in meine Wetterstation einbinden.
Nur wenn ich mir den Inhalt der Software Module so ansehe, werde ich wohl eine große Aufgabe damit haben das umzusetzten.
Danke für die Infos einstweilen.