Code Monkey home page Code Monkey logo

100prznt / ezogateway Goto Github PK

View Code? Open in Web Editor NEW
19.0 19.0 7.0 30.13 MB

Open source UWP App, to brings the Atlas Scientific EZO™ devices in the Internet of Things. Per REST API you can fetch live measdata and calibrate connected sensors. Ideal for monitoring water quality in the pool.

License: MIT License

C# 75.39% HTML 23.78% CSS 0.33% JavaScript 0.49%
atlasscientific ezo iobroker iot pool restapi sensor siemens-logo wateranalysis windows-iot

ezogateway's People

Contributors

100prznt avatar rcartsolutions avatar rmmlr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ezogateway's Issues

API security

Extend API by a user token, respectively "whitelist".

Kalibrierungswerte stimmen nicht

Hallo, ich benötige Hilfe vom Profi.

Soeben habe ich die REDOX Sonde kalibriert mit 220mv. Anschließend habe ich die Sonde wieder in die Messzelle gesteckt und bekomme jetzt den Wert -69 angezeigt.

Dann habe ich die PH Sonde kalibriert, aber nur mit 2 Flüssigkeiten PH4 und PH 6.86. PH 10 habe ich nicht da, aber sind 3 Werte zwingend notwendig? Auf jeden Fall zeigt mir nun die GUI, nachdem ich die Sonde in die Messzelle gesteckt habe 12.08 an :D

Firmware:

0.4.44.0


Was mache ich falsch?

Danke

Gruß

Logger

Ansich könnte die App ja jetzt so laufen. Doof nur, dass jeden Tag ein mehrere MB großes Logfile geschrieben wird und so der speicher irgendwann knapp werden könnte. Wie wäre es, wenn man das Logfile zyklisch löscht. also z.B. aller 3h neues Logfile und das alte löschen. So hätte man kein Speicherproblem, aber im Zweifel immer ein Logfile. Nur bei der Lebensdauer der SD-Karte müsste man schauen, wie sich das ständig schreiben auswirkt. Oder ... Das Logfile (als Absturzverhinderer) wird nur in den RAM geschrieben ohne die SD-Karte zu nutzen (geht das überhaupt). Benötigt man das Logging zur Fehlersuche, könnte man in den Settings ja bei Bedarf nen Haken setzen, der das Logfile dann statt in den RAM auf die SD-Karte schreibt.

Rework sensor api

Revision of the hierarchy for access to measurement data, calibration and sensor infos.

Confirm settings saved

wenn man Settings speichert, dann reicht zwar der Klick auf den Button. Es fehlt jedoch eine Art Bestätigung ala "Speichern erfolgreich". Eine Meldung kurz eingeblendet und man weiß, dass alles i.O. ist.

Web Interface

Web interface with navbar for specific pages, e.g. "calib", "live", "config", etc.

Installation nicht möglich

[...] habe mir das Release 0.4.15 geladen und versucht zu installieren. Und da hänge ich gerade und komme nicht weiter. Ich bekomme die Meldung:
" this package depends on a framework that could not be found. Provide the Microsoft.NET.Native.Framework.1.7 with neutral or ARM processor architecture and minimum version 1.7.27413.0"
Ich habe Probleme die Version 1.7 für ARM zu finden. Die meisten haben eine x64 structure. Kannst du mir da aushelfen?

HTTP webserver

Local webserver to handle API calls and provide the web interface.

Data acquisition

Acquisition of pH value, redox potential and temperature via EZO device.

HTTP server

Cut and process GET parameters from urls.

Live Data not available

In the Websurface, there are no datas showing in the Live page. Ph data are running and can be proffed by using the continuos reading window.

Alle Module inaktiv

Hallo, zuerst einmal ein super Projekt weshalb ich mir auch alle Komponenten gekauft habe. Bei der Einrichtung habe ich mich genau nach der Anleitung gehalten, aber in der sensors.html sind alle 3 Module inaktiv. Auf dem PI leuchten alle grün. Eigentl. sollten die doch blau leuchten oder? Bei dem I2C drücke ich doch auf den Button und sobald blau ist lasse ich ihn los?

Danke

Gruß

Nachtrag: Lag am Kommunikationsmodus.
EZO™ pH Circuit und EZO™ O.R.P. Circuit werden nun erkannt, aber nicht der EZO™ RTD Circuit. Mit dem I2C Dongle bekomme ich auch keine blaue LED angezeigt. Der wechselt von grün in ein gemischtes blau grün und dann wieder auf grün. Tip?

Appearance config

Add settings to customize the appearance of the provided user interfaces (web and build-in).

Multilanguage

Add language files to individualize all texts in the app.

Probleme bei Installation

