NEWS
EZOGateway; Watermonitoring
-
Dokumentation ist rar, dass einzige was ich finden konnte und so aussieht als wäre es das original: https://www.waveshare.com/wiki/RPi_Relay_Board
Dann noch Kommentare die es zum laufen bekommen haben. Die Kommentare sagen auch, dass das Waveshare nur 3 CH ist und das kommentierte 4 CH. Weiß jetzt nicht, ob es eine Synergie zu dem 6 CH gibt.
Ich such noch weiter.
-
@JohnnyBahama sagte:
über den SIMPLE-API Adapter einbinden, ist der Gedankengang richtig?
Die Simple-API des ioBrokers erlaubt den Zugriff auf ioBroker-Datenpunkte über das Netzwerk von außen. Auf die Daten des EZOGateways sollte man per request() (Javascript-Adapter) zugreifen können.
const url = 'http://<IP address>/api/fetch'; // IP-Adresse eintragen ! const idTemp = '0_userdata.0.EZO.Temperatur'; const idPH = '0_userdata.0.EZO.PH-Wert'; const idRedox = '0_userdata.0.EZO.Redox-Potential'; schedule('* * * * *', function() { // jede Minute request(url, function(error, response, result) { let obj = JSON.parse(result); setState(idTemp, obj['1'].Value, true); setState(idPH, obj['2'].Value, true); setState(idRedox, obj['3'].Value, true); }); }); -
@paul53 Ich checke diesen Simple-API nicht. Das EZO läuft, aber ich bringe die Daten nicht in den ioBroker.
Wo habe ich den Denkfehler? In Javascript bekomme ich nur eine Fehlermeldung.@wuschl Hast du denn deine IP mit Port in der ersten Zeile angegeben?
-
@wuschl Hast du denn deine IP mit Port in der ersten Zeile angegeben?
@johnnybahama Hab es hinbekommen, nachdem der Raspy nochmals neu gestartet wurde war alles da.
Jetzt habe ich noch eine Frage wegen dem kalibrieren. Ich habe 2 Flüssigkeiten 4.0 pH und 7.0 pH. Wenn ich die Messzelle in die Flüssigkeit stelle dann sinkt der Wert, aber dieser bleibt nicht bei einem Wert stehen. Ist das richtig? Bei meinem PH803W blieb der Wert irgendwann an einer Position stehen.
Welchen Wert muss ich eintragen in Reference Value?Ist es zwingend nötig 10 pH auch zu kalibrieren?
-
@johnnybahama Hab es hinbekommen, nachdem der Raspy nochmals neu gestartet wurde war alles da.
Jetzt habe ich noch eine Frage wegen dem kalibrieren. Ich habe 2 Flüssigkeiten 4.0 pH und 7.0 pH. Wenn ich die Messzelle in die Flüssigkeit stelle dann sinkt der Wert, aber dieser bleibt nicht bei einem Wert stehen. Ist das richtig? Bei meinem PH803W blieb der Wert irgendwann an einer Position stehen.
Welchen Wert muss ich eintragen in Reference Value?Ist es zwingend nötig 10 pH auch zu kalibrieren?
@wuschl Als Referenz kommt der Wert, der auf der Kalbrierflüssigkeitspackung steht.
Nein 10 musst du nicht kalibrieren. Entweder 4 oder 10. 7 ist muss.
Das Schwanken kannst du im live window prüfen. In der Regel sollte der immer um den Wert von der Kalibrierflüssigkeit herum tanzen . -
EDIT: Problem gelöst. Siehe nächsten Post.
-
Mit ChatGPT wieder zum laufen bekommen:
const axios = require('axios'); // axios importieren const url = 'http://<EZO IP Adress>/api/fetch'; // IP-Adresse eintragen ! const idTemp = 'javascript.0.EzoGateway.Temperatur'; // Ändern, wenn der Datenpunkt woanders liegen soll const idPH = 'javascript.0.EzoGateway.PH-Wert';// Ändern, wenn der Datenpunkt woanders liegen soll const idRedox = 'javascript.0.EzoGateway.Redox-Potenzial';// Ändern, wenn der Datenpunkt woanders liegen soll schedule('*/1 * * * *', async function() { // every minute try { let response = await axios.get(url); let obj = response.data; setState(idTemp, obj['1'].Value, true); setState(idPH, obj['2'].Value, true); setState(idRedox, obj['3'].Value, true); } catch (exMsg) { log(exMsg, 'error'); } }); // Erzeugen der Objekte in ioBroker. Kann nach dem ersten Start des Skriptes gelöscht werden. createState(idTemp, 0, { name: 'Temperatur', desc: 'Temperatur', type: 'number', role: 'value', unit: '°C' }); createState(idPH, 0, { name: 'pH_Wert', desc: 'pH Wert', type: 'number', role: 'value', unit: '' }); createState(idRedox, 0, { name: 'Redox_Potential', desc: 'Redox potential', type: 'number', role: 'value', unit: 'mV' });