Autor Thema: Wie kann ich ein neues Modul I2C_HMC5883L für Schnittstelle RPII2C einrichten  (Gelesen 1751 mal)

Offline Burny4600

  • Hero Member
  • *****
  • Beiträge: 1924
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.
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT

Offline klausw

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1965
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 hast du ein Modul für einen bereits bestehenden 3-Achsen Beschleunigungssensor

Hier 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?
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
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline krikan

  • Developer
  • Hero Member
  • ****
  • Beiträge: 7047
@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
Zustimmung Zustimmung x 3 Liste anzeigen

Offline Burny4600

  • Hero Member
  • *****
  • Beiträge: 1924
@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.
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT