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. ioBroker Allgemein
  4. Neuer Adapter: SMA Wechselrichter mit sbfspot

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    14
    1
    154

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    12
    1
    566

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

Neuer Adapter: SMA Wechselrichter mit sbfspot

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
248 Beiträge 26 Kommentatoren 58.7k Aufrufe 10 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.
  • BastelritiusB Bastelritius

    Hat noch jemand eine Idee wieso die Werte bei mir immer nur 3min nach jeder vollen Stunde berechnet werden, obwohl ich den Adapter auf 5min Intervall eingestellt habe?

    Rene_HMR Offline
    Rene_HMR Offline
    Rene_HM
    Developer
    schrieb am zuletzt editiert von
    #222

    @bastelritius laut log ist dein Problem nicht der Adapter sondern sbfspot.

    DB_CalcHistory_Today for 2100494098
    SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'))
    rows [{"time":"04:03","ertrag":0},{"time":"05:03","ertrag":0}]
    

    Hier ist die Datenbankabfrage um 6:25Uhr. Da kommen die beiden Werte um 4:03 und 5:03. Ich denke, du hast den cron job auf dem Pi nicht richtig konfiguriert... siehe
    https://github.com/SBFspot/SBFspot/wiki/Installation-Linux-SQLite#️-automation

    BastelritiusB 1 Antwort Letzte Antwort
    0
    • Rene_HMR Rene_HM

      @bastelritius laut log ist dein Problem nicht der Adapter sondern sbfspot.

      DB_CalcHistory_Today for 2100494098
      SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'))
      rows [{"time":"04:03","ertrag":0},{"time":"05:03","ertrag":0}]
      

      Hier ist die Datenbankabfrage um 6:25Uhr. Da kommen die beiden Werte um 4:03 und 5:03. Ich denke, du hast den cron job auf dem Pi nicht richtig konfiguriert... siehe
      https://github.com/SBFspot/SBFspot/wiki/Installation-Linux-SQLite#️-automation

      BastelritiusB Offline
      BastelritiusB Offline
      Bastelritius
      schrieb am zuletzt editiert von
      #223

      @rene_hm said in Neuer Adapter: SMA Wechselrichter mit sbfspot:

      @bastelritius laut log ist dein Problem nicht der Adapter sondern sbfspot.

      DB_CalcHistory_Today for 2100494098
      SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'))
      rows [{"time":"04:03","ertrag":0},{"time":"05:03","ertrag":0}]
      

      Hier ist die Datenbankabfrage um 6:25Uhr. Da kommen die beiden Werte um 4:03 und 5:03. Ich denke, du hast den cron job auf dem Pi nicht richtig konfiguriert... siehe
      https://github.com/SBFspot/SBFspot/wiki/Installation-Linux-SQLite#️-automation

      Danke. Aber ich habe es so konfiguriert wie unter dem Punkt Automation in Deinem Link.
      Irgendwie kommen ja auch alle 5min aktualisierte Werte. Zumindest wenn ich die Daten über die Historie auswerte.
      Ich habe hier mal die Tabelle SpotData ausgelesen und als txt angehangen.
      Kannst Du da mal reingucken ob das so stimmt. Ich denke die Daten sind da? SBFspot_SpotData.txt

      Rene_HMR 1 Antwort Letzte Antwort
      0
      • BastelritiusB Bastelritius

        @rene_hm said in Neuer Adapter: SMA Wechselrichter mit sbfspot:

        @bastelritius laut log ist dein Problem nicht der Adapter sondern sbfspot.

        DB_CalcHistory_Today for 2100494098
        SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'))
        rows [{"time":"04:03","ertrag":0},{"time":"05:03","ertrag":0}]
        

        Hier ist die Datenbankabfrage um 6:25Uhr. Da kommen die beiden Werte um 4:03 und 5:03. Ich denke, du hast den cron job auf dem Pi nicht richtig konfiguriert... siehe
        https://github.com/SBFspot/SBFspot/wiki/Installation-Linux-SQLite#️-automation

        Danke. Aber ich habe es so konfiguriert wie unter dem Punkt Automation in Deinem Link.
        Irgendwie kommen ja auch alle 5min aktualisierte Werte. Zumindest wenn ich die Daten über die Historie auswerte.
        Ich habe hier mal die Tabelle SpotData ausgelesen und als txt angehangen.
        Kannst Du da mal reingucken ob das so stimmt. Ich denke die Daten sind da? SBFspot_SpotData.txt

        Rene_HMR Offline
        Rene_HMR Offline
        Rene_HM
        Developer
        schrieb am zuletzt editiert von
        #224

        @bastelritius und wenn du manuell o.g. SQL string mal in der Datenbank laufen lässt, was passiert dann? Wie das geht, wird ja unter
        https://github.com/SBFspot/SBFspot/wiki/Installation-Linux-SQLite#️-testing
        erklärt. nur dass du dort nicht

        select * from vwspotdata;
        

        sondern

        SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'));
        

        verwendest.
        Welche Version von sqlite hast du auf dem PI?
        Was mir gerade auffällt:

        Versuche auch mal

        SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%M', datetime(TimeStamp, 'unixepoch'));
        
        BastelritiusB 1 Antwort Letzte Antwort
        0
        • Rene_HMR Rene_HM

          @bastelritius und wenn du manuell o.g. SQL string mal in der Datenbank laufen lässt, was passiert dann? Wie das geht, wird ja unter
          https://github.com/SBFspot/SBFspot/wiki/Installation-Linux-SQLite#️-testing
          erklärt. nur dass du dort nicht

          select * from vwspotdata;
          

          sondern

          SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'));
          

          verwendest.
          Welche Version von sqlite hast du auf dem PI?
          Was mir gerade auffällt:

          Versuche auch mal

          SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%M', datetime(TimeStamp, 'unixepoch'));
          
          BastelritiusB Offline
          BastelritiusB Offline
          Bastelritius
          schrieb am zuletzt editiert von
          #225

          @rene_hm said in Neuer Adapter: SMA Wechselrichter mit sbfspot:

          @bastelritius und wenn du manuell o.g. SQL string mal in der Datenbank laufen lässt, was passiert dann? Wie das geht, wird ja unter
          https://github.com/SBFspot/SBFspot/wiki/Installation-Linux-SQLite#️-testing
          erklärt. nur dass du dort nicht

          select * from vwspotdata;
          

          sondern

          SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'));
          

          verwendest.

          Hier bringt mir die Datenbank folgendes:

          sqlite> SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'));
          04:03|0
          05:03|0
          

          Welche Version von sqlite hast du auf dem PI?
          Ich habe die Version SQLite version 3.27.2 2019-02-25 16:06:06

          Was mir gerade auffällt:

          Versuche auch mal

          SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%M', datetime(TimeStamp, 'unixepoch'));
          

          Hier kommt das:

           SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%M', datetime(TimeStamp, 'unixepoch'));
          04:03|0
          05:03|0
          05:03|0
          05:03|0
          sqlite>
          

          Was mir gerade komisch vorkommt ist der String für die Zeit.
          Du fragst mit der Abfrage einen String mit 3 Nachkommastellen ab 1615699506.314. In der Datenbank hat der String aber keine Nachkommastellen 1615915807. Kann das ein Grund sein?

          SBFspot version ist folgende:

          SBFspot V3.7.1
          Yet another tool to read power production of SMA solar inverters
          (c) 2012-2020, SBF (https://github.com/SBFspot/SBFspot)
          Compiled for Linux (LE) 32 bit with SQLite support
          Commandline Args: -v -ad1 -am0 -ae1 -cfg/usr/local/bin/sbfspot.3/SBFspot.cfg
          

          Ich habe das mit dem Configtool installiert

          W 1 Antwort Letzte Antwort
          0
          • BastelritiusB Bastelritius

            @rene_hm said in Neuer Adapter: SMA Wechselrichter mit sbfspot:

            @bastelritius und wenn du manuell o.g. SQL string mal in der Datenbank laufen lässt, was passiert dann? Wie das geht, wird ja unter
            https://github.com/SBFspot/SBFspot/wiki/Installation-Linux-SQLite#️-testing
            erklärt. nur dass du dort nicht

            select * from vwspotdata;
            

            sondern

            SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'));
            

            verwendest.

            Hier bringt mir die Datenbank folgendes:

            sqlite> SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%m', datetime(TimeStamp, 'unixepoch'));
            04:03|0
            05:03|0
            

            Welche Version von sqlite hast du auf dem PI?
            Ich habe die Version SQLite version 3.27.2 2019-02-25 16:06:06

            Was mir gerade auffällt:

            Versuche auch mal

            SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%M', datetime(TimeStamp, 'unixepoch'));
            

            Hier kommt das:

             SELECT strftime('%H:%m', datetime(TimeStamp, 'unixepoch')) as time, Max(`EToday`) as ertrag FROM `SpotData` WHERE `Serial` = '2100494098' AND TimeStamp>= 1615676406.314 AND TimeStamp<= 1615699506.314 Group By strftime('%H-%M', datetime(TimeStamp, 'unixepoch'));
            04:03|0
            05:03|0
            05:03|0
            05:03|0
            sqlite>
            

            Was mir gerade komisch vorkommt ist der String für die Zeit.
            Du fragst mit der Abfrage einen String mit 3 Nachkommastellen ab 1615699506.314. In der Datenbank hat der String aber keine Nachkommastellen 1615915807. Kann das ein Grund sein?

            SBFspot version ist folgende:

            SBFspot V3.7.1
            Yet another tool to read power production of SMA solar inverters
            (c) 2012-2020, SBF (https://github.com/SBFspot/SBFspot)
            Compiled for Linux (LE) 32 bit with SQLite support
            Commandline Args: -v -ad1 -am0 -ae1 -cfg/usr/local/bin/sbfspot.3/SBFspot.cfg
            

            Ich habe das mit dem Configtool installiert

            W Offline
            W Offline
            Wene001
            schrieb am zuletzt editiert von
            #226

            Hi zusammen
            Versuch mich grad in die Materie des ioBroker einzuarbeiten. Da ich schon einige Jahre SBFspot nutze hab ich mir den tollen Adapter hier installiert.
            Super Sache...
            Leider funktioniert die Beschriftung der X-Achse nicht richtig in der heute Ansicht. Bei Jährlich, Monatlich und 30 Tage passts.
            Hat jemand Ideen ob ich das lösen kann, bzw ob das ein Bug ist ?

            LG Werner
            heute.JPG

            Rene_HMR 1 Antwort Letzte Antwort
            0
            • W Wene001

              Hi zusammen
              Versuch mich grad in die Materie des ioBroker einzuarbeiten. Da ich schon einige Jahre SBFspot nutze hab ich mir den tollen Adapter hier installiert.
              Super Sache...
              Leider funktioniert die Beschriftung der X-Achse nicht richtig in der heute Ansicht. Bei Jährlich, Monatlich und 30 Tage passts.
              Hat jemand Ideen ob ich das lösen kann, bzw ob das ein Bug ist ?

              LG Werner
              heute.JPG

              Rene_HMR Offline
              Rene_HMR Offline
              Rene_HM
              Developer
              schrieb am zuletzt editiert von
              #227

              @wene001 was verwendest du denn als "Datumsformat" in den Einstellungen?

              1 Antwort Letzte Antwort
              0
              • W Offline
                W Offline
                Wene001
                schrieb am zuletzt editiert von Wene001
                #228

                %H:%M
                Interessanterweise passte die Anzeige am Nachmittag (wenn 12:00 auch angeschrieben steht) Heut Früh ist es wieder abgeschnitten
                Bei mir war nur 6:00 und 12:00 auf der Skala angegeben.

                Leider ist dies auch eine Stunde verschoben. Wie kann ich das auf MEZ+1 umstellen am besten mit automatischer Sommerzeitumschaltung.

                Ich hab auch in meinem "today" json File nur Stundenwerte? sollten hier nicht 15min drin stehen...kann man das iwo einstellen?
                Der Adapter startet alle 5min im Iobroker und das Json File aktualisiert sich auch alle 5 min und der letzte Stundenwert steigt alle 5 min an.

                Ideen dazu?

                LG Werner

                1 Antwort Letzte Antwort
                0
                • T Offline
                  T Offline
                  Tottbeck
                  schrieb am zuletzt editiert von Tottbeck
                  #229

                  Hallo, ich muss hier mal wegen der Benutzerrechten für die Datenbasis fragen.
                  Ich habe SBFspot neu aufgesetzt, die Daten werden auch alle 5 Minuten eingelesen und in PVoutput.org dargestellt, soweit alles gut.
                  Die sbfspot.0 Instanz wird alle 15 Minuten aufgerufen. Dabei kommt zu ca. 50% eine Fehlermeldung.

                  sbfspot.0 2023-06-17 12:45:06.147	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                  sbfspot.0 2023-06-17 12:30:07.960	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                  sbfspot.0 2023-06-17 12:15:06.118	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                  sbfspot.0 2023-06-17 11:30:06.708	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                  sbfspot.0 2023-06-17 11:00:06.655	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                  sbfspot.0 2023-06-17 10:15:07.672	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                  

                  Wenn die Fehlermeldung kommt, werden keine Daten an den iobroker weitergegeben, ansonsten schon.
                  OK, die sqlite-database liegt in meinem User-homeverzeichnis im Subverzeichnis "smatdata" und nicht unter home/iobroker wie es evtl besser wäre. Die Datei gehört der Gruppe "user" und dem Benutzer "user"
                  Ich habe die Dateirechte der Datenbasis auf "666" gesetzt, aber das hat nichts geändert.
                  Warum ist der Fehler sporadisch und wie kann ich das einfach umgehen ohne die DB neu anzulegen ? Die Datei einer Gruppe von iobroker und User zuweisen ?
                  Nachtrag: Per Gruppe funktioniert es scheinbar jetzt.

                  Rene_HMR 1 Antwort Letzte Antwort
                  0
                  • T Tottbeck

                    Hallo, ich muss hier mal wegen der Benutzerrechten für die Datenbasis fragen.
                    Ich habe SBFspot neu aufgesetzt, die Daten werden auch alle 5 Minuten eingelesen und in PVoutput.org dargestellt, soweit alles gut.
                    Die sbfspot.0 Instanz wird alle 15 Minuten aufgerufen. Dabei kommt zu ca. 50% eine Fehlermeldung.

                    sbfspot.0 2023-06-17 12:45:06.147	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                    sbfspot.0 2023-06-17 12:30:07.960	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                    sbfspot.0 2023-06-17 12:15:06.118	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                    sbfspot.0 2023-06-17 11:30:06.708	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                    sbfspot.0 2023-06-17 11:00:06.655	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                    sbfspot.0 2023-06-17 10:15:07.672	error	exception in DB_GetInverters [SqliteError: attempt to write a readonly database]
                    

                    Wenn die Fehlermeldung kommt, werden keine Daten an den iobroker weitergegeben, ansonsten schon.
                    OK, die sqlite-database liegt in meinem User-homeverzeichnis im Subverzeichnis "smatdata" und nicht unter home/iobroker wie es evtl besser wäre. Die Datei gehört der Gruppe "user" und dem Benutzer "user"
                    Ich habe die Dateirechte der Datenbasis auf "666" gesetzt, aber das hat nichts geändert.
                    Warum ist der Fehler sporadisch und wie kann ich das einfach umgehen ohne die DB neu anzulegen ? Die Datei einer Gruppe von iobroker und User zuweisen ?
                    Nachtrag: Per Gruppe funktioniert es scheinbar jetzt.

                    Rene_HMR Offline
                    Rene_HMR Offline
                    Rene_HM
                    Developer
                    schrieb am zuletzt editiert von
                    #230

                    @tottbeck das ist meist das Recht auf den Ordner und nicht die Datenbank-Datei selbst...

                    T 1 Antwort Letzte Antwort
                    0
                    • Rene_HMR Rene_HM

                      @tottbeck das ist meist das Recht auf den Ordner und nicht die Datenbank-Datei selbst...

                      T Offline
                      T Offline
                      Tottbeck
                      schrieb am zuletzt editiert von
                      #231

                      Nach langer Zeit habe ich mal wieder ein Problem mit dem Adapter.

                      sbfspot ist umgezogen auf einen neuen Host. (Raspi3 -> Raspi5)
                      Seitdem will der Adapter die Daten nicht mehr aus der sqlite Datenbank lesen.
                      SBFspot selber läuft weiter und lädt die Daten zu PVoutput.org hoch.
                      Die Databasis in /home/scheth1/smadata/SBFspot.db wird alle 5min aktualisiert.
                      Aber scheinbar kann der iobroker adapter da nicht korrekt drauf zugreifen.
                      => "exception in DB_Connect [TypeError: Cannot open database because the directory does not exist]"
                      Die Zugriffsrechte stehen auf '777' für die Datei und das Verzeichnis.
                      "sudo npm install" habe ich auch schon ausgeführt im iobroker.sbfspot - Ordner.
                      Neuinstallation des Adapters hat auch nichts geändert.
                      Hat jemand eine Idee ?

                      2025-04-16 11:30:00.009 - info: host.raspi3 instance system.adapter.sbfspot.0 in version "4.3.4" started with pid 3401
                      2025-04-16 11:30:00.542 - debug: sbfspot.0 (3401) Redis Objects: Use Redis connection: 192.168.178.199:9001
                      2025-04-16 11:30:00.560 - debug: sbfspot.0 (3401) Objects client ready ... initialize now
                      2025-04-16 11:30:00.561 - debug: sbfspot.0 (3401) Objects create System PubSub Client
                      2025-04-16 11:30:00.561 - debug: sbfspot.0 (3401) Objects create User PubSub Client
                      2025-04-16 11:30:00.589 - debug: sbfspot.0 (3401) Objects client initialize lua scripts
                      2025-04-16 11:30:00.592 - debug: sbfspot.0 (3401) Objects connected to redis: 192.168.178.199:9001
                      2025-04-16 11:30:00.610 - debug: sbfspot.0 (3401) Redis States: Use Redis connection: 192.168.178.199:9000
                      2025-04-16 11:30:00.619 - debug: sbfspot.0 (3401) States create System PubSub Client
                      2025-04-16 11:30:00.620 - debug: sbfspot.0 (3401) States create User PubSub Client
                      2025-04-16 11:30:00.679 - debug: sbfspot.0 (3401) States connected to redis: 192.168.178.199:9000
                      2025-04-16 11:30:00.705 - debug: sbfspot.0 (3401) Plugin sentry Initialize Plugin (enabled=true)
                      2025-04-16 11:30:00.841 - info: sbfspot.0 (3401) starting. Version 4.3.4 in /opt/iobroker/node_modules/iobroker.sbfspot, node: v20.18.0, js-controller: 7.0.6
                      2025-04-16 11:30:00.849 - debug: sbfspot.0 (3401) start
                      2025-04-16 11:30:00.859 - debug: sbfspot.0 (3401) system: longitude xx latitude yy
                      2025-04-16 11:30:00.860 - debug: sbfspot.0 (3401) sunrise 06:29 sunset 20:25 true
                      2025-04-16 11:30:00.860 - info: sbfspot.0 (3401) start with sqlite
                      2025-04-16 11:30:00.860 - debug: sbfspot.0 (3401) --- connecting to /home/scheth1/smadata/SBFspot.db
                      2025-04-16 11:30:00.866 - error: sbfspot.0 (3401) exception in DB_Connect [TypeError: Cannot open database because the directory does not exist]
                      2025-04-16 11:30:00.866 - debug: sbfspot.0 (3401) disconnect database
                      2025-04-16 11:30:00.866 - info: sbfspot.0 (3401) all done ...
                      2025-04-16 11:30:00.866 - debug: sbfspot.0 (3401) timer killed
                      2025-04-16 11:30:00.867 - debug: sbfspot.0 (3401) Plugin sentry destroyed
                      2025-04-16 11:30:00.867 - info: sbfspot.0 (3401) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                      2025-04-16 11:30:01.383 - info: host.raspi3 instance system.adapter.sbfspot.0 having pid 3401 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
                      
                      wendy2702W 1 Antwort Letzte Antwort
                      0
                      • T Tottbeck

                        Nach langer Zeit habe ich mal wieder ein Problem mit dem Adapter.

                        sbfspot ist umgezogen auf einen neuen Host. (Raspi3 -> Raspi5)
                        Seitdem will der Adapter die Daten nicht mehr aus der sqlite Datenbank lesen.
                        SBFspot selber läuft weiter und lädt die Daten zu PVoutput.org hoch.
                        Die Databasis in /home/scheth1/smadata/SBFspot.db wird alle 5min aktualisiert.
                        Aber scheinbar kann der iobroker adapter da nicht korrekt drauf zugreifen.
                        => "exception in DB_Connect [TypeError: Cannot open database because the directory does not exist]"
                        Die Zugriffsrechte stehen auf '777' für die Datei und das Verzeichnis.
                        "sudo npm install" habe ich auch schon ausgeführt im iobroker.sbfspot - Ordner.
                        Neuinstallation des Adapters hat auch nichts geändert.
                        Hat jemand eine Idee ?

                        2025-04-16 11:30:00.009 - info: host.raspi3 instance system.adapter.sbfspot.0 in version "4.3.4" started with pid 3401
                        2025-04-16 11:30:00.542 - debug: sbfspot.0 (3401) Redis Objects: Use Redis connection: 192.168.178.199:9001
                        2025-04-16 11:30:00.560 - debug: sbfspot.0 (3401) Objects client ready ... initialize now
                        2025-04-16 11:30:00.561 - debug: sbfspot.0 (3401) Objects create System PubSub Client
                        2025-04-16 11:30:00.561 - debug: sbfspot.0 (3401) Objects create User PubSub Client
                        2025-04-16 11:30:00.589 - debug: sbfspot.0 (3401) Objects client initialize lua scripts
                        2025-04-16 11:30:00.592 - debug: sbfspot.0 (3401) Objects connected to redis: 192.168.178.199:9001
                        2025-04-16 11:30:00.610 - debug: sbfspot.0 (3401) Redis States: Use Redis connection: 192.168.178.199:9000
                        2025-04-16 11:30:00.619 - debug: sbfspot.0 (3401) States create System PubSub Client
                        2025-04-16 11:30:00.620 - debug: sbfspot.0 (3401) States create User PubSub Client
                        2025-04-16 11:30:00.679 - debug: sbfspot.0 (3401) States connected to redis: 192.168.178.199:9000
                        2025-04-16 11:30:00.705 - debug: sbfspot.0 (3401) Plugin sentry Initialize Plugin (enabled=true)
                        2025-04-16 11:30:00.841 - info: sbfspot.0 (3401) starting. Version 4.3.4 in /opt/iobroker/node_modules/iobroker.sbfspot, node: v20.18.0, js-controller: 7.0.6
                        2025-04-16 11:30:00.849 - debug: sbfspot.0 (3401) start
                        2025-04-16 11:30:00.859 - debug: sbfspot.0 (3401) system: longitude xx latitude yy
                        2025-04-16 11:30:00.860 - debug: sbfspot.0 (3401) sunrise 06:29 sunset 20:25 true
                        2025-04-16 11:30:00.860 - info: sbfspot.0 (3401) start with sqlite
                        2025-04-16 11:30:00.860 - debug: sbfspot.0 (3401) --- connecting to /home/scheth1/smadata/SBFspot.db
                        2025-04-16 11:30:00.866 - error: sbfspot.0 (3401) exception in DB_Connect [TypeError: Cannot open database because the directory does not exist]
                        2025-04-16 11:30:00.866 - debug: sbfspot.0 (3401) disconnect database
                        2025-04-16 11:30:00.866 - info: sbfspot.0 (3401) all done ...
                        2025-04-16 11:30:00.866 - debug: sbfspot.0 (3401) timer killed
                        2025-04-16 11:30:00.867 - debug: sbfspot.0 (3401) Plugin sentry destroyed
                        2025-04-16 11:30:00.867 - info: sbfspot.0 (3401) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                        2025-04-16 11:30:01.383 - info: host.raspi3 instance system.adapter.sbfspot.0 having pid 3401 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
                        
                        wendy2702W Online
                        wendy2702W Online
                        wendy2702
                        schrieb am zuletzt editiert von
                        #232

                        @tottbeck sagte in Neuer Adapter: SMA Wechselrichter mit sbfspot:

                        /home/scheth1/smadata/

                        gibt es dieses Directory wirklich? Zeig mal

                        Bitte keine Fragen per PN, die gehören ins Forum!

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

                        T 1 Antwort Letzte Antwort
                        0
                        • wendy2702W wendy2702

                          @tottbeck sagte in Neuer Adapter: SMA Wechselrichter mit sbfspot:

                          /home/scheth1/smadata/

                          gibt es dieses Directory wirklich? Zeig mal

                          T Offline
                          T Offline
                          Tottbeck
                          schrieb am zuletzt editiert von
                          #233

                          @wendy2702 Gerne

                          scheth1@raspi3:~ $ ls -l /home/scheth1/smadata/
                          total 17488
                          drwxrwxrwx 3 scheth1 scheth1     4096 Apr 20 01:02 2025
                          drwxrwxrwx 2 scheth1 scheth1     4096 Apr 16 17:42 logs
                          -rwxrwxrwx 1 scheth1 scheth1 17895424 Apr 20 11:40 SBFspot.db
                          
                          
                          wendy2702W 1 Antwort Letzte Antwort
                          0
                          • T Tottbeck

                            @wendy2702 Gerne

                            scheth1@raspi3:~ $ ls -l /home/scheth1/smadata/
                            total 17488
                            drwxrwxrwx 3 scheth1 scheth1     4096 Apr 20 01:02 2025
                            drwxrwxrwx 2 scheth1 scheth1     4096 Apr 16 17:42 logs
                            -rwxrwxrwx 1 scheth1 scheth1 17895424 Apr 20 11:40 SBFspot.db
                            
                            
                            wendy2702W Online
                            wendy2702W Online
                            wendy2702
                            schrieb am zuletzt editiert von
                            #234

                            @tottbeck ist das auf dem gleichen PI oder gemountet?

                            Bitte keine Fragen per PN, die gehören ins Forum!

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

                            T 1 Antwort Letzte Antwort
                            0
                            • wendy2702W wendy2702

                              @tottbeck ist das auf dem gleichen PI oder gemountet?

                              T Offline
                              T Offline
                              Tottbeck
                              schrieb am zuletzt editiert von Tottbeck
                              #235

                              @wendy2702

                              Der Adapter läuft auf dem gleichem PI.
                              Habe den Adapter zwischenzeitlich von 4.3.4 auf 4.4.2 aktualisiert ohne Änderung.

                              1876bc87-1348-471d-8ba1-59937dada4b5-image.png

                              scheth1@raspi3:~ $ sqlite3 /home/scheth1/smadata/SBFspot.db
                              SQLite version 3.40.1 2022-12-28 14:03:47
                              Enter ".help" for usage hints.
                              sqlite> select * from Inverters;
                              2100080719|SN: 2100080719|SB 5000TL-20|03.01.05.R|1745147704|3844|14097|83460352|65675.3|64404.3|OK|Closed|62.54
                              sqlite> .quit
                              
                              
                              VJ77V 1 Antwort Letzte Antwort
                              0
                              • T Tottbeck

                                @wendy2702

                                Der Adapter läuft auf dem gleichem PI.
                                Habe den Adapter zwischenzeitlich von 4.3.4 auf 4.4.2 aktualisiert ohne Änderung.

                                1876bc87-1348-471d-8ba1-59937dada4b5-image.png

                                scheth1@raspi3:~ $ sqlite3 /home/scheth1/smadata/SBFspot.db
                                SQLite version 3.40.1 2022-12-28 14:03:47
                                Enter ".help" for usage hints.
                                sqlite> select * from Inverters;
                                2100080719|SN: 2100080719|SB 5000TL-20|03.01.05.R|1745147704|3844|14097|83460352|65675.3|64404.3|OK|Closed|62.54
                                sqlite> .quit
                                
                                
                                VJ77V Offline
                                VJ77V Offline
                                VJ77
                                schrieb am zuletzt editiert von
                                #236

                                @tottbeck da klinke ich mich mal ein. Ich habe nämlich exakt dasselbe Problem. Ich habe meinen IObroker von Windows auf ein RPI umziehen lassen. Ich bekomme jetzt die selbe Fehlermeldung. Die Abfrage vom Wechselrichter, wie auch das Schreiben in die Datenbank funktionieren problemlos. Nur das Auslesen aus der DB scheitert. Ich habe auch schon eine komplette Neuinstallation gemacht, mit dem selben Ergebnis.

                                Hast du eine Lösung gefunden?

                                T 1 Antwort Letzte Antwort
                                0
                                • VJ77V VJ77

                                  @tottbeck da klinke ich mich mal ein. Ich habe nämlich exakt dasselbe Problem. Ich habe meinen IObroker von Windows auf ein RPI umziehen lassen. Ich bekomme jetzt die selbe Fehlermeldung. Die Abfrage vom Wechselrichter, wie auch das Schreiben in die Datenbank funktionieren problemlos. Nur das Auslesen aus der DB scheitert. Ich habe auch schon eine komplette Neuinstallation gemacht, mit dem selben Ergebnis.

                                  Hast du eine Lösung gefunden?

                                  T Offline
                                  T Offline
                                  Tottbeck
                                  schrieb am zuletzt editiert von
                                  #237

                                  @vj77 Leider nein.
                                  Ich habe noch SBFspot.db gegen eine ältere kleinere Version (~100kB) getauscht, falls die korrupt geworden wäre. Hat aber auch nichts geändert.

                                  1 Antwort Letzte Antwort
                                  0
                                  • wendy2702W Online
                                    wendy2702W Online
                                    wendy2702
                                    schrieb am zuletzt editiert von
                                    #238

                                    Hilft euch nicht direkt weiter aber können eure WR mit einen Software Update vielleicht Modbus?

                                    Bitte keine Fragen per PN, die gehören ins Forum!

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

                                    1 Antwort Letzte Antwort
                                    0
                                    • W Offline
                                      W Offline
                                      wm20320
                                      schrieb am zuletzt editiert von wm20320
                                      #239

                                      Nur zur Vorsichtig: Du hast im iobroker die Instanz schon auf auf SQLite stehen und den Pfad ohne Leerzeichen und in richtiger Groß- und Kleinschreibung etc? z. B. 23-04-2025_17-40-55.png

                                      Wahrscheinlich ein überflüssiger Tipp, aber manchmal übersieht man ja doch irgendwas ...

                                      Hast schon mal testweise versucht die DB in ein anderes Verzeichnis zu legen und dort abzurufen?

                                      1 Antwort Letzte Antwort
                                      0
                                      • Rene_HMR Offline
                                        Rene_HMR Offline
                                        Rene_HM
                                        Developer
                                        schrieb am zuletzt editiert von
                                        #240

                                        @Tottbeck @VJ77 Habt ihr die Möglichkeit, in der main.js des Adapters zu editieren?

                                        In Zeile 371 beginnt folgender Teil:

                                        adapter.log.info("start with sqlite");
                                        
                                        const path = require("path");
                                        
                                        const file_path = adapter.config.sqlite_path;
                                        const dbPath = path.resolve(__dirname, file_path.trim());
                                        
                                        adapter.log.debug("--- connecting to " + dbPath);
                                        
                                        const sqlite3 = require("better-sqlite3");
                                        
                                        sqlite_db = new sqlite3(dbPath, { fileMustExist: true });
                                        adapter.log.debug("sqlite Database is connected ...");
                                        //DB_GetInverters();
                                        

                                        Ihr könntet testweise aus

                                        { fileMustExist: true }
                                        

                                        ein

                                        { fileMustExist: false }
                                        

                                        machen.
                                        Dann wird die Datenbank-Datei neu angelegt. Vielleicht hilft das, zu erkennen, wo better-sqlite3 die Datenbank-Datei erwartet... Natürlich ist dann der Inhalt der neu angelegten Datenbank falsch aber zur Fehlersuche evtl. hilfreich...

                                        T 1 Antwort Letzte Antwort
                                        1
                                        • Rene_HMR Rene_HM

                                          @Tottbeck @VJ77 Habt ihr die Möglichkeit, in der main.js des Adapters zu editieren?

                                          In Zeile 371 beginnt folgender Teil:

                                          adapter.log.info("start with sqlite");
                                          
                                          const path = require("path");
                                          
                                          const file_path = adapter.config.sqlite_path;
                                          const dbPath = path.resolve(__dirname, file_path.trim());
                                          
                                          adapter.log.debug("--- connecting to " + dbPath);
                                          
                                          const sqlite3 = require("better-sqlite3");
                                          
                                          sqlite_db = new sqlite3(dbPath, { fileMustExist: true });
                                          adapter.log.debug("sqlite Database is connected ...");
                                          //DB_GetInverters();
                                          

                                          Ihr könntet testweise aus

                                          { fileMustExist: true }
                                          

                                          ein

                                          { fileMustExist: false }
                                          

                                          machen.
                                          Dann wird die Datenbank-Datei neu angelegt. Vielleicht hilft das, zu erkennen, wo better-sqlite3 die Datenbank-Datei erwartet... Natürlich ist dann der Inhalt der neu angelegten Datenbank falsch aber zur Fehlersuche evtl. hilfreich...

                                          T Offline
                                          T Offline
                                          Tottbeck
                                          schrieb am zuletzt editiert von
                                          #241

                                          @rene_hm

                                          Ich habe mal die Config für die DB verändert auf /home/scheth1/SBFspot.db
                                          Da liegt auch eine Datenbank (die alte als Backup), der Ordner hat aber vermutlich keine ausreichenden Rechte für den Zugriff:

                                          scheth1@raspi3:/home $ ls -l
                                          total 8
                                          drwxr-xr-x  5 iobroker iobroker 4096 Apr 23 18:00 iobroker
                                          drwx------ 11 scheth1  scheth1  4096 Apr 20 13:17 scheth1
                                          scheth1@raspi3:/home $ ls -l scheth1/SBF*
                                          -rwxrwxrwx 1 scheth1 scheth1 17821696 Apr 18 14:15 scheth1/SBFspot.db
                                          

                                          Dann sieht die Fehlermeldung vom sqlite anders aus.

                                          2025-04-23 20:35:00.884 - info: sbfspot.0 (27279) start with sqlite
                                          2025-04-23 20:35:00.885 - debug: sbfspot.0 (27279) --- connecting to /home/scheth1/SBFspot.db
                                          2025-04-23 20:35:00.890 - error: sbfspot.0 (27279) exception in DB_Connect [SqliteError: unable to open database file]
                                          2025-04-23 20:35:00.891 - debug: sbfspot.0 (27279) disconnect database
                                          

                                          vorher war es ja:
                                          [TypeError: Cannot open database because the directory does not exist]
                                          Ist damit ein directory innerhalb der DB gemeint ??

                                          Die main.js habe ich geändert. Die Erwartung wäre das woanders ein DB-File angelegt wird ?

                                          Rene_HMR 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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          333

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          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