Privatsphäre-Einstellungen
Diese Webseite verwendet Cookies. Mit einem Klick auf "Alle akzeptieren" akzeptieren Sie die Verwendung der Cookies. Die Daten, die durch die Cookies entstehen, werden für nicht personalisierte Analysen genutzt. Weitere Informationen finden Sie in den Einstellungen sowie in unseren Datenschutzhinweisen. Sie können die Verwendung von Cookies jederzeit über Ihre anpassen. Ihre Zustimmung können Sie jederzeit mit Wirkung für die Zukunft widerrufen.
Privatsphäre-Einstellungen
Um Ihnen eine optimale Funktion der Webseite zu bieten, setzen wir Cookies ein. Das sind kleine Textdateien, die auf Ihrem Computer gespeichert werden. Dazu zählen Cookies für den Betrieb und die Optimierung der Seite. Hier können Sie auswählen, welche Cookies Sie zulassen:
Privacy Icon
Erforderliche Cookies
Diese Cookies sind notwendig, damit Sie durch die Seiten navigieren und wesentliche Funktionen nutzen können. Dies umschließt die Reichweitenmessung durch INFOnline (IVW-Prüfung), die für den Betrieb des HaustechnikDialogs unerlässlich ist. Wir benutzen Analysecookies, um die Zahl der individuellen Besucher auf Basis anonymer und pseudonymer Informationen zu ermitteln. Ein unmittelbarer Rückschluss auf eine Person ist dabei nicht möglich.
Privacy Icon
Optionale analytische Cookies
Diese Cookies helfen uns, das Nutzungsverhalten besser zu verstehen.Sie ermöglichen die Erhebung von Nutzungs- und Erkennungsmöglichkeiten durch Erst- oder Drittanbieter, in so genannten pseudonymen Nutzungsprofilen. Wir benutzen beispielsweise Analysecookies, um die Zahl der individuellen Besucher einer Webseite oder eines Dienstes zu ermitteln oder um andere Statistiken im Hinblick auf den Betrieb unserer Webseite zu erheben, als auch das Nutzerverhalten auf Basis anonymer und pseudonymer Informationen zu analysieren, wie Besucher mit der Webseite interagieren. Ein unmittelbarer Rückschluss auf eine Person ist dabei nicht möglich.
Privacy Icon
Dienste von anderen Unternehmen (Google AdSense)
Beim akzeptieren dieser Option erlauben Sie unserer Webseite Google AdSense zu verwenden. Google AdSense verwendet Cookies, um Ihnen personalisierte Werbung anzuzeigen, die auf Ihren Interessen basieren können.Bitte beachten Sie, dass durch das Akzeptieren der entsprechenden Cookies Daten an Google LLC in den USA übermittelt und dort verarbeitet werden. Weitere Informationen entnehmen Sie bitte unserer Datenschutzerklärung.
Datenschutzhinweise

Lokale REST API auf S-Serie Geräten - Beispiel S1255-6 PC
Verfasser:
Matthias_2021
Zeit: 14.12.2025 02:33:49
0
3908583
Hallo zusammen,

vor ein paar Tagen habe ich erfahren, dass es seit ein paar Wochen eine lokale Rest Api für die Nibe S Serie gibt. Ich habe eine S1255-6 PC und konnte hiermit eine Menge Daten direkt ohne cloud in meinen Homeassistant einbinden. Evtl. gibt es noch mehr Datenpunkte, die könnt ihr über die erzeugte heatpump.txt im config Verzeichnis vom Homeassistant finden (kann sein, dass meine KI nicht alle sinnvollen Datenpunkte erwischt hat). Bei anderen Modellen kann man dann relativ einfach die heatpump.yaml anpassen.

Anbei die Information wie ihr es auch im Homeassistant einbinden könnt.

Große Hilfe war mir die Information von bastin im Energiesparhaus-Forum:
https://www.energiesparhaus.at/forum-lokale-rest-api-auf-s-serie-geraeten-intro-und-moeglichkeiten/84250

