Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. RPI-Monitor - Uptime Format ändern

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    324

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

RPI-Monitor - Uptime Format ändern

Geplant Angeheftet Gesperrt Verschoben Visualisierung
30 Beiträge 12 Kommentatoren 8.7k Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • 0 Offline
    0 Offline
    0018
    schrieb am zuletzt editiert von
    #3

    Ganz so ausführlich wollte ich es eigentlich nicht.

    Habe eine kleine Statusübersicht des RPI Montors gebastelt, welche die Werte als Text ausgibt.

    Bei der Uptime sollte dann z.B. so etwas herauskommen:

    Raspi aktiv seit: 2 Tagen 7 Stunden 18 Minuten

    Aktuell habe ich es halt nur so:

    Raspi aktiv seit: 199080 Sekunden

    und das ist leider zu unübersichtlich.

    Mfg
    0018

    1 Antwort Letzte Antwort
    0
    • Jeeper.atJ Offline
      Jeeper.atJ Offline
      Jeeper.at
      schrieb am zuletzt editiert von
      #4

      Alles klar, dann wirst du um ein kleines Script wohl nicht herumkommen.

      Folgendes habe ich gefunden.

      function umwandeln()
      {
      var tag,std,min,sek;
      var c=60;
      var d=24;
        {
        sek = parseInt(Sekunden_start.value);
        min = Math.floor(sek/c); 
        sek = sek % c;
        std = Math.floor(min/c);
        min = min % c;
        tag = Math.floor(std/d);
        std = std % d;
        sekunden.value = sek;
        minuten.value  = min;
        stunden.value  = std;
        tage.value     = tag;
        }
      }
      

      In sekunden_start steht der Ausgangswert.

      In sekunden, minuten, stunden, tage das Ergebnis.

      Leider stehe ich erst ganz am Anfang mit Javascript. Ich bin mir sicher, da fehlt noch etwas um es vollständig lauffähig zu bekommen. Aber der prinzipielle Mechanismus zum Umrechnen ist vorhanden.

      1 Antwort Letzte Antwort
      0
      • 0 Offline
        0 Offline
        0018
        schrieb am zuletzt editiert von
        #5

        Habs mal probiert….

        bekomme die Fehlermeldung "javascript.0 script.js.common.Skript2 compile failed: SyntaxError: missing ) after argument list"

        Hab leider keine Ahnung von Javascript, daher etwas hilflos :?

        Jemand eine Lösung?

        Mfg
        0018

        1 Antwort Letzte Antwort
        0
        • M Offline
          M Offline
          masterki
          schrieb am zuletzt editiert von
          #6

          Ich hab da mal was gebastelt ich denke das funktioniert, schön ist es bestimmt nicht ist aber auch mein erster Versuch :oops:

          `var pfad = "Raspiobroker.Uptime.";
          var zeiten = ['tag','std','min','sek'];
          var format = ['tage','stunden','minuten','sekunden'];
          var tag,std,min,sek; 
          var x = getState("rpi2.0.uptime.uptime").val;
          
          function umwandeln(x)
          {
          var c=60;
          var d=24;
            {
            sek = x;
            min = Math.floor(sek/c); 
            sek = sek % c;
            std = Math.floor(min/c);
            min = min % c;
            tag = Math.floor(std/d);
            std = std % d;
            /*sekunden.value = sek;
            minuten.value  = min;
            stunden.value  = std;
            tage.value     = tag;*/
          for(var i=0;i<format.length;i++) {/createstate(pfad/+/format[i].tolowercase(),0,/name:/'raspiobroker/uptime/in/'/format[i],/desc:/'uptime/für/raspiobroker/zeiten[i],/type:/'value'});/setstate(pfad/'tage'.tolowercase(),tag);/'stunden'.tolowercase(),std);/'minuten'.tolowercase(),min);/'sekunden'.tolowercase(),sek);/}/umwandeln(x);/<e=""></format.length;i++)>`
           ![2834_rpimon.png](/assets/uploads/files/2834_rpimon.png) [/i][/i][/i]
          
          1 Antwort Letzte Antwort
          0
          • WebrangerW Online
            WebrangerW Online
            Webranger
            schrieb am zuletzt editiert von
            #7

            @0018:

            Habs mal probiert….

            bekomme die Fehlermeldung "javascript.0 script.js.common.Skript2 compile failed: SyntaxError: missing ) after argument list"

            Hab leider keine Ahnung von Javascript, daher etwas hilflos :?

            Jemand eine Lösung? `

            Hast du es hin bekommen? Steh jetzt vor dem selben problem wie Du.

            Mir würden ja sogar die Tage reichen ;) Online seit xxx Tagen

            Gruss Danyel

            Intel NUC Celeron, Xiaomi Gateway, Fritzbox 7590, XS1

            1 Antwort Letzte Antwort
            0
            • arteckA Offline
              arteckA Offline
              arteck
              Developer Most Active
              schrieb am zuletzt editiert von
              #8

              nimm doch das skriot von masterki die funktion kannst du ehh nicht nur so nutzen.. die muss noch aufgferufen werden

              zigbee hab ich, zwave auch, nuc's genauso und HA auch

              1 Antwort Letzte Antwort
              0
              • 0 Offline
                0 Offline
                0018
                schrieb am zuletzt editiert von
                #9

                @ringdingringding:

                Hast du es hin bekommen? Steh jetzt vor dem selben problem wie Du. `

                Ne ich hab's es anders gelöst. Hab auf dem Pi ein Script laufen welches mir regelmäßig Daten in ioBroker States schreibt und habe dafür den RPi-Monitor deinstalliert.

                Mfg

                Gesendet von meinem SM-G920F mit Tapatalk

                Mfg
                0018

                1 Antwort Letzte Antwort
                0
                • HomoranH Nicht stören
                  HomoranH Nicht stören
                  Homoran
                  Global Moderator Administrators
                  schrieb am zuletzt editiert von
                  #10

                  @ringdingringding:

                  Mir würden ja sogar die Tage reichen Online seit xxx Tagen `
                  144_screenshot_20170703-083133.jpg
                  Ich habe den Wert im Widget einfach durch 86.400 dividiert und auf eine Kommastelle angezeigt.

                  Gruß

                  Rainer

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  1 Antwort Letzte Antwort
                  0
                  • WebrangerW Online
                    WebrangerW Online
                    Webranger
                    schrieb am zuletzt editiert von
                    #11

                    Wo muss ich das mit dem dividieren eintragen? Hab das gestern nicht gefunden.

                    Danke und gruss

                    Intel NUC Celeron, Xiaomi Gateway, Fritzbox 7590, XS1

                    1 Antwort Letzte Antwort
                    0
                    • HomoranH Nicht stören
                      HomoranH Nicht stören
                      Homoran
                      Global Moderator Administrators
                      schrieb am zuletzt editiert von
                      #12

                      Habe jetzt keinen zugriff auf meine Installation.

                      kannst du mal einen screenshot der Konfigation des Widgets (ich meine ich hätte val basic) posten.

                      Sonst müssen wir das auf heute abend vertagen.

                      Gruß

                      Rainer

                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                      1 Antwort Letzte Antwort
                      0
                      • WebrangerW Online
                        WebrangerW Online
                        Webranger
                        schrieb am zuletzt editiert von
                        #13

                        Heute abend reicht

                        Bin auch auf Arbeit

                        Intel NUC Celeron, Xiaomi Gateway, Fritzbox 7590, XS1

                        1 Antwort Letzte Antwort
                        0
                        • HomoranH Nicht stören
                          HomoranH Nicht stören
                          Homoran
                          Global Moderator Administrators
                          schrieb am zuletzt editiert von
                          #14

                          Hier:
                          144_uptime_sec.jpg
                          Widget: basic number

                          Datenpunkt: Uptime

                          Konfiguration: erweiterte Einstellungen

                          Gruß

                          Rainer

                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                          1 Antwort Letzte Antwort
                          0
                          • WebrangerW Online
                            WebrangerW Online
                            Webranger
                            schrieb am zuletzt editiert von
                            #15

                            Danke Rainer das hat geklappt.

                            Aber wie kommt man auf 1.157407407407407e-5????????

                            Was ist das?

                            Kannst Du mir das erklären für später mal wenn ich es brauche für irgendwas!?

                            Gruss Danyel

                            Intel NUC Celeron, Xiaomi Gateway, Fritzbox 7590, XS1

                            1 Antwort Letzte Antwort
                            0
                            • HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #16

                              @ringdingringding:

                              Aber wie kommt man auf 1.157407407407407e-5????????

                              Was ist das? `
                              Das ist 1/86400 ;-)

                              Man kann den Wert nicht durch 86400 teilen um aus eben so vielen Sekunden einen Tag zu errechnen, dann muss man ihn halt mit dem Kehrwert multiplizieren = 0,00001157407407407 oder in Exponentialschreibweise 1.157407407407407e-5

                              Gruß

                              Rainer

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Antwort Letzte Antwort
                              0
                              • WebrangerW Online
                                WebrangerW Online
                                Webranger
                                schrieb am zuletzt editiert von
                                #17

                                Dankööö

                                Intel NUC Celeron, Xiaomi Gateway, Fritzbox 7590, XS1

                                1 Antwort Letzte Antwort
                                0
                                • S Offline
                                  S Offline
                                  schittl
                                  schrieb am zuletzt editiert von
                                  #18

                                  Für alle die es interessiert und ein anderes Format haben möchten (z.B. 6T 16:43). Ich verwende dabei eine eigenes neues Objekt, welches ich per Skript fülle alle 3 Minuten.

                                  ! ` > var pfad = "Systeminfos.ioBroker" + ".";

                                  var cronStr = "*/3 * * * *";

                                  var abfrage = "cat /proc/uptime | awk '{ printf "%dT %02d:%02d", $1/86400, $1/3600%24, $1/60%60 }'";

                                  var idUptime = pfad + 'iobroker_Uptime';

                                  createState(idUptime, "", {

                                  name: 'Uptime',

                                  desc: 'Uptime (abgefragt mit cat /proc/uptime)',

                                  type: 'string',

                                  unit: '',

                                  role: 'value'

                                  });

                                  function abfrageUptime() {

                                  exec(abfrage, function(err, stdout, stderr) {

                                  if (err) {

                                  log(err,"error");

                                  return;

                                  }

                                  //log(stdout);

                                  setStateDelayed(idUptime,stdout,100);

                                  });

                                  }

                                  function abfragen() {

                                  abfrageUptime();

                                  }

                                  // regelmässige Wiederholungen

                                  // –---------------------------------------------------------------------------

                                  schedule(cronStr, abfragen);

                                  // main

                                  // -----------------------------------------------------------------------------

                                  function main() {

                                  abfragen();

                                  }

                                  // Start Skript:

                                  // -----------------------------------------------------------------------------

                                  setTimeout(main, 500); `

                                  mfg

                                  Falk

                                  HW: Lenovo M920q (Proxmox, ioBroker, RaspMatic & Z2M), QNAP (Docker, Influx), Arduino Mega 2560 R3 (I2C DS18B20 + LED)

                                  SW: CT IoBroker, VM RaspMatic(v3.79.6.20241122)

                                  1 Antwort Letzte Antwort
                                  0
                                  • X Offline
                                    X Offline
                                    xelarep
                                    schrieb am zuletzt editiert von
                                    #19

                                    Hallo Falk,

                                    ich hab dein Skript mal zum Anlass genommen mich mit dem Skripten erstmalig (ausserhalb der CCU2) zu beschäftigen. Hab wohl noch ein grundsätzliches Problem.

                                    Hab dein Skript nach einem ersten Hallo World Versuch mal mal per copy/past genommen und ausgeführt.

                                    Allerdings bekomme ich in den Objekten kein Ergebnis? Ich she zwar den Neueintrag "Systeminfos.ioBroker", aber keine "Uptime"?

                                    Der Error-Log gibt ebenfalls keine weiteren Auskünfte.

                                    Anbei zwei Screenshots meines Skript Editors und der Objektansicht.

                                    Was mach ich falsch?

                                    Alexander

                                    2253_bildschirmfoto_2017-08-12_um_14.46.20.png
                                    2253_bildschirmfoto_2017-08-12_um_14.47.02.png

                                    1 Antwort Letzte Antwort
                                    0
                                    • X Offline
                                      X Offline
                                      xelarep
                                      schrieb am zuletzt editiert von
                                      #20

                                      Fragt mich nicht warum,

                                      hab heute Nachmittag mein Wandpanel aufgehängt und gerade mal nach Antworten geschaut, und wie ich so in meine Objektübersicht schaue:

                                      2253_bildschirmfoto_2017-08-12_um_20.21.20.png

                                      Die Dubletten für javascript.0 und script.js sind jetzt ebenfalls weg?!

                                      War wohl wieder zu ungeduldig…

                                      Alexander

                                      1 Antwort Letzte Antwort
                                      0
                                      • R Offline
                                        R Offline
                                        Rompe
                                        schrieb am zuletzt editiert von
                                        #21

                                        Huhu.

                                        Kann man dieses Script auch so umschreiben, dass es die Sekunden aus dem Raspi Adapter zieht? Bzw noch andere Raspis abfragen? Habe 3 Raspis am laufen als Multihost und würde gerne die Uptime von jedem in vis darstellen. Stehe gerade irgendwie auf dem Schlauch und in Javascript bin ich leider auch nicht so gut bewandert.

                                        MfG,

                                        Tobi

                                        1 Antwort Letzte Antwort
                                        0
                                        • A Offline
                                          A Offline
                                          Adnim
                                          schrieb am zuletzt editiert von
                                          #22

                                          Hallo ,

                                          habe hier im Forum irgendwo dieses Skript gefunden , das macht doch genau was du dir wünscht?

                                          ! ````
                                          var pfad = "System.ioBroker" + ".";
                                          var cronStr = "*/8 * * * *";
                                          ! var abfrage = "cat /proc/uptime | awk '{ printf "%dT %02d:%02d", $1/86400, $1/3600%24, $1/60%60 }'";
                                          var idUptime = pfad + 'iobroker_Uptime';
                                          ! createState(idUptime, "", {
                                          name: 'Uptime',
                                          desc: 'Uptime (abgefragt mit cat /proc/uptime)',
                                          type: 'string',
                                          unit: '',
                                          role: 'value'
                                          });
                                          ! function abfrageUptime() {
                                          exec(abfrage, function(err, stdout, stderr) {
                                          if (err) {
                                          log(err,"error");
                                          return;
                                          }
                                          //log(stdout);
                                          setStateDelayed(idUptime,stdout,100);
                                          });
                                          }
                                          ! function abfragen() {
                                          abfrageUptime();
                                          }
                                          ! // regelmässige Wiederholungen
                                          // -----------------------------------------------------------------------------
                                          schedule(cronStr, abfragen);
                                          ! // main
                                          // -----------------------------------------------------------------------------
                                          function main() {
                                          abfragen();
                                          }
                                          ! // Start Skript:
                                          // -----------------------------------------------------------------------------
                                          ! setTimeout(main, 500);

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          588

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe