Modul zur Nutzung der Raspberry Pi GPIO

…nein, leider hilft es uns so wie dort beantwortet selbst nicht weiter.
Aber mir schwirrt eine andere Idee im Kopf herum: Warum nicht die lib nehmen und dort die Berechnung durchführen lassen?
Vielleicht kann Bernd das mal im FHEM-Forum diskutieren?
Vielleicht weiß ja auch einer von denen die hier mitlesen, wie so etwas umgesetzt werden könnte?
Wenn ich wüßte, wie ich die lib ansprechen muss damit die Berechnung durchgeführt wird wären wir schon ein ganzes Stück weiter…

Joachim

Hallo Joachim,

im FHEM Forum wird wohl hauptsächlich die Einbindung der BSEC-Lib für ESP8266 genutzt. Ich habe sie mir mal herunter geladen und ein wenig die Doku angeschaut. Libs für Raspberry 32/64 bit sind im BSEC-Download auch mit dabei. Auf den ersten Blick schaut das aber nach viel Einarbeitungszeit aus. Die API-Doku ist umfangreich (habe ich als PDF angehangen).

Ein Beispiel mit der Bosch-Lib wurde unter dem nachstehenden Link beschrieben.
https://wolfgangklenk.wordpress.com/2017/11/05/indoor-air-quality-iaq-measurement-with-bosch-bme680-and-stm32f103c8t6/

Es scheint langsam vorwärts zu gehen.

Guss
Bernd

BST-BME680-AN008-45x.zip (649 KB)

Hallo Joachim,
vielen Dank für die schnelle Einbindung des BMP180, jetzt passt es auch:)

Ich bin überrascht, dass es nicht möglich ist ADC Werte vom Raspberrypi zu bekommen. Kann mir jemand sagen warum das so ist? Zwei PCF8591 sind aber schon auf dem Weg, teuer sind die ja nun wirklich nicht :smiley: :slight_smile:

…da sind wir mit Sicherheit die falschen Ansprechpartner - die Frage sollte dann eher an die Entwickler gehen…:rolleyes:

Dennoch gibt es diverse andere Möglichkeiten, eine davon hast Du ja schon selbst gefunden.:wink:

Joachim

Hier sind einige Beispiele Raspberry PI mit Sensoren am I2C Bus

Vielen Dank für die Antwort. Dann frage ich da bei Gelegenheit mal an oder recherchiere das, aber so wichtig ist jetzt auch nicht :slight_smile:

Was mich aktuell umtreibt ist das Nextion Display. Mit der Suchfunktion habe ich schon ein wenig diesen doch wirklich riesigen Thread beackert und gesehen, dass es viel diskutiert wurde…konnte trotzdem nichts finden.

Bei mir wird in der Splitter Instanz nur der Shell Zugriff Grün angezeigt. Alles Andere ist Rot, auch die Serielle Schnittstelle. Komischerweise steht aber bei Serieller Schnittstelle „aktiviert“(trotz roter Einfärbung) und bei Shell Zugriff „deaktiviert“

Was muss ich machen um mit dem Nextion über die TX, RX Pins 14 und 15 bei 9600 Baud kommunizieren zu können? Habe ein Nextion Enhanced 7" mit dem Demo Sketch laufen.

Hallo Coding Lizard,

falls Du die Anbindung über mein Modul meinst: Das wird aktuell bei Dir leider nicht funktionieren.
Ich habe es bereits auf eine zukünftige Version von PIGPIO umgestellt, in der Erwartungshaltung das diese bald „public“ wird.
Wenn Du es trotzdem probieren möchtest, dann musst Du Dir ebenfalls diese zukünftige PIGPIO-Version installieren, abwarten oder mal hier im Forum bei den Beiträgen von Helmut schauen…

Joachim

Ok das erklärt selbstverständlich warum es nicht klappt. Danke für das Feedback! Wo kann ich diese „zukünftige“ Version denn herbekommen und welche Versionsnummer ist das? Bei mir gibt „pigpiod -v“ 64 aus.

Mit den Beiträgen von Helmut ist dieser Thread gemeint? Das ist dann eine Lösung für das Nextion Display ohne dein Modul? :slight_smile:

Aktuell scheint mir am einfachsten, diese Beta zu installieren. Sollte das nicht klappen würde ich mir die Methode von Helmut anschauen und wenn sich die auch als schwierig erweißt wäre der letzte Schritt für mich, dass per Arduino mit Netzwerkanschluss selbst umzusetzen, der dann mit IPS spricht und die Serielle Schnittstelle zum Display abbildet. Seriell auf Arduino ist ja absolut kein Problem.

Hallo Coding Lizard,

das Thema wurde von mir hier angestossen.
Ein Usr namens Guy hatte offenbar die gleiche Herausforderung und hat hier die Version 53000 entwickelt, leider hat Joan sie immer noch nicht in die stable übernommen…:frowning:

Und so soll es mit dem Update funktionieren:

git fetch origin
git checkout serdaEvent
make
sudo make install
sudo pigpiod

Das Problem war, dass man keine Information bekam, wenn Daten aus dem seriellen Gerät in den Buffer von PIGPIO gesendet wurden. Und ewig pollen klingt jetzt nicht so richtig gut.
Guy hat eine Art Noticication programmiert. Darüber hinaus kannst Du die Pins für RX und Tx jetzt frei wählen (BitBanging), Wenn Deine serielle Schnittstelle aktiviert ist, solltest Du andere Pin für das Nextion Display nehmen.

Wenn Du einen Github-Account Dein eigen nennst, könntest Du ja auch gerne noch mal nachfragen wann es in die stable kommt…:smiley:

Ansonsten probiere mal wie es klappt, ich freue mich über Rückmeldungen!

Joachim

Ich bin mir sehr unsicher, ob die Ohm Werte, die du abfragst/lieferst witklich sinnvoll sind. Bei mir pendelt der Wert zwischen 30 und 50 kOhm in 5 Minuten obwohl der Raum nicht benutzt wird und die anderen Sensoren sehr gute Luftqualität anzeigen.

Mit dem Ansatz von hier bekomme ich einen Prozentwert, der eine Baseline über die letzten 5 Minuten berücksichtigt.

Aber bei den massiven Sprüngen führt das auch nur zu Werten zwischen 75 und 93 % innerhalb weniger Minuten.

Nach dem Speichern der Instanz kommt erstmal kompletter Blödsinn, viel zu niedrig, auch für Feuchte und die anderen Werte.

Auch die Abfrage alle 10 Sekunden scheint nicht zu funktionieren, Werte bekomme ich scheinbar nur alle 18 bis über 30 Sekunden.

Update:
Mit dem Intervall von einer Sekunde bekomme ich alle 9-11 Sekunden einen Wert, aber die Sprünge bleiben sehr extrem und manchmal kommen die Werte erst nach 30 Sekunden und mehr.

Hallo Ralf,

bei mir ist es etwas anders. Nach dem Neustart bekomme ich für die Luftfeuchtigkeit in der Regel 100%, bei dem Widerstandswert etwas extrem überhöhtes.
Mein Sensor hat bei etwas um die 50 kOhm angefangen, lag beim letzten schauen bei knapp 100 kOhm, extreme Ausschläge im Graphen resultieren aus den Neustarts.
Ich messe im Minutentakt.
Der Ansatz den Du da verlinkt hast, wäre zunächst einmal besser als nichts, aber ist wahrscheinlich nur eine grobe Annährung…

Der Original-Code benötigt ja offenbar auch erst einmal ein paar Testläufe, bevor er ein Ergebnis rausgibt.
Ich war heute auf der Bosch-BSEC-Seite, da ist der Zugriff erläutert.
Es werden alle aktuellen Werte mit Zeitstempel übergeben, die lib baut dann wohl eine kleine DB auf…
Bleibt also spannend…[emoji6]

Joachim

