MATTER im FHEM? Schon was in Planung?

Begonnen von misux, 18 Mai 2022, 15:40:21

Vorheriges Thema - Nächstes Thema

Rampler

Hallo zusammen,
ich habe gerade mal auf meinem Testsystem FHEMPY installiert...
Beim Start des Matter Server meckert dieser die Version von nodejs an.
Diese soll laut Matter Server mind. eine V22 sein.
Trixie (auf einem Raspberry 2B, leider nur 32 bit fähig) bringt nur v20.19.2  mit.
Die Installation empfiehlt folgendes:

curl -fsSL https://deb.nodesource.com/setup_22.x | sudo bash - && sudo apt install nodejs 
Was aber zu folgender Fehlermeldung führt:

2026-10-28 08:59:08 - Error: Unsupported architecture: armhf. Only amd64, arm64 are supported. Contact Nodesource for an extended support version https://nodesource.com/pages/contact-us.html. (Exit Code: 1)

Sieht für mich so aus, als ob der Matter Server von FHEMPY nicht (mehr) auf einem Raspberry Model 2b lauffähig ist, trotz aktueller Linux Distro.

Mit diesen Befehlen ist es mir gelungen, zumidest Nodejs V22.15 zu installieren:

sudo apt update && sudo apt install -y curl tar apt-transport-https ca-certificates gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://nodesource.com | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
sudo apt install -y nodejs

Vermutlich bringt das nichts auf Dauer, da neue Versionen des Matter Servers auch neuere Nodejs Versionen erfordern, oder ?

Ich möchte keinen neuen Raspberry kaufen, da der "alte" für mich völlig ausreichend ist .

Gibt es andere Möglichkeiten ein neueres Nodejs zu installieren ?

Gruß Klaus
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Trixie), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!

dominik

Antwort von Claude :)
Hallo Klaus,

danke für die ausführliche Beschreibung! Du hast recht: NodeSource baut seit einiger Zeit nur noch für amd64 und arm64, für 32-bit (armhf) gibt es dort nichts mehr. Der Hinweis in fhempy ist für den Pi 2B daher leider falsch, das passe ich an.

Zu deinem zweiten Weg: Der Schlüssel wurde von https://nodesource.com geladen, das ist aber die Webseite und kein GPG-Key (richtig wäre https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key). Außerdem hat die Repo für armhf keine Pakete. Schau bitte mal, woher dein Node 22.15 wirklich kommt:

which -a node
node -v
apt policy nodejs
Wenn apt update jetzt wegen der NodeSource-Quelle meckert, kannst du sie einfach wieder entfernen:

sudo rm /etc/apt/sources.list.d/nodesource.list /etc/apt/keyrings/nodesource.gpg
sudo apt update
Mein Vorschlag: offizielles Node 22 von nodejs.org. Für Node 22 gibt es auf nodejs.org weiterhin offizielle Binaries für armv7l (also auch den Pi 2B). Installation nach /usr/local, damit es auch der fhem-User findet:

cd /tmp
FILE=$(curl -fsSL https://nodejs.org/dist/latest-v22.x/ | grep -o 'node-v22[0-9.]*-linux-armv7l.tar.xz' | head -1)
curl -fsSLO https://nodejs.org/dist/latest-v22.x/$FILE
sudo tar -xJf $FILE -C /usr/local --strip-components=1 --exclude=CHANGELOG.md --exclude=README.md --exclude=LICENSE
hash -r
node -v
/usr/local/bin steht im PATH vor /usr/bin, das Debian-Node 20 darf also installiert bleiben. Für ein Update führst du die Befehle einfach nochmal aus. Danach fhempy neu starten, dann sollte der Matter Server starten.

nvm würde ich hier nicht nehmen: Es installiert Node nur ins Home-Verzeichnis des jeweiligen Users, fhempy läuft aber als fhem-User und sieht es dann nicht.

Zu deiner Frage "auf Dauer": Leider hast du recht. Node 22 bekommt noch bis Ende April 2027 Sicherheitsupdates. Ab Node 24 gibt es keine offiziellen 32-bit-ARM-Builds mehr, und auch die "unofficial builds" von Node.js bauen kein armv7l für Node 24. Der Matter Server braucht aktuell Node 22.13 oder neuer. Solange er nicht Node 24 verlangt, läuft es mit Node 22. Was danach kommt, kann ich heute nicht sagen.

Ein Tipp noch: Schau mal, welche Revision dein Pi 2B hat:

grep Revision /proc/cpuinfo
Steht dort a22042 (Pi 2B v1.2), dann hat dein Pi schon einen 64-bit-fähigen Chip (BCM2837, wie im Pi 3). Dann kannst du Raspberry Pi OS 64-bit (arm64) installieren und bekommst Node 22/24 ganz normal über NodeSource oder fhempy installiert es sogar selbst. Bei a01041 oder a21041 (v1.1) geht das leider nicht, dann bleibt nur der Weg über Node 22 oben.

Gruß Dominik
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Rampler

#167
Hi Dominik,
danke für Deine Anleitung.
Habe jetzt node v22.23.4 am laufen  :)
Leider habe ich noch den Raspberry Model 2B V1.1, also nur 32 bit.

Kann jetzt schon mal via Matter over Wifi meine Govee Ambilight schalten ..
Als nächstes möchte ich ein IKEA Thread device mit dem SMLIGHT SLZB-06MU testen ..

Gruß Klaus
3 HMUART (2 via ESP8266), 1 DUOFERN, 12 ESP8266, SolvisBen, GoodWE WR, RPI2 (Trixie), ZWAVE, HM-Classic, und hoch zufrieden ...
Danke an alle, die was dazu beigetragen haben !!