Enocean und das Große Fragezeichen ???

Allgemeine Fragen zum Thema "Smart Home" und Entscheidungshilfen

Moderator: seppy

Fabse1988
Beiträge: 22
Registriert: 10. Feb 2023 21:40

Re: Enocean und das Große Fragezeichen ???

Beitrag von Fabse1988 »

Schlechte Nachrichten der server ist komplett hinüber 🙈
Da ich ja gestern schon schrieb das er urplötzlich einfach aus ging ist jetzt nun alles vorbei. Habe mehrere Netzteile probiert keine Chance er geht nicht mehr an 😩. Da ich nun einige stunden in dem teil versenkt habe. Schaue ich mich nach einem anderen Gerät um. Dann wird da proxmox drauf gemacht.

Ein paar Fragezeichen habe ich aber. 🤔

Wenn ich auf dem proxmox eine vm mit openhab am laufen habe, kann ich dann einfach usb devices wie den enocean header an dem pc stecken oder auch einen sonoff zig bee Adapter? Wird der dann auch in der vm erkannt?
Frage nur weil ja gpus anscheinend nicht in einer vm erkannt werden.

Mfg

Benutzeravatar
udo1toni
Beiträge: 13858
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Enocean und das Große Fragezeichen ???

Beitrag von udo1toni »

Erst mal mein herzliches Beileid ;) schade, das wäre eine so schöne Plattform gewesen...

Aber vielleicht kannst Du zumindest das eine oder andere an Innereien weiterverwenden (insbesondere natürlich die EnOcean Baugruppe, wäre ja schade drum).

Zu Proxmox: erst mal ist es wichtig, zu verstehen, dass Proxmox zwei unterschiedliche Verfahren für die Virtualisierung anbietet.

Zum einen ist das eine "echte" Virtualisierung mittels KVM, so wie VMWare, VirtualBox oder auch Hyper-V das machen. Der Hypervisor emuliert einen kompletten Rechner mit allem, was dazu gehört. Dazu zählen auf Wunsch auch ein TPM2.0 Modul und eine EFI-Partition, so dass man ohne Probleme auch ein natives Windows 11 laufen lassen kann (also ohne Rufus zu bemühen).
Voraussetzung ist natürlich, dass der Hostrechner bzw. die CPU auch Virtualisierung in Hardware unterstützt.
Ich hab inzwischen die Übersicht etwas verloren... unter GNU/Linux bekommt man das auf Wunsch über diese Zeile heraus:

Code: Alles auswählen

grep -E '^flags.*\b(vmx|svm)\b' /proc/cpuinfo 
Letztlich muss vmx oder svm auftauchen (das eine ist Intel, das andere AMD)
Um "echte" Hardware in einer "echten" VM nutzen zu können, muss diese vom Host aktiv in die VM hineingereicht werden, das muss im BIOS bzw. UEFI aktiviert sein (heißt bei jedem Bord etwas anders, warum sollte man es dem Anwender hier einfach machen?).
Weiterhin muss das Hostsystem so konfiguriert sein, dass es die Hardware selbst nicht nutzt (bei einer PCI(e)-Karte - wie es z.B. die GPU wäre - muss man dazu bei Proxmox einen Eintrag in GRUB vornehmen). Und zu guter Letzt muss man die Hardware in die VM "hineinreichen". Das ist aber alles kein Hexenwerk, nur muss man schon etwas Zeit und Geduld mitbringen. Im Proxmox Wiki sind die wesentlichen Schritte eigentlich ganz gut dokumentiert.
Was USB Hardware betrifft, gibt es aber ein Problem, denn es gilt Alles oder Nichts. Du hast zwar meist mehrere USB.Anschlüsse verschiedenster Art, aber die sind halt alle an einem Multiport Hub angebunden, der sowohl USB1, USB2 als auch USB3 spricht und dies je nach angeschlossener Hardware auf den verschiedenen Ports bereitstellt. Du kannst USB komplett in eine VM hineinreichen, dann hat aber der Host kein USB mehr...

Glücklicherweise gibt es aber auch noch eine zweite Virtualisierung in Proxmox, diese funktioniert ähnlich wie Docker (aber ganz anders). Ähnlich deshalb, weil die Container alle den Linux-Kernel des Host Systems mit verwenden. Ganz anders, weil es im Gegensatz zu Docker bei LXC (steht für LinuX Container) gewöhnlich ein ganz normales Paket für den Container gibt, in dem man ganz normal seine Software installiert. Daten usw. kann man konventionell im Container speichern. Unter Proxmox gibt es aber nette Optionen, Mountpoints auf Datasets einzurichten, das entspräche dann weitgehend einem Docker Volume, das taucht auch im Container einfach als Verzeichnis auf, liegt aber nicht auf dem Image, so dass die Daten vom Container unabhängig sind.
LXC muss keine Hardware emulieren, weshalb es wesentlich schlanker ist und auch wesentlich schneller. Beispiel: ein Container für Samba benötigt keine 128 MByte Arbeitsspeicher (gleiches gilt für InfluxDB und selbst Grafana kommt mit weniger als 256 MByte aus, wenn ich es richtig in Erinnerung habe... muss ich zuhause nachschauen)
Auch bei LXC kann man Hardware in den Container hineinreichen, hier ist es aber eher so, dass man gezielt einzelne Geräte in den Container hineinreicht, der Host spiegelt dazu den entsprechenden Namespace in den Container ein. Auch das ist kein Hexenwerk und in der Doku gut erklärt.

Allerdings gibt es auch da immer wieder mal Probleme. Letztlich ist es halt kein Plug and Play, man muss halt schon wissen, was man wo eintragen muss (bzw. man muss wissen, wo man die entsprechenden Informationen herbekommt).
Grundsätzlich sollte es kein Problem sein, die USB-Geräte in den Container zu bekommen.

Wenn Du mit Proxmox anfängst, möchte ich Dir noch den Tipp geben, mehrere Datenträger einzubauen, für ein kleines System zwei SSDs gleicher Größe. Bei der Installation von Proxmox wählst Du dann aus, dass das System auf einem Raid Z1 laufen soll. Die Installationsroutine richtet dann direkt ZFS mit einem Mirror ein. Die Platten sollten nicht zu klein sein, denn ZFS will viel Platz haben. Grundsätzlich dürfen die Platten nicht über 80% gefüllt werden. Für openHAB alleine kommt man bequem mit 16 GByte aus, aber das soll ja nicht das einzige auf dem Proxmox sein :)
ZFS bringt eine geniale Funktion mit, das sind Snapshots. Nun gibt es auch andere Filesysteme, die Snapshots bieten (ginge z.B. auch mit lvm, welches auch von Proxmox unterstützt wird), aber bei ZFS ist es einfach genial gelöst, denn ZFS baut im laufenden Betrieb eine Vektorkette aller Snapshots auf. Du kannst Snapshots selbst erstellen oder auch löschen (auch Snapshots zwischendrin), ohne dass die Vektorkette davon betroffen ist.
ZFS stellt auch sehr fortgeschrittene Funktionen für Backups zur Verfügung - vorausgesetzt, man hat noch ein zweites System mit ZFS :D .
Die Snapshots benötigen nur wenig Platz, aber jede Änderung erhöht den Platzbedarf, ohne dass sich der angezeigte Platzbedarf ändert. Je nach Menge der Snapshots kann ein Dataset (das entspricht so in etwa einer Partition bei einer "normalen" Festplatte) schnell auf die dreifache Größe anwachsen, so dass aus den 16 GByte für openHAB mal eben 48 GByte werden. Dafür kannst Du aber im Allgemeinen jederzeit den Container runterfahren und einen (oder auch mehrere) Snapshot(s) in der Zeit zurückspringen. Da es ein Tool zfs-autosnapshot gibt, kann man so z.B. das verhunzte Update einfach ungeschehen machen (also, das tool macht regelmäßig snapshots und man kann es nicht vor dem Update vergessen...). Man kann auch im Dateisystem von Proxmox sämtliche Snapshots gezielt ansteuern und dort Dateien einzeln abgreifen, um z.B. die Konfiguration von vor 3 Monaten mit heute zu vergleichen. :)

Es wird immer wieder darauf hingewiesen, dass ZFS nur mit ECC RAM betrieben werden darf, aber das ist nur die halbe Wahrheit.
ZFS verwendet pro TByte Plattenkapazität etwa ein GByte RAM als Cache. Naturgemäß werden Fehler hier zu Problemen führen. RAM ohne ECC ist aber nicht grundsätzlich schadhaft :) und auch eine CPU kann ins Straucheln geraten, wenn es einen Fehler im RAM gibt (je nachdem, wie schwerwiegend...) - deshalb wird aber Niemand auf die Idee kommen, ECC nun für alle PC vorzuschreiben.
Wahr ist, wenn man ZFS im Unternehmensumfeld einsetzen möchte, sollte man dringend ECC RAM verwenden. Und eine USV. Und Hardware, die weit jenseits des dreistelligen Budgets Zuhause ist. Im privaten Umfeld ist das kein Problem. Man kann ZFS sogar auf einem Raspberry verwenden :) Anleitung dazu z.B. unter www.nasbeery.de, ich hab auch so ein Teil auf meinem Schreibtisch liegen :) und das ist schon ziemlich cool.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Fabse1988
Beiträge: 22
Registriert: 10. Feb 2023 21:40

Re: Enocean und das Große Fragezeichen ???

Beitrag von Fabse1988 »

Gerade noch mal Netzteil angeschlossen und power on gedrückt und siehe da ging wieder an 🙈🤷
Das grenzt schon an Hexerei.

Gleich schlafen die Kinder dann gucke ich mir das enocean binding noch mal genau an. Ich melde mich.

Fabse1988
Beiträge: 22
Registriert: 10. Feb 2023 21:40

Re: Enocean und das Große Fragezeichen ???

Beitrag von Fabse1988 »

meinst du das menü ?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Fabse1988
Beiträge: 22
Registriert: 10. Feb 2023 21:40

Re: Enocean und das Große Fragezeichen ???

Beitrag von Fabse1988 »

hier noch ein Paar Bilder
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
udo1toni
Beiträge: 13858
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Enocean und das Große Fragezeichen ???

Beitrag von udo1toni »

Genau. Bei Path musst Du /dev/ttyUSB0 eintragen, falls das nicht funktioniert /dev/ttyUSB1.

Was in den anderen Feldern eingetragen werden muss, entzieht sich leider meiner Kenntnis :)

https://www.openhab.org/addons/bindings/enocean/ gibt weitere Informationen. Sollte im Log etwas davon zu lesen sein, dass keine Zugriff auf /dev/ttyUSB0 bzw. -1 möglich ist, müsste das Device in /etc/default/openhab eingetragen werden, dazu muss die Zeile

Code: Alles auswählen

EXTRA_JAVA_OPTS=""
ergänzt werden. War Der String rechts vom Gleichheitszeichen leer, so muss die Zeile anschließend so aussehen:

Code: Alles auswählen

EXTRA_JAVA_OPTS="-Dgnu.io.rxtx.SerialPorts=/dev/ttyUSB0:/dev/ttyUSB1:"
Sollte schon etwas in der Zeile konfiguriert sein, so ergänzt Du einfach den String am Ende mit dem neuen Anteil, mit einem Leerzeichen getrennt. Falls der Parameter gnu.io.rxtx.SerialPorts in der Zeile schon erwähnt ist, musst Du stattdessen die Pfade ohne alles ergänzen, also z.B.

Code: Alles auswählen

EXTRA_JAVA_OPTS="-Dgnu.io.rxtx.SerialPorts=/dev/ttyS0:"
wird dann zu

Code: Alles auswählen

EXTRA_JAVA_OPTS="-Dgnu.io.rxtx.SerialPorts=/dev/ttyS0:/dev/ttyUSB0:/dev/ttyUSB1:"
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Antworten