Ihr benötigt:
Zugriff auf die Dateien in dem Homeassistant /config/ Verzeichnis
IP der Wärmepumpe
Menüpunkt 7.5.15: Setzen Benutzername und Passwort in der Wärmepumpe
Erstellen des kodierten Base64 codes mit Benutzername und Passwort z.B. hier: https://mixedanalytics.com/tools/basic-authentication-generator/ (Einfach Benutzername:Passwort eingeben)

Wenn ihr shell_command und command_line bereits in der configuration.yaml einsetzt, müsst ihr es ggfs. an eure Struktur anpassen/einarbeiten. Ich glaube das geht nicht an zwei Orten gleichzeitig.

configuration.yaml ("unter homeassistant:" den Absatz packages hinzufügen):

homeassistant:
packages:
pack_1: !include heatpump.yaml

heatpump.yaml (hier den Base64 Code und die IP der WP eintragen):

shell_command:
get_heatpump_json: |-
curl -k -H "Authorization: Basic [Base64 Code]" -H 'Content-Type: application/json' https://[IP der Wärmepumpe]:8443/api/v1/devices/0/points > heatpump.json
cat heatpump.json | jq -r '.[] | "\(.metadata.variableId)':'\(.title)':'\(.value.integerValue / .metadata.divisor)':'\(.metadata.unit)"' > heatpump.txt

command_line:
# -------------------------
# Temperatures (°C)
# -------------------------
- sensor:
name: Heatpump Outdoor Temperature
command: "awk -F: '$1==\"4\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Supply Line BT2
command: "awk -F: '$1==\"8\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Return Line BT3
command: "awk -F: '$1==\"10\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Hot Water Top BT7
command: "awk -F: '$1==\"11\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Hot Water Charging BT6
command: "awk -F: '$1==\"12\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Brine In BT10
command: "awk -F: '$1==\"13\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Brine Out BT11
command: "awk -F: '$1==\"14\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Condenser Supply Line BT12
command: "awk -F: '$1==\"15\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Discharge BT14
command: "awk -F: '$1==\"16\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Liquid Line BT15
command: "awk -F: '$1==\"17\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Suction Gas BT17
command: "awk -F: '$1==\"19\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Average Temperature BT1
command: "awk -F: '$1==\"54\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Brine In EP10-BT26
command: "awk -F: '$1==\"147\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Calculated Supply Climate System 1
command: "awk -F: '$1==\"1708\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

- sensor:
name: Heatpump Requested Compressor Frequency
command: "awk -F: '$1==\"1771\" {print $3}' heatpump.txt"
unit_of_measurement: "Hz"
scan_interval: 60
device_class: frequency
state_class: measurement

- sensor:
name: Heatpump Max Frequency Compressor
command: "awk -F: '$1==\"1789\" {print $3}' heatpump.txt"
unit_of_measurement: "Hz"
scan_interval: 60
device_class: frequency
state_class: measurement

- sensor:
name: Heatpump Min Frequency Compressor
command: "awk -F: '$1==\"1788\" {print $3}' heatpump.txt"
unit_of_measurement: "Hz"
scan_interval: 60
device_class: frequency
state_class: measurement

- sensor:
name: Heatpump Current Compressor Frequency
command: "awk -F: '$1==\"1799\" {print $3}' heatpump.txt"
unit_of_measurement: "Hz"
scan_interval: 60
device_class: frequency
state_class: measurement

- sensor:
name: Heatpump Inverter Temperature
command: "awk -F: '$1==\"1800\" {print $3}' heatpump.txt"
unit_of_measurement: "°C"
scan_interval: 60
device_class: temperature
state_class: measurement

# -------------------------
# Flow Sensor
# -------------------------
- sensor:
name: Heatpump Flow Sensor BF1
command: "awk -F: '$1==\"58\" {print $3}' heatpump.txt"
unit_of_measurement: "l/m"
scan_interval: 60
device_class: volume_flow_rate
state_class: measurement

# -------------------------
# Fan / Pump Speeds
# -------------------------
- sensor:
name: Heatpump Fan Speed AZ30-GQ2
command: "awk -F: '$1==\"248\" {print $3}' heatpump.txt"
unit_of_measurement: "%"
scan_interval: 60
device_class: speed
state_class: measurement

- sensor:
name: Heatpump Fan Speed AZ30-GQ3
command: "awk -F: '$1==\"249\" {print $3}' heatpump.txt"
unit_of_measurement: "%"
scan_interval: 60
device_class: speed
state_class: measurement

- sensor:
name: Heatpump Heating Medium Pump Speed GP1
command: "awk -F: '$1==\"1975\" {print $3}' heatpump.txt"
unit_of_measurement: "%"
scan_interval: 60
device_class: speed
state_class: measurement

- sensor:
name: Heatpump Brine Pump Speed GP2
command: "awk -F: '$1==\"1977\" {print $3}' heatpump.txt"
unit_of_measurement: "%"
scan_interval: 60
device_class: speed
state_class: measurement

- sensor:
name: Heatpump Heating Medium Pump EB100
command: "awk -F: '$1==\"2559\" {print $3}' heatpump.txt"
unit_of_measurement: "%"
scan_interval: 60
device_class: speed
state_class: measurement

- sensor:
name: Heatpump Brine Pump EB100
command: "awk -F: '$1==\"2560\" {print $3}' heatpump.txt"
unit_of_measurement: "%"
scan_interval: 60
device_class: speed
state_class: measurement

# -------------------------
# Electrical / Power
# -------------------------
- sensor:
name: Heatpump Compressor Power Input
command: "awk -F: '$1==\"1801\" {print $3}' heatpump.txt"
unit_of_measurement: "W"
scan_interval: 60
device_class: power
state_class: measurement

- sensor:
name: Heatpump Current Compressor
command: "awk -F: '$1==\"1806\" {print $3}' heatpump.txt"
unit_of_measurement: "mA"
scan_interval: 60
device_class: current
state_class: measurement

- sensor:
name: Heatpump Compressor Power Input Average
command: "awk -F: '$1==\"1932\" {print $3}' heatpump.txt"
unit_of_measurement: "W"
scan_interval: 60
device_class: power
state_class: measurement

# -------------------------
# Compressor Times (hours)
# -------------------------
- sensor:
name: Heatpump Total Run Time Additional Heat
command: "awk -F: '$1==\"1755\" {print $3}' heatpump.txt"
unit_of_measurement: "h"
scan_interval: 60
device_class: duration
state_class: measurement

- sensor:
name: Heatpump Total Run Time Compressor
command: "awk -F: '$1==\"1961\" {print $3}' heatpump.txt"
unit_of_measurement: "h"
scan_interval: 60
device_class: duration
state_class: measurement

- sensor:
name: Heatpump Total Run Time Compressor Hot Water
command: "awk -F: '$1==\"1963\" {print $3}' heatpump.txt"
unit_of_measurement: "h"
scan_interval: 60
device_class: duration
state_class: measurement

- sensor:
name: Heatpump Compressor Oper Time Total EB100-EP15
command: "awk -F: '$1==\"2544\" {print $3}' heatpump.txt"
unit_of_measurement: "h"
scan_interval: 60
device_class: duration
state_class: measurement

- sensor:
name: Heatpump Compressor Oper Time Hot Water EB100-EP15
command: "awk -F: '$1==\"2545\" {print $3}' heatpump.txt"
unit_of_measurement: "h"
scan_interval: 60
device_class: duration
state_class: measurement

- sensor:
name: Heatpump Compressor Oper Time Total EB100-EP14
command: "awk -F: '$1==\"2562\" {print $3}' heatpump.txt"
unit_of_measurement: "h"
scan_interval: 60
device_class: duration
state_class: measurement

- sensor:
name: Heatpump Compressor Oper Time Hot Water EB100-EP14
command: "awk -F: '$1==\"2563\" {print $3}' heatpump.txt"
unit_of_measurement: "h"
scan_interval: 60
device_class: duration
state_class: measurement

Aktuelle Forenbeiträge
Redaktion HTD schrieb: Die anhaltende Uneinigkeit in der bundesdeutschen Förderpolitik...
inki schrieb: Mein Heizungsbauer hat mich gerade informiert, dass Lambda nun...
ANZEIGE
Hersteller-Anzeigen
Tanks, Behälter, Wärmespeicher,
Wassermanager, Grauwasseranlagen
Armaturen und Ventile für die Heizungstechnik
Website-Statistik