Ankündigung

Einklappen
Keine Ankündigung bisher.

SmartHomeNG Release v1.7.2

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Maxthomas2001
    antwortet
    Vielen Dank für eure Hilfe!
    Der Hinweis von bmx brachte die Lösung:
    Code:
    [FONT=monospace][COLOR=#000000]python3 -m pip install -r requirements/base.txt --upgrade --user[/COLOR][/FONT]
    Jetzt passt soweit alles.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Kommt auch drauf an, welche Imageversion du nutzt - aber ich vermute mal, die neueste..? Was sagen denn
    journalctl -xe und das Log von Smarthome? Es wird ganz sicher an den requirements liegen. Vermutlich ist der Hinweis von bmxp eh schon die Lösung, dass du die Requirements einfach noch händisch fixst.

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Also geschrottet ist das System wohl nicht. Nur SmartHomeNG kann aktuell nicht starten weil die Bibliotheken fehlen. Die möchte SHNG aber gerne haben.

    Ich vermute, Du nutzt das Image von Onkelandy ?

    Man müßte sich anschauen, was das genau system_update macht. Ich habe aber keine Lust mir ein 1.8 GB Image herunterzuladen um dann eine wenige kB große Datei anzuschauen...

    Hinweise:
    In der Doku findest Du zum UZSU Plugin Hinweise zum Raspberry Pi und warum das scipy nicht installiert. Das hatten wir neulichs schon mal, da war die Lösung sudo apt-get install libatlas-base-dev

    Du kannst mal versuchen danach python3 -m pip install -r requirements/base.txt --upgrade --user auszuführen und dann SHNG zu starten.
    Zuletzt geändert von bmx; 16.11.2020, 09:58.

    Einen Kommentar schreiben:


  • Maxthomas2001
    antwortet
    Hallo,
    ich habe mit dem Image für den Raspberry Pi 4 mein System neu aufgesetzt.
    Soweit hat auch alles funktioniert.
    Anschließend wollte ich alles mittels system_update auf den neuesten Stand bringen. Dabei gab es jedoch einige Probleme.
    Die Python-Module werden nicht aktualisiert. Ich erhalte folgende Ausgabe:
    Code:
    [FONT=monospace][COLOR=#000000]Updating SmarthomeNG requirements [/COLOR]
    File /usr/local/smarthome/requirements/base.txt created.
    File /usr/local/smarthome/requirements/all.txt created.
    Updating all modules except scipy (as there are huge problems with the update)
    Change to user smarthome
    runuser: may not be used by non-root users
    runuser: may not be used by non-root users
    runuser: may not be used by non-root users
    Reverting modules to SmarthomeNG requirements
    runuser: may not be used by non-root users
    Finished Updating[/FONT]
    Wenn ich anschließend das System neu starte über sudo systemctl restart smarthome.service erhalte ich ebenfalls eine Fehlermeldung:
    Code:
    [FONT=monospace][COLOR=#000000]Job for smarthome.service failed because the control process exited with error code. [/COLOR]
    See "systemctl status smarthome.service" and "journalctl -xe" for details.[/FONT]
    Und daraufhin ist mein System geschrottet. Backend und Visu funktionieren nicht mehr.

    Kann mir vielleicht jemand helfen, wo hier der Fehler liegt?

    Vielen Dank.

    Einen Kommentar schreiben:


  • Sipple
    antwortet
    Super, danke. Jetzt weiß ich auch was schief ging. Hatte letzte Woche beim RPI Installieren beim ersten Start ne Fehlermeldung, dass die Requirements nicht installiert werden konnten und ich musste manuell machen (wie in der Anleitung steht). Da war diese Autogenerierung anscheinend schon durchgelaufen. Vorhin hatte ich den Erststart vergessen.

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Ja die werden jetzt bei jedem Start von SmartHomeNG generiert und SmartHomeNG installiert die Requirements selbstständig. Die Generierung bei jedem Start stellt sicher, dass die Requirements auch für Plugins installiert werden, die nachträglich hinzu-konfiguriert werden.

    Einen Kommentar schreiben:


  • Sipple
    antwortet
    Ach die werden nicht geklont vom git sondern beim ersten Start selber generiert? Das würde es erklären.

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Martin, hast Du mal gestartet und dann nachgeschaut?

    Beim Start von SHNG werden diese Dateien generiert:

    Code:
    #   +--------------------------------------------------+
    #   |                 SmartHomeNG                      |
    #   |            DON'T EDIT THIS FILE                  |
    #   |           THIS FILE IS GENERATED                 |
    #   |              BY lib/shpypi.py                    |
    #   |            ON 23.06.2020 21:27                   |
    #   |                                                  |
    #   |               INSTALL WITH:                      |
    #   | pip3 install -r requirements/base.txt --user     |
    #   +--------------------------------------------------+
    Das ist z.B. der Kopf von requirements/base.txt die beim Test auf Travis-CI vom Master 1.7.2 am 23. Juni erstellt wurde. Mit all.txt verhält es sich genauso.
    Zuletzt geändert von bmx; 13.10.2020, 12:24.

    Einen Kommentar schreiben:


  • Sipple
    antwortet
    Hi

    Ich habe erst kürzlich einen PI4B installiert, als Backup für meinen Hauptserver. Nicht per Image, sondern händisch, nach Komplettanleitung. 1.7.2.master. Alles gut.
    Jetzt, wo der läuft, habe ich meinen Hauptserver von 1.7.1 auf 1.7.2.master gezogen. Also altes Verzeichnis umbenannt und neu installiert, auch genau nach Anleitung.
    Jetzt fehlten in /requirements drei Dateien (z.B. base.txt), nur die test.txt war da. Fehlermeldungen beim git clone gab es keine. Alles andere scheint ok zu sein.
    Grad nachgesehen, was denn auf git im Verzeichnis des Master Branch drin ist und da fehlen die plötzlich auch.

    git.png
    Ist das so gewollt? Kann ich mir nicht vorstellen.
    Was mich stutzig macht: Laut git war die letzte Änderung dort im Juni. Meine letzte komplette Installation auf dem PI war letzte Woche und da waren die Dateien noch vorhanden.

    Gruß, Martin

    Einen Kommentar schreiben:


  • thengsty
    antwortet
    cool, vielen Dank für deine Hilfe!
    Wundert mich dass sonst noch keiner ein Problem damit hatte...

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Gefunden!

    Du hast im Moment 2 Möglichkeiten:
    • das database Plugin aus dem develop Branch nutzen
    • in Deiner Installation im database Plugin in der Datei __init__.py nach Zeile 181 folgende Zeile einfügen:
      Code:
      	item.dbplugin = self

    Einen Kommentar schreiben:


  • thengsty
    antwortet
    Danke für deine Hilfe. Anbei zusätzliche Infos:

    Die Item Definition:
    Code:
    PVTagesErtragGesamt_kwh:
        type: num
        visu_acl: ro
        database: 'yes'
        cache: 'yes'
        eval: round((sh.Kostal.Inverter.kostal_322() + sh.Kostal.Inverter2.kostalpik_322())/1000,2)
        cycle: 115
        historisch:
            type: num
            visu_acl: ro
            cache: 'yes'
            database: 'yes'
    Dann ziehe ich mir in einer Logik die Plugin-Instanz um manuell Werte in die Datenbank zu schreiben:
    Code:
    dbplugin = sh.Haus.strom.PVTagesErtragGesamt_kwh.historisch.dbplugin
    
    #Werte für heute setzen
    wert = sh.Haus.strom.PVTagesErtragGesamt_kwh()
    sh.Haus.strom.PVTagesErtragGesamt_kwh.historisch(wert)
    
    time.sleep(5)
    
    dbplugin.insertLog(dbplugin.id(sh.Haus.strom.PVTagesErtragGesamt_kwh.historisch), millis, duration=stunde, val=0.01, it="num", changed=millis, cur=None)
    dbplugin.insertLog(dbplugin.id(sh.Haus.strom.PVTagesErtragGesamt_kwh.historisch), millis+stunde, duration=stunde, val=0.01, it="num", changed=millis+stunde, cur=None)
    dbplugin.insertLog(dbplugin.id(sh.Haus.strom.PVTagesErtragGesamt_kwh.historisch), millis+stunde*2, duration=stunde, val=0.01, it="num", changed=millis+stunde*2, cur=None)
    dbplugin.insertLog(dbplugin.id(sh.Haus.strom.PVTagesErtragGesamt_kwh.historisch), millis+stunde*3, duration=stunde, val=0.01, it="num", changed=millis+stunde*3, cur=None)
    Der Fehler erscheint schon in Zeile 1 des obigen Auszugs.
    Code:
    2020-09-13 10:09:04 ERROR logics.ErtragBerechnen Logic: logics.ErtragBerechnen, File: /usr/local/smarthome/logics/pvertrag.py, Line: 8, Method: <module>, Exception: 'Item' object has no attribute 'dbplugin'
    > Traceback (most recent call last):
    > File "/usr/local/smarthome/lib/scheduler.py", line 590, in _task
    > exec(obj.bytecode)
    > File "/usr/local/smarthome/logics/pvertrag.py", line 8, in <module>
    > dbplugin = sh.Haus.strom.PVTagesErtragGesamt_kwh.historisch.d bplugin
    > AttributeError: 'Item' object has no attribute 'dbplugin'
    Wie schon erwähnt: das hat so monatelang funktioniert. Außer dem Update auf 1.7.2 wurde nichts verändert. (Sommerpause :-))

    danke!

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Um dazu was sagen zu können, brauche ich mehr Infos (z.B. Die Item Definition.
    So für sich sieht das für mich merkwürdig aus. Was rufst Du da auf? Ich würde in einer solchen Zuweisung erstmal ein () am ende erwarten.

    Gut wäre es auch die komplette Exception Meldung zu haben.

    Einen Kommentar schreiben:


  • thengsty
    antwortet
    Hallo zusammen,

    ein Problem habe ich dann doch noch gefunden, nach dem Update auf 1.7.2 im Zusammenhang mit dem Database-Plugin:
    Ich erhalte seit dem Update den Fehler:

    Method: <module>, Exception: 'Item' object has no attribute 'dbplugin'

    Beim Aufruf der Database Plugin Instanz
    Code:
    [I]dbplugin = sh.Haus.strom.PVTagesErtragGesamt_kwh.historisch.dbplugin[/I]


    Am Code selbst hat sich nichts geändert.

    Danke für eure Hilfe und Grüße,
    Thomas

    Einen Kommentar schreiben:


  • thengsty
    antwortet
    Danke an alle für die 1.7.2! Update hat soeben einwandfrei funktioniert. Der Start hat übrigens nicht länger gedauert als sonst (wg. DB Plugin).

    Einen Kommentar schreiben:

Lädt...
X