…hier noch mal der Link:
Software Downloads
Dort ist einiges erklärt, wenn es mir gelingen würde, diese lib aus meinem Modul anzusprechen (welche Werte erforderlich sind ist m.E. dort ersichtlich, dann können wir uns ggf. diesen ganzen Aufwand sparen diese Funktion nachzubilden.
Wäre toll, wenn einer der PHP-Profis mal einen Blick darauf werfen könnte ob diesen irgendwie möglich ist…[emoji6]

Joachim

Da ich endlich mal dazu gekommen bin die RGBW Module in mein IIPS-View mit zu integrieren.
Habe ich bestgestellt, dass diese bei dem Weiß sich nicht aktive Steuern lassen (z.B. über ein Schieberegler) und wenn ich den Strip über den Werte State ausschalte und wieder einschalte bleibt weiß aus.

und ich bekomme seit neusten folgenden Fehler in ips bei den Button On, Off und Toggle:


Fatal error:  Uncaught exception 'Exception' with message 'Instance does not implement this function' in C:\IP-Symcon\scripts\__generated.inc.php:3626
Stack trace:
#0 -(7): I2GRGB_Toggle_Status(40394)
#1 {main}
  thrown in C:\IP-Symcon\scripts\__generated.inc.php on line 3626

Übrigens danke für dieses Tolle Modul :smiley:

Hallo Acer90,

habe einen Fehler gefunden. Bitte update und nochmal probieren.

Joachim

Ok Ein- und Ausschalten geht wieder, aber bei einer Wertänderung der Variable Intensity Weiß über Ips-View passiert nichts, bei Standardaktion steht (Keine(e)). Denke mal daran liegt es.

Hallo Acer90,

Deine Fehlerbeschreibung macht es mir etwas schwierig…:wink:

Der Fehler vorher war im Konfigurationsformular. Schaue doch bitte mal bei den Meldungen, Im Debug des Splitters oder der RGBW-Instanz, was da evtl. an Fehlermeldungen kommt. Eine genauere Beschreibung was Du versuchst wäre evtl auch hilfreich…im Moment ist das eher Glaskugel…:rolleyes:

Joachim

Hallo Joachim und Ralf,

nachdem ich die von Bosch bereit gestellte BME680-API das erste mal gesehen habe, war mir vor Wochen sofort klar, dass sie nur die Werte des Vorgängers BME280 (Temp, Druck, Feuchte) einfach zugänglich machen würden (aber selbst das bezweifle ich jetzt mit meinen Langzeitmessungen). Luftgüte nur über einen Widerstandswert bereit zu stellen, von dem die Umrechnung in CO2/ppm geheim gehalten wird und nur über eine vorkompilierte LIB bereit gestellt wird, ist für mich nicht tragbar. Bosch will sich wohl damit vor den Chinesischen Kopien schützen.

BSEC habe ich mir auch genauer angeschaut. Es gibt auch LIBs für RASp 32/64bit als Object Dateien. Obwohl ich dachte mich mit GCC und makefiles ein wenig auszukennen und lauffähigen Code compilieren zu können, war es mir bisher nicht möglich auf dem RASP etwas brauchbares zu erzeugen. Beim FHEM scheinen sie das mit der ESP8266-Lib geschafft zu haben, ich konnte es aber noch nicht nachvollziehen.

Für mich macht es langsam keinen Sinn mehr an dem BME680 weiter zu arbeiten und lieber über die Kombination von BEM280 und iAQ-Core Nachfolger (wohl auch unter 20 €) nachzudenken. Macht zwar mehr Aufwand im Sensoraufbau (zwei HW-Teile und zwei I2C-Teile logisch anzusprechen), aber für Bosch sind wir wohl keine Zielgruppe. Die möchten Masse mit Smartphones oder in Carautomation machen.

Nun gut, muss wohl akzeptiert werden, dass Sensoren über definierte Standards (z.B. I2C oder SPI) ausgelesen werden können, die Bereitstellung oder Umrechnung der eigentlichen Daten über vorkompilierte LIBs der Hersteller erfolgen muss.

Die Hoffnung stirbt zuletzt, eventuell erkennt Bosch, dass so ein Vorgehen kein Kopierschutz sein kann und sie irgendwann einen GCC compiliebaren C-code abliefern oder noch besser einen PHP-Code/Interface.

Gruss
Bernd

Also über das Formular lässt sich jetzt Weiß anstandslos steuern, wenn ich aber die Wert der Variable Intensity Weiß ändere also, also ohne ein Skript auszuführen(nur über IPS-View). Dann passiert nichts.
Ich gehe also davon aus dass die Funktion richtig funktioniert, aber halt keine Standartaktion für die Variable Intensity Weiß hinterlegt ist. Weil meines Wissens sonnst nichts passiert. Für die Farben Rot, Grün und Blau sind Standartaktionen hinterlegt.

Da ich derzeit nicht zu hause bin, hier kurz ein Bsp.
questionImage-1-07021821.jpg

https://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BME680-DS001-00.pdf
Kapitel 3.3 und 3.4 erklären detailliert, mit zu setzenden Parametern und Formeln die Vorgehensweise.

Unter Getting Started with BME680 Breakout - Pimoroni Kapitel „Interpreting the gas resistance readings“ wird die Vorgehensweise auch erklärt und in bme680/indoor-air-quality.py umgesetzt.

Ich denke, wir setzen die Parameter nicht korrekt, lesen zu selten ab und ziehen die falschen Schlüsse.

Ich versuche spätestens am WE mal den Python Code.