Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Bernoulli

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    B
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 10
    • Best 0
    • Groups 1

    Bernoulli

    @Bernoulli

    Starter

    0
    Reputation
    7
    Profile views
    10
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Bernoulli Follow
    Starter

    Latest posts made by Bernoulli

    • RE: VIS: Bindingbegrenzung deaktivieren

      @oliverio said in VIS: Bindingbegrenzung deaktivieren:

      @bernoulli

      ja genau,

      wie gut kannst du javascript?

      Es reicht für so "kleine" Sachen, also Grundlagen sind vorhanden; deshalb hatte ich das ganze gleich in JS gemäß diesem Vorgehen

      dein html 1:1 kopieren und in ein javascript einfügen und in eine variable speichern.

      erledigt. 😊 Und ja,

      diese besonderen anführungszeichen

      gelegentlich auch "Backticks" genannt, sind bei Template-Strings unerlässlich, und der HTML-Code ist dann ja ein solcher, wenn man die Platzhalter einfügt. Dennoch ein großes DANKE für die entscheidenden Tipps. Ich finde es zwar etwas seltsam, dass man die Begrenzung der Bindings mit solchen "Saltos" umgehen muss, bin aber jetzt happy, dass alles nach meinen Vorstellungen läuft.

      Diese nachfolgend beschriebene Baustelle ist nicht meine, sie gehört zu stenmic. Vielleicht liest er es ja hier.

      eisnammeln der daten, wenn ich das richtig sehe, haben die datenpunkte ja immer die gleiche struktur an einer stelle steht der monat und an einer anderen stelle der tag.
      da kannst du mit 2 schleifen arbeiten (monat und tag) und daraus technisch den datenpunktnamen "errechnen" und per getState-Befehl dann abrufen und in eine objekt speichern.
      die daten aus diesem objekt kannst du dann diekt an die stelle der bindings einfügen

      wenn wir mal ovn folgender datenobjektstruktur mit 2 ineinander verschachtelten array
      erste ebene monat, 2.ebene tag
      der array index entspricht der position (also für monat oder tag, der wert ist der wert aus dem datenpunkt. so wie ich es sehe ist das dann nur true oder false? ich hab hier mal zahlen genommen
      1.Januar wäre dann
      data[1][1]
      31.Dezember dann
      data[12][31]
      15.Juni dann
      data[6][15]
      usw

      [
          1,
          [
              1,
              2,
              3
          ],
          [
              1,
              2,
              3
          ],
          [
              1,
              2,
              3
          ]
      ]
      

      im template werden dann die daten mit

      ${data[1][1]}
      

      eingetragen.
      aber mehr dazu in der beschreibung oben.

      schreib wenn du irgendwo schwierigkeiten hast,
      dann gehen wir das langsam durch

      posted in Visualisierung
      B
      Bernoulli
    • RE: VIS: Bindingbegrenzung deaktivieren

      @oliverio schon erstaunlich, was die "{}" anrichten können 😊 . Die hatte ich natürlich "vergessen", einem iobroker Einsteiger möge man das verzeihen. Danke.
      Jetzt muss ich nur noch dafür sorgen, dass sich die Werte in der Tabelle auch aktualisieren; im Moment ist alles noch statisch, d.h. ich sehe die Werte zum Zeitpunkt der Erstellung. Dazu bedarf es offensichtlich eines Scripts, welches den Datenpunkt jedesmal neu beschreibt, wenn sich einer der Tabellenwerte ändert.

      posted in Visualisierung
      B
      Bernoulli
    • RE: VIS: Bindingbegrenzung deaktivieren

      @liv-in-sky said in VIS: Bindingbegrenzung deaktivieren:

      @stenmic

      du kannst relativ viele bindings sparen, wenn du deinen html-code in dem blockly erstellst und in einen datenpunkt schreibst - dann gibst du im html-widget diesen datenpunt als binding an

      Erst mal danke für den Hinweis/die Anleitung, denn die Begrenzung ist ja auch mein Problem. Html-code steht nun in meinem Datenpunkt, aber wie/wo gebe ich diesen Datenpunkt im Html-Widget ein? Welches (Html-)Widget ist das richtige? Im Basicwidget kann ich keine Objekt-ID eingeben/auswählen., da wird Html-Code verlangt. Für den letzten entscheidenden Hinweis wäre ich dankbar.

      posted in Visualisierung
      B
      Bernoulli
    • RE: VIS: Bindingbegrenzung deaktivieren

      @oliverio der upload geschieht dann im Expertenmodus über die VIS-Kachel, ok?
      Der von dir beschriebene Fall a) käme da wohl in Frage, da müsste ich mich dann intensiver mit auseinandersetzen; der HTML-Code ist dabei nicht das Problem.

      posted in Visualisierung
      B
      Bernoulli
    • RE: VIS: Bindingbegrenzung deaktivieren

      @nvd126 der Beitrag ist ja schon etwas älter, deshalb meine Frage, falls das Thema noch von jemandem gelesen wird. Funktioniert diese Änderung auch bei vis-2? Die Datei visUtils.js gibt es bei mir zweimal, einmal im Ordner
      /opt/iobroker/node_modules/iobroker.js-controller/build/esm/lib/vis/ und ein weiteres mal im Ordner
      /opt/iobroker/node_modules/iobroker.js-controller/build/cjs/lib/vis/.
      Habe in beiden Dateien die 50 auf 100 geändert. Das hat aber leider nichts bewirkt.
      Was hat es mit dem Upload auf sich? Wie ist das zu verstehen? Ich kann doch die Dateien direkt auf dem PI mittels nano editieren.

      posted in Visualisierung
      B
      Bernoulli
    • RE: Mehrere Holdingregister mit einem Aufruf schreiben

      @homoran kein Problem, trotzdem danke für den Dialog. Vielleicht verirrt sich mal jemand hier her und hat die Lösung 😊 👍

      posted in ioBroker Allgemein
      B
      Bernoulli
    • RE: Mehrere Holdingregister mit einem Aufruf schreiben

      @homoran dann könnte meine Vermutung zutreffen.
      Was mein Problem betrifft, sehe ich das richtig, dass es mit dem Modbusadapter (zumindest in der vorliegenden Version) nicht möglich ist, mehrere Register mit einem FC16 Befehl zu schreiben?

      posted in ioBroker Allgemein
      B
      Bernoulli
    • RE: Mehrere Holdingregister mit einem Aufruf schreiben

      @homoran gab es dafür eine Lösung? Kommt natürlich auch immer auf die Länge des Registers an, falls ich "zusammengestzt zu beschreiben" richtig interpretiere.

      posted in ioBroker Allgemein
      B
      Bernoulli
    • RE: Mehrere Holdingregister mit einem Aufruf schreiben

      @homoran deine Neugier kann ich verstehen, ich habe mich zunächst auch gefragt, warum nicht sequentiell. Die Antwort darauf lautet wie folgt:
      Mein Wechselrichter verlangt das so bei bestimmten Einstellungen! Ist von den Entwicklern bei Sofarsolar so implementiert worden (Stichwort Shadowregister usw.). Fange ich mit dem ersten Register an, klappt es noch. Wird dann das nächste verändert, kommt die Fehlermeldung. Bei den 16 Registern handelt es sich um gewisse Energiespeichermodi. U.a. kann man da Start- und Endzeit einer Ladung einstellen. Aber man kann eben diese Register nicht getrennt von den anderen schreiben. Mit anderer Modbussoftware ist das alles kein Problem; man legt eine CSV-Datei mit den Werten aller 16 Register an und ändert darin dann nach Bedarf nur die Werte der gewünschten Register, importiert die Datei und führt FC16 aus. Da ich mich nun mittlerweile mit dem iobroker angefreundet habe, hätte ich das eben auch gerne mit ihm realisiert, um nicht hin- und herswitchen zu müssen.

      posted in ioBroker Allgemein
      B
      Bernoulli
    • Mehrere Holdingregister mit einem Aufruf schreiben

      Re: Modbus Adapter: Holding Register schreiben

      Trotz intensiver Suche und Posts mit ähnlicher Fragestellung habe ich augenblicklich keine Idee, wie man das Schreiben mehrerer Register, sozusagen in einem Aufwasch, also mit nur einem FC16 Aufruf im iobroker/Modbusadapter realisiert. Klar, auf der Objektseite ließe sich das Startregister auswählen und einen Wert eintragen, danach stellt der Adapter die Befehlssequenz aus den, ihm bekannten Daten, zusammen. Damit erreiche ich aber nur ein Register, da das Schreiben nach Setzen des Werts unmittelbar stattfindet. Die Frage ist also, wie bekomme ich in den Datenteil der Befehlssequenz, in meinem Fall, 32 Datenbytes unter? Existiert eventuell eine Programmiermöglichkeit über JS? Das wäre optimal!

      posted in ioBroker Allgemein
      B
      Bernoulli
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo