Navigation

    egnite Forum
    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    1. Home
    2. Marco T
    3. Best
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    Best posts made by Marco T

    • Wunschliste Palamoa

      Um Palamoa zum Laufen zu bekommen musste ich etwas kämpfen. Wie sich zeigte, lag das Problem aber bei unseren DNS-Servern... Nachdem dies gelöst war, wurden die Daten wunderbar übertragen.

      Das Einbinden der Querx-Sensoren geht ja herrlich einfach!

      Wunschliste

      • Sharing URL (damit ich jemandem erlauben kann, die daten zu sehen ohne Benutzername und PW zu teilen)
      • Möglichkeit Bilder hochzuladen und nicht per URL nur zu verlinken
      • Möglichkeit, neben der primären auch eine sekundäre Achse zu definieren im Graph
      • Möglichkeit, X- und Y- Achse getrennt ein- und auszublenden
      • Möglichkeit, die gespeicherten Daten zur Weiterverarbeitung herunterladen zu können (erledigt)
      • Möglichkeit zur Anzeige des Taupunktes (kann manuell implementiert werden)
      posted in Generelle Diskussion
      Marco T
    • RE: Wunschliste Palamoa

      @Daniel Achja: Palamoa hat offenbar Probleme, wenn sich im "device_name" ein Leerzeichen befindet (oder es liegt am Punkt, "rel. Luftfeuchtigkeit" verursachte den Fehler) . Das automatische Einbinden mit palamoa.tpl klappt, das manuelle einbinden (per doppelklich in die json-daten) schlägt jedoch fehl.

      posted in Generelle Diskussion
      Marco T
    • RE: Netzwerkdiagnose auf dem Gerät

      @Daniel Cool! Sehr schön und verständlich gemacht.
      Ich hoffe, ihr habt "meine" Taupunkt-Formel überprüft und vielleicht auch an eure intern genutzte Formel angepasst. Das habe ich selber nämlich nicht gemacht und einfach angenommen, dass sie stimmt als ich sinnvoll erscheinende Ergebnisse erhielt.

      Auf alle Fälle: danke für die ganze Arbeit, die ihr mit den Tutorials leistet. Ein dickes "thumbs up" 👍

      posted in Generelle Diskussion
      Marco T
    • (Gelöst) Maximale Anzahl Datenpunkte Palamoa Graph

      Guten Tag

      Ich kriege es nicht hin, auf Palamoa einen Graphen für eine ganze Woche zu erstellen.
      Wie viele Punkte kann der Graph maximal darstellen? Hängt das auch mit dem Übemittlungs-Intervall (bei mir 5min) oder der Breite des Graphen zusammen?

      posted in Generelle Diskussion
      Marco T
    • RE: (Gelöst) Maximale Anzahl Datenpunkte Palamoa Graph

      Oh, das Update ist offenabr erfolgt! Vielen Dank.
      Jetzt konnte ich schön auf "1 Woche" umstellen und bekomme den Graph wunderbar mit Datumsangaben angezeigt!

      Ist es eigentlich Absicht, dass die Palamoa-App das Layout ignoriert und die "Stacked" Version anzeigt?

      Achja, noch ein Hinweis: Wenn ein Wert immer als "0" übertragen wird, wird er in der numerischen Anzeige auf Palamoa manchmal mit "-" angezeigt.

      posted in Generelle Diskussion
      Marco T
    • (Gefixt) Bugreport: Palamoa: Versatz zwischen Mauszeiger und Datenanzeige

      Guten Morgen

      Palamoa hat dise wunderbare Funktion, bei der ich mit der Maus über einen Graphen fahren kann wodurch automatisch die Messdaten zum jeweiligen Zeitpunkt in einem Fesnster angezeigt werden.

      Je nach Anzeigemodus des Dashboard auf der Website gibt es allerdings einen mehr oder weniger grossen Versatz zwischen der Position des Mauszeigers und den angezeigten Daten.

      Diese 5 Modi sind verfügbar:
      2021-03-11_11h34_21.png
      Auf meinem System (Windows 10, Firefox 86.0 (64-Bit)) stimmt die Anzeige im 1., 4. und 5. Modus. In den Modi, in welchen die Darstellung an die Höhe bzw. die Breite angepasst wird, gibt es einen Versatz dessen Grösse sich mit der Position ändert (am linken Rand ist der Versatz grösser als am rechten Rand).
      2021-03-11_11h43_15.png

      posted in Generelle Diskussion
      Marco T
    • RE: Wunschliste Palamoa

      @Daniel said in Wunschliste Palamoa:

      Eine Möglichkeit zum Daten-Export ist meiner Meinung nach auch sehr sinnvoll und übrigens schon lange geplant.

      Cool. Habe vor einer Weile gesehen, dass dies umgesetzt wurde und es funktioniert wunderbar. Danke!
      Habe die Liste entsprechend angepasst.

      lg, Marco

      posted in Generelle Diskussion
      Marco T
    • RE: (Gelöst) Bugreport: Palamoa Website zeigt unter "Aktive Sitzungen" Geräte nicht an

      Hallo Daniel

      @Daniel said in Bugreport: Palamoa Website zeigt unter "Aktive Sitzungen" Geräte nicht an:

      dieses Feature wurde vor ca. eine Woche implementiert und funktioniert nur in Kombination mit der aktuellen Version (1.2) der Palamoa Android App. Außerdem ist nach diesem Update ein einmaliges Aus- und wieder Einloggen erforderlich, damit die Session gespeichert wird.

      Korrekt. Nach dem Aus- und wieder Einloggen wird die Session angezeigt. 👍

      posted in Generelle Diskussion
      Marco T
    • RE: (Gefixt) Bugreport: Palamoa: Versatz zwischen Mauszeiger und Datenanzeige

      Wow, ihr seid ja fix! Danke!

      posted in Generelle Diskussion
      Marco T
    • Fixed: Minor: Ausrichtung der Darstellung Webinterface Querx

      Guten Morgen

      Im Webinterface werden Werte mit gesetztem Alarm horizontal anders ausgerichtet als die anderen Werte. "Erweiterte Auflösung" scheint keinen Einfluss auf die Ausrichtung zu haben.

      2021-05-18_06h59_08.png 2021-05-18_06h58_15.png

      Dies ist einfach eine Kleinigkeit, die mir heute aufgefallen ist. Ob auch andere fw-versionen betroffen sind, weiss ich nicht.

      posted in Generelle Diskussion
      Marco T
    • RE: Fixed: Minor: Ausrichtung der Darstellung Webinterface Querx

      Vielen Dank für die schnelle Antwort!
      Wenn wir schon dabei sind, liefere ich gleich noch eine weitere kleine Unstimmigkeit:
      Sowohl mit der Sprache auf Englisch als auch auf Deutsch ist in die Hilfe zum Luftdrucksensor ein Teil der Beschreibung des Luftfeuchte-Sensors gerutscht.
      2021-05-20_06h44_26.png

      Grüsse, Marco

      posted in Generelle Diskussion
      Marco T
    • RE: Design Querx Webinterface

      @Daniel said in Design Querx Webinterface:

      Ich weiss nicht, ob es zum Anwendungsfall passt, aber es gäbe die Möglichkeit über so etwas wie Tampermonkey ein Userscript im Browser zu installieren, was das Favicon ändert.
      Siehe https://stackoverflow.com/questions/16745773/embed-favicon-using-a-userscript
      Per Userscript ließe sich prinzipiell auch das CSS überschreiben. Geht es um ein bestimmtes Interface-Element?

      Danke @Daniel
      Die Frage wegen des Favicon war vor allem, um in den Schnellstart-Icons im Firefox nicht nur das hässliche default-icon aus dem Anfangsbuchstaben des Seitennamens zu sehen oder aber dieses auf jedem Rechner von Hand setzen zu müssen.

      Ich kann aber die Begründung des Entwicklungsaufwandes absolut nachvollziehen (auch in Anbetracht der wohl recht beschränkten Resourcen auf dem Sensor selbst).

      Ich kann gut damit leben. Es wäre aber schade, wenn die Möglichkeit bestünde, aber ich sie nicht nutze weil ich nichts davon weiss 🙂

      posted in Generelle Diskussion
      Marco T
    • Python / Datenbank / Querx Beispiel

      Da der Querx nur begrenzten Speicher hat behält der nur eine gewisse Anzahl an Messungen. Ältere Messungen werden automatisch gelöscht. Mit einem Aufzeichnungsintervall von 5min und aktivierter Kompression komme ich so auf respektable rund 300 Tage.

      Ich will die Daten aber länger speichern und für den schnellen Zugriff in einer SQL-Datenban ablegen (MariaDB unter WSL in meinem Fall).

      Ich habe 1 Querx THP und daher eine DB Namens "phys_data" mit einer Tabelle namens "ClimateData" angelegt mit folgenden Feldern:

      Sensor [TINYTEXT], Time {DATETIME], TemperatureLow [FLOAT], TemperatureAvg [FLOAT], TemperatureHigh [FLOAT], HumidityLow [FLOAT], HumidityAvg [FLOAT], HumidityHigh [FLOAT], PressureLow [FLOAT], PressureAvg [FLOAT], PressureHigh [FLOAT]
      

      Mein Script ist sehr einfach gestrickt und basiert auf der Annahme, dass alle Querxe dieselbe Anzahl Datenfelder haben wie die DB. Es funktioniert auch nur, solange nur ein Querx genutzt wird.

      Das Script sucht in der DB nach dem neuesten Eintrag (egal von welchem Querx). Anschliessend lädt es per Web-API die Daten ab diesem Zeitpunkt in 5min Schritten vom Qerx im XML-Format herunter. Der erste Eintrag wird ignoriert, da er ja mit dem letzten Eintrag in der DB übereinstimmt.

      Diese XML-Daten werden auf Naive Art und Weise geparst und in SQL-Statements verpackt, die dann als Queries an die DB geschickt werden.

      Damit kann ich einfach ab und zu (z.B. einmal pro Tag) die neuesten Daten vom Querx in die DB laden.

      #!/usr/bin/python3
      
      # by Marco Tedaldi, 2021
      # published as public domain except for the parts that are under copyright by someone else (ie the parts copied from egnite example code)
      
      # transfer the data from the querx sesor into the mariadb / mysql-DB
      # procedure:
      # - get the time of the latest data in the database as a Unix Timestamp
      # - forge a ruequest string for the querx http interface and get the data in xml format
      # - convert the data from xml to SQL and store it in the SQL DB
      
      
      import sys
      from MySQLdb import _mysql as mysql  # we want to access a mysql / mariadb
      import http.client # to get the data from the querx
      import xml.etree.ElementTree as ET # to parse the XML from the querx
      from datetime import datetime # to conver the timestamps to datetime for the DB
      
      # access information for the Querx (copied from https://www.egnite.de/support/tutorials/tutorial-zugriff-auf-querx-messdaten-mit-python/)
      querx_address = "192.88.99.2" #name or address of the Querx Sensor
      querx_http_port = 80
      xml_url = "/tpl/document.cgi?tpl/j/datalogger.tpl&format=xml"
      
      # databse access information
      db_address = "localhost"
      db_user = "username"
      db_pass = "VerySecurePW"
      db_name = "phys_data"
      db_table = "ClimateData"
      
      # function to get the timestamp of the last entry
      def get_lastTS(db):
        db.query("""SELECT UNIX_TIMESTAMP(MAX(Time)) FROM ClimateData""")
        result = db.store_result().fetch_row()
        ts = int(result[0][0])
        return(ts)
      
      # copied from https://www.egnite.de/support/tutorials/tutorial-zugriff-auf-querx-messdaten-mit-python/
      # adapted to get historical values
      def get_xml(address, port, url):
        try:
          conn = http.client.HTTPConnection(address, port) # Python 3.x: httplib => http.client
          conn.request("GET", url)
          res = conn.getresponse()
          xml = res.read()
          return(xml)
        except Exception as e:
           print ("Error: " + str(e))
           sys.exit(1)
      
      # main program
      if __name__ == "__main__":
        db = mysql.connect( db_address, db_user, db_pass, db_name)
        lastdata = get_lastTS(db)
        print("Timestamp = " + str(lastdata))
        xml_url = xml_url + "&start=" + str(lastdata) + "&step=300"
        print("xml_url = " + xml_url)
        climatedata = get_xml(querx_address, querx_http_port, xml_url)
        root = ET.fromstring(climatedata)
        sensorname = root.findtext('hostname')
        data = root.find('data')
        for rnr, record in enumerate(data):
          if rnr != 0:
            time = datetime.fromtimestamp(int(record.get('timestamp'))).strftime('%Y-%m-%d %H:%M:%S')
            query = 'INSERT INTO ' + str(db_table) + ' VALUES (\'' + str(sensorname) + '\', \'' + time
            for idx, entry in enumerate(record):
              query = query + '\', \'' + str(entry.get('value'))
            query = query + '\' );'
            print('-> ' + query)
            db.query(query)
        db.close()
      

      Ich bin kein Programmierer sondern hacke mir meine Tools einfach so zusammen, dass sie für mich funktionieren. Diese Software könnte von einem fähigen Programmierer in kurzer Zeit wahrscheinlich massiv verbessert werden um mit Kommandozeilen-Argumenten, mehr als einem Querx und einer anderen Anzahl Spalten in der DB umgehen zu können.

      Ich veröffentliche diesen Code so wie er ist (abgesehen von den Teilen, die ich von egnite kopiert habe) zur freien Verwendung.

      posted in Generelle Diskussion
      Marco T
    • Druckwelle Vulkanesplosion Tonga

      Die Druckwelle der Vulkanexplosion bei Tonga war auch bei uns trotz 17000km Distanz gut messabar. Die Zeitschritte von 5min die ich für unseren Querx gewählt habe, reichen gerade um die Druckwelle zu erfassen. Mit +1.4hPa und -1.2hPa war die erste Welle um ca. 20:30 MEZ sehr gut von den natürlich auftretenden Luftdruckänderungen zu unterscheiden. Die 2. Welle um ca. 02:00 war da schon weniger deutlich.
      Druckwelle_Vulkanexplosion_Tonga.png
      Position: Arbon (Schweiz) 47.516669°, 9.433338°, 400müM (Luftdruck auf Stationshöhe)

      Wer hat die Welle auch gemessen und mag seine Daten teilen?

      posted in Generelle Diskussion
      Marco T