Hallo, beim installieren des appx bekomme ich diese Fehlermeldung.
"Local Storage
Network
Run from Network
Install Certificate
Installation Failed
Failure reason: Windows cannot install package 30191eb7-5298-4d1e-8ab0-d485ada8fd55_0.0.0.0_arm__gksy81f7ntd9y because this package depends on a framework that could not be found. Provide the framework "Microsoft.NET.Native.Framework.1.7" published by "CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US", with neutral or ARM processor architecture and minimum version 1.7.27413.0, along with this package to install. The frameworks with name "Microsoft.NET.Native.Framework.1.7" currently installed are: {} Failure text: Package failed updates, dependency or conflict validation. (0x80073cf3)"

Evaluate Formfactor

Compare and evaluate possible arrangements.

Requirements:

  • DIN rail and wall mounting case
  • BNC connector for pH and redox probe
  • Terminals for temperature sensors
  • Terminals and jack for VDC

Build-In GUI Scaling

Hatte übrigens gesehen, dass die Anzeige auf den Monitor jetzt noch etwas optimiert wurde. Sieht jetzt echt gut aus. Nur größen (in der Höhe) darf es nicht werden, da es auf den kleinen Monitor sonst nicht komplett gezeigt werden würde. So wie es jetzt ist, passte es genau drauf.

Direct UI

Implement a user interface to be able to read measured values on a connected display.

Script funktioniert nach iobroker Script Adapter Update nicht mehr

Hallo 100prznt,

nach dem Update des Skript Adapters im iobroker funktioniert das Skript leider nicht mehr. Ich denke es hängt mit dem nicht mehr unterstützten request Befehl zusammen. Da ich davon keine Ahnung habe, meine bitte, ob du das bitte umschreiben kannst, das es wieder funktioniert?

Das wäre nett, und vielleicht hilft es dem einen oder anderen auch!

Vielen Dank!

Hier nochmal das nicht funktionierende Skript:

`const url = 'http://192.168.178.59/api/fetch';
const idTemp = '0_userdata.0.EzoGateway.Temperatur';
const idPH = '0_userdata.0.EzoGateway.pH_Wert';
const idRedox = '0_userdata.0.EzoGateway.Redox_Potential';

schedule('* * * * *', function() { //every 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);
});
});`

Gruß

Get calibration date

Könnte man in das ausgegebene Ergbniss des Fetch Befehls auch bei jedem Sensor das letzte Kalibrierungsdatum mit einfügen? Man könnte dann damit nämlich eine Art Kalibrierungsreminder in der weiteren Verarbeitung basteln, der einen nach X Tagen (Tage einstellbar im Setup) erinnert, die Sonden neu zu kalibrieren.

Stop cyclic updater at calibration

Sobald man einen der Kalibrierungspunkte anklickt, wird der automatische updater gestopt. Geht man danach wieder auf einen anderen Punkt, startet er wieder (natürlich nur, wenn er es laut Konfig auch muss).

ORP Circuits Inactive

ORP and RTD Board are shown as inactive.

Log:
02.07.2022 13:52:30 ;Info ;LowLevel ;Start initialization of the Atlas Scientific EZO ORP circuit
02.07.2022 13:52:30 ;Info ;LowLevel ;Atlas Scientific EZO ORP circuit successfully initialized, FW: 2.11
02.07.2022 13:52:30 ;Info ;HttpServer ;Processing of a new HTTP request is started.
02.07.2022 13:52:30 ;Info ;HttpServer ;Requested URL: http://192.168.178.61/api/fetch
02.07.2022 13:52:30 ;Warning ;RestApi ;Request latest measdata -> No measurement data acquired.
02.07.2022 13:52:31 ;Error ;LowLevel ;Error during initialization of the Atlas Scientific EZO ORP Circuit, see details below
02.07.2022 13:52:31 ;Error ;LowLevel ;Exception_WasThrown, Rca.EzoDeviceLib.EzoResponseException. For more information, visit http://go.microsoft.com/fwlink/?LinkId=623485
02.07.2022 13:52:31 ;Info ;LowLevel ;Start initialization of the Atlas Scientific EZO RTD circuit
02.07.2022 13:52:31 ;Error ;LowLevel ;Error during initialization of the Atlas Scientific EZO RTD Circuit, see details below
02.07.2022 13:52:31 ;Error ;LowLevel ;The system cannot find the file specified.

Solved:
deactivate the circuits, reboot, activate, reboot. Now is working again. Somehow saving alone the settings didn´t worked out.

1-Wire page missing

The forwarding to the 1 wire page isn´t working and gives a 404 Not found message.

Show Version

Evtl. könnte man in der Weboberfläche noch irgendwo die Versionsnummer integrieren, so dass man immer sehen kann, welche Version gerade installiert ist (nur so als Idee).

HTTP listener no more responding

After about 500 processed HTTP requests the HTTP server (StreamSocketListener) does not respond anymore. But the app is still running (see log).

Cyclic Updater

Was mir noch aufgefallen ist, ist, dass die interne periodische Datenabfrage jetzt in kürzeren Intervallen läuft. Von vormals 30s jetzt wohl so 5s?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.