hxmelab / node-red-contrib-bosch-shc Goto Github PK
View Code? Open in Web Editor NEWBosch Smart Home Controller (SHC) nodes for Node-Red
Home Page: https://flows.nodered.org/node/node-red-contrib-bosch-shc
License: MIT License
Bosch Smart Home Controller (SHC) nodes for Node-Red
Home Page: https://flows.nodered.org/node/node-red-contrib-bosch-shc
License: MIT License
Hi, is it possible to get events from all devices of a specific type or device services of a specific type? E.g. get all events of plugs? Or get all events of airquality from twinguards?
Hey there!
I know there is a topic which is essentially the same case and there is a solution posted but atm it does not work for me :(
So I am trying to connect the SHC to my Node-RED via the plugin.
I am using Docker/Portainer but there I could not find a solution to my problem either.
Tried it with setting the network-mode to host, restarted it, nothing changed.
Node-RED: v3.0.2 (in Docker container on Raspberry Pi 3)
Bosch-SHC is on the newest update
Hope someone can help me.
Hi hxmelab,
is it possible to send a Stop-Command to a ShutterControl? I was only able to set a level, but not to interrupt the moving of the shutter.
Hi
I'm using node red on a raspi and want to connect to my BSHC. The search does not work, but can ping the BSHC from my raspi. I can enter the IP manually but I can not enter an ID. When I try to pair anyway it says some information is missing.
Any hints? And what is the ID anyway?
Cheers
Wfif
At the moment the device name is provided in msg.topic. I´m also interested to get the devices room name in the msg object.
What I would like to achieve: an easy way to get all my devices in InfluxDB and have a speaking name and room for all devices. At the moment I have for each single device an extra node and grap the device name from the msg.topic. When I filter for all devices and some specific services I loose the device name, and just have the deviceId. That would be ok, if there would be the possibility in NodeRed to fetch all deviceId and according deviceNames from SHC and same for roome: roomId + roomName.
So may the better solution instead of adding room name to message object would be to have a node for requestion room and device names together with their ids.
Hello,
I have the following problem:
After updating the node, node red no longer starts.
Below is the log output at startup
What can I do to make node-red start again?
Microsoft Windows [Version 10.0.22631.3296]
(c) Microsoft Corporation. Alle Rechte vorbehalten.
C:\Users\micha>cd appdata
C:\Users\micha\AppData>cd roaming
C:\Users\micha\AppData\Roaming>cd npm
C:\Users\micha\AppData\Roaming\npm>node.red.cmd
Der Befehl "node.red.cmd" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
C:\Users\micha\AppData\Roaming\npm>node-red.cmd
4 Apr 14:38:18 - [info]
4 Apr 14:38:18 - [info] Node-RED version: v3.0.2
4 Apr 14:38:18 - [info] Node.js version: v14.15.4
4 Apr 14:38:18 - [info] Windows_NT 10.0.22631 x64 LE
4 Apr 14:38:19 - [info] Loading palette nodes
4 Apr 14:38:19 - [debug] Module: @alainx277/node-red-miele 0.1.0 \Users\micha.node-red\node_modules@alainx277\node-red-miele
4 Apr 14:38:19 - [debug] Module: @rotflorg/node-red-contrib-ecoflow-powerstream 0.5.1 \Users\micha.node-red\node_modules@rotflorg\node-red-contrib-ecoflow-powerstream
4 Apr 14:38:19 - [debug] Module: google-translate-tts 0.4.0-dev \Users\micha.node-red\node_modules\google-translate-tts
4 Apr 14:38:19 - [debug] Module: node-red-contrib-boolean-logic 0.0.3 \Users\micha.node-red\node_modules\node-red-contrib-boolean-logic
4 Apr 14:38:19 - [debug] Module: node-red-contrib-boolean-logic-ultimate 1.0.56 \Users\micha.node-red\node_modules\node-red-contrib-boolean-logic-ultimate
4 Apr 14:38:19 - [debug] Module: node-red-contrib-bosch-shc 0.4.31 \Users\micha.node-red\node_modules\node-red-contrib-bosch-shc
4 Apr 14:38:19 - [debug] Module: node-red-contrib-buffer-parser 3.2.2 \Users\micha.node-red\node_modules\node-red-contrib-buffer-parser
4 Apr 14:38:19 - [debug] Module: node-red-contrib-calc 1.0.5 \Users\micha.node-red\node_modules\node-red-contrib-calc
4 Apr 14:38:19 - [debug] Module: node-red-contrib-color-convert 0.0.8 \Users\micha.node-red\node_modules\node-red-contrib-color-convert
4 Apr 14:38:19 - [debug] Module: node-red-contrib-colorspace 1.0.2 \Users\micha.node-red\node_modules\node-red-contrib-colorspace
4 Apr 14:38:19 - [debug] Module: node-red-contrib-credentials 0.2.2 \Users\micha.node-red\node_modules\node-red-contrib-credentials
4 Apr 14:38:19 - [debug] Module: node-red-contrib-dashboard-bar-chart-data 0.9.8 \Users\micha.node-red\node_modules\node-red-contrib-dashboard-bar-chart-data
4 Apr 14:38:19 - [debug] Module: node-red-contrib-daylight-rgbw 2.1.7 \Users\micha.node-red\node_modules\node-red-contrib-daylight-rgbw
4 Apr 14:38:19 - [debug] Module: node-red-contrib-ecoflow 0.9.7 \Users\micha.node-red\node_modules\node-red-contrib-ecoflow
4 Apr 14:38:19 - [debug] Module: node-red-contrib-enocean 0.8.5 \Users\micha.node-red\node_modules\node-red-contrib-enocean
4 Apr 14:38:19 - [debug] Module: node-red-contrib-enocean-esp2 0.0.6 \Users\micha.node-red\node_modules\node-red-contrib-enocean-esp2
4 Apr 14:38:19 - [debug] Module: node-red-contrib-enocean-telegram-decoder 1.0.1 \Users\micha.node-red\node_modules\node-red-contrib-enocean-telegram-decoder
4 Apr 14:38:19 - [debug] Module: node-red-contrib-enoceanip 0.1.2 \Users\micha.node-red\node_modules\node-red-contrib-enoceanip
4 Apr 14:38:19 - [debug] Module: node-red-contrib-float 1.0.3 \Users\micha.node-red\node_modules\node-red-contrib-float
4 Apr 14:38:19 - [debug] Module: node-red-contrib-full-msg-json-schema-validation 1.1.0 \Users\micha.node-red\node_modules\node-red-contrib-full-msg-json-schema-validation
4 Apr 14:38:19 - [debug] Module: node-red-contrib-geofox-api 0.1.3 \Users\micha.node-red\node_modules\node-red-contrib-geofox-api
4 Apr 14:38:19 - [debug] Module: node-red-contrib-homekit-rgb 1.0.3 \Users\micha.node-red\node_modules\node-red-contrib-homekit-rgb
4 Apr 14:38:19 - [debug] Module: node-red-contrib-hue-tunable-white 1.1.1 \Users\micha.node-red\node_modules\node-red-contrib-hue-tunable-white
4 Apr 14:38:19 - [debug] Module: node-red-contrib-huemagic 4.2.2 \Users\micha.node-red\node_modules\node-red-contrib-huemagic
4 Apr 14:38:19 - [debug] Module: node-red-contrib-influxdb 0.6.1 \Users\micha.node-red\node_modules\node-red-contrib-influxdb
4 Apr 14:38:19 - [debug] Module: node-red-contrib-jsonfilter 0.1.0 \Users\micha.node-red\node_modules\node-red-contrib-jsonfilter
4 Apr 14:38:19 - [debug] Module: node-red-contrib-light 1.0.0 \Users\micha.node-red\node_modules\node-red-contrib-light
4 Apr 14:38:19 - [debug] Module: node-red-contrib-modbus 5.26.0 \Users\micha.node-red\node_modules\node-red-contrib-modbus
4 Apr 14:38:19 - [debug] Module: node-red-contrib-modbustcp 1.2.3 \Users\micha.node-red\node_modules\node-red-contrib-modbustcp
4 Apr 14:38:19 - [debug] Module: node-red-contrib-skyremote-new 0.1.2 \Users\micha.node-red\node_modules\node-red-contrib-skyremote-new
4 Apr 14:38:19 - [debug] Module: node-red-contrib-sonospollytts 2.0.8 \Users\micha.node-red\node_modules\node-red-contrib-sonospollytts
4 Apr 14:38:19 - [debug] Module: node-red-contrib-state 1.6.1 \Users\micha.node-red\node_modules\node-red-contrib-state
4 Apr 14:38:19 - [debug] Module: node-red-contrib-sum 0.1.1 \Users\micha.node-red\node_modules\node-red-contrib-sum
4 Apr 14:38:19 - [debug] Module: node-red-contrib-sun-position 2.2.0-beta3 \Users\micha.node-red\node_modules\node-red-contrib-sun-position
4 Apr 14:38:19 - [debug] Module: node-red-contrib-tofloat 1.0.0 \Users\micha.node-red\node_modules\node-red-contrib-tofloat
4 Apr 14:38:19 - [debug] Module: node-red-contrib-tts-ultimate 1.0.50 \Users\micha.node-red\node_modules\node-red-contrib-tts-ultimate
4 Apr 14:38:19 - [debug] Module: node-red-contrib-tuya-smart-device 5.1.0 \Users\micha.node-red\node_modules\node-red-contrib-tuya-smart-device
4 Apr 14:38:19 - [debug] Module: node-red-contrib-ui-iro-color-picker 0.1.6 \Users\micha.node-red\node_modules\node-red-contrib-ui-iro-color-picker
4 Apr 14:38:19 - [debug] Module: node-red-dashboard 3.5.0 \Users\micha.node-red\node_modules\node-red-dashboard
4 Apr 14:38:19 - [debug] Module: node-red-node-openweathermap 0.5.1 \Users\micha.node-red\node_modules\node-red-node-openweathermap
4 Apr 14:38:19 - [debug] Module: node-red-node-random 0.4.1 \Users\micha.node-red\node_modules\node-red-node-random
4 Apr 14:38:19 - [debug] Module: node-red-node-serialport 1.0.3 \Users\micha.node-red\node_modules\node-red-node-serialport
4 Apr 14:38:19 - [debug] Module: node-red-node-tail 0.3.2 \Users\micha.node-red\node_modules\node-red-node-tail
4 Apr 14:38:19 - [debug] Module: nr-strompreis 1.0.0 \Users\micha.node-red\node_modules\nr-strompreis
4 Apr 14:38:19 - [debug] Module: json-db-node-red 0.5.3 C:\Users\micha\node_modules\json-db-node-red
4 Apr 14:38:19 - [debug] ! Module: node-red-contrib-bosch-shc 0.3.25 C:\Users\micha\node_modules\node-red-contrib-bosch-shc ignored due to local copy
4 Apr 14:38:19 - [debug] Module: node-red-contrib-json 0.2.0 C:\Users\micha\node_modules\node-red-contrib-json
4 Apr 14:38:22 - [info] Dashboard version 3.5.0 started at /ui
4 Apr 14:38:22 - [info] Settings file : C:\Users\micha.node-red\settings.js
4 Apr 14:38:22 - [info] Context store : 'default' [module=localfilesystem]
4 Apr 14:38:22 - [info] User directory : \Users\micha.node-red
4 Apr 14:38:22 - [warn] Projects disabled : editorTheme.projects.enabled=false
4 Apr 14:38:22 - [warn] Flows file name not set. Generating name using hostname.
4 Apr 14:38:22 - [info] Flows file : \Users\micha.node-red\flows_WSMD01.json
4 Apr 14:38:22 - [debug] loaded flow revision: 7583d62c8f1ceb5c27e2e0a21544fa69
4 Apr 14:38:22 - [debug] red/runtime/nodes/credentials.load : no user key present
4 Apr 14:38:22 - [debug] red/runtime/nodes/credentials.load : using default key
4 Apr 14:38:22 - [debug] red/runtime/nodes/credentials.load : keyType=system
4 Apr 14:38:22 - [warn]
Your flow credentials file is encrypted using a system-generated key.
If the system-generated key is lost for any reason, your credentials
file will not be recoverable, you will have to delete it and re-enter
your credentials.
4 Apr 14:38:22 - [info] Server now running at http://127.0.0.1:1880/
4 Apr 14:38:22 - [info] Starting flows
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : global
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 593a85b4.6a767c
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 32f6f8da36fc32c4
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : e0af9963.0d7968
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 4c782aa344103c77
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : f3f675617868bd08
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 3517b1eac4a6f855
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 25ed9911.fab896
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 7e16d47e.426bec
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 3968c7e3.f7c908
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 89d61cf.f984ae
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : c61d4a81.eb89f8
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : b759a05d.b66c5
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 6b15d3b0.d6b42c
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : ca7c2a8c26593921
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 047cabf3b01a38b4
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : e96a871b3627b615
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 82fe13c52934dda0
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 2d80d0e879331701
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 511dbef953fcdc92
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : d9df8445fff9cd76
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 83cc87bb0d227cfe
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 50b3e16823bf05ab
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 8af171e5c452924a
4 Apr 14:38:22 - [debug] red/nodes/flows.start : not starting disabled flow : e0dd44b7.b17f88
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : a6d29d13.3c30c
4 Apr 14:38:22 - [debug] red/nodes/flows.start : starting flow : 7bfc25e6d0f5de5e
4 Apr 14:38:22 - [info] [miele-config:Waschmaschine] Fetching Miele API token
4 Apr 14:38:22 - [info] [miele-config:Waschmaschine] Authenticated with Miele API
4 Apr 14:38:22 - [debug] [inject:cb3d7d284a9e7b76] repeat = 3600000
4 Apr 14:38:22 - [debug] [inject:967e8805.289488] repeat = 10000
4 Apr 14:38:22 - [debug] [inject:4da80c5c97c57659] repeat = 20000
4 Apr 14:38:22 - [debug] [inject:bfc20ae1fce10669] repeat = 10000
4 Apr 14:38:22 - [debug] [inject:50a081b9a5b24bba] repeat = 15000
4 Apr 14:38:22 - [debug] [inject:a0a8da6c8c26c701] repeat = 15000
4 Apr 14:38:22 - [debug] [inject:6ec4ee28da2d7028] repeat = 10000
4 Apr 14:38:22 - [debug] [inject:dbecab38996ec535] repeat = 15000
4 Apr 14:38:22 - [info] Started flows
(node:21960) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to '0' makes TLS connections and HTTPS requests insecure by disabling certificate verification.
(Use node --trace-warnings ...
to show where the warning was created)
4 Apr 14:38:22 - [debug] [inject:c0629413c3ca6379] repeat = 300000
4 Apr 14:38:22 - [info] [enocean-config-node:240c5ec1127cd57d] port opened
4 Apr 14:38:22 - [info] [enocean-config-node:240c5ec1127cd57d] Your BaseID is fffdd380
4 Apr 14:38:22 - [info] [mqtt-broker:Ecoflow mqtt] Connected to broker: ANDROID_FF12A24A-B3D1-3719-9314-DF617C735742_1526082573203865602@mqtts://mqtt.ecoflow.com
4 Apr 14:38:23 - [info] [mqtt-broker:supla] Connected to broker: mqtts://mqtt66.supla.org:8883
(node:21960) UnhandledPromiseRejectionWarning: Error: Request failed with status code 401
at createError (C:\Users\micha.node-red\node_modules\axios\lib\core\createError.js:16:15)
at settle (C:\Users\micha.node-red\node_modules\axios\lib\core\settle.js:17:12)
at IncomingMessage.handleStreamEnd (C:\Users\micha.node-red\node_modules\axios\lib\adapters\http.js:322:11)
at IncomingMessage.emit (events.js:327:22)
at IncomingMessage.EventEmitter.emit (domain.js:467:12)
at endReadableNT (internal/streams/readable.js:1327:12)
at processTicksAndRejections (internal/process/task_queues.js:80:21)
(node:21960) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict
(see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
(node:21960) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
4 Apr 14:38:23 - [info] [shc-config:9ecabc82.cab5] Long polling SHC: 192.168.2.108 with poll Id: fd7hd7jhi-5
4 Apr 14:38:27 - [debug] [inject:ac33f8c010b28004] repeat = 10000
4 Apr 14:38:27 - [debug] [inject:6eb2b29fd90f14f4] repeat = 15000
4 Apr 14:38:27 - [debug] [inject:01005674b4435c67] repeat = 30000
4 Apr 14:38:28 - [red] Uncaught Exception:
4 Apr 14:38:28 - [error] TypeError: Object.hasOwn is not a function
at SHCDeviceNode.setMsgObject (C:\Users\micha.node-red\node_modules\node-red-contrib-bosch-shc\nodes\shc-device.js:111:42)
at Object.next (C:\Users\micha.node-red\node_modules\node-red-contrib-bosch-shc\nodes\shc-device.js:81:47)
at ConsumerObserver.next (C:\Users\micha.node-red\node_modules\rxjs\src\internal\Subscriber.ts:161:25)
at SafeSubscriber.Subscriber._next (C:\Users\micha.node-red\node_modules\rxjs\src\internal\Subscriber.ts:119:22)
at SafeSubscriber.Subscriber.next (C:\Users\micha.node-red\node_modules\rxjs\src\internal\Subscriber.ts:75:12)
at IncomingMessage. (C:\Users\micha.node-red\node_modules\bosch-smart-home-bridge\dist\api\abstract-bshc-client.js:152:38)
at IncomingMessage.emit (events.js:327:22)
at IncomingMessage.EventEmitter.emit (domain.js:467:12)
at endReadableNT (internal/streams/readable.js:1327:12)
at processTicksAndRejections (internal/process/task_queues.js:80:21)
C:\Users\micha\AppData\Roaming\npm>
Hey hymelab,
thanks for deploy the bosch smart home plugin for nodered.
When i search my Smart Home Controller - Press the Button till the lights are blinking - i become the follow message:
Searching SHCs in local network, please wait...
No SHC found in local network
Do you have any idea?
Thank you :D
The Bosch MB LANi gateway exposes Junker and Bosch heaters to Bosch SHC with deviceModel name "HEATING_CIRCUIT" and a HeatingSystemInformation service as parent.
{ "@type": "device", "rootDeviceId": "64-da-a0-02-8a-b2", "id": "hdm:ICom:0404200XX", "deviceServiceIds": [ "HeatingSystemInformation" ], "manufacturer": "JUNKERS", "roomId": "hz_4", "deviceModel": "LOGAMATIC_WEB_KM200", "serial": "0404200XX", "profile": "GENERIC", "name": "MB LANi", "status": "AVAILABLE", "childDeviceIds": [ "hdm:ICom:0404200XX:HC1", "hdm:ICom:0404200XX:HC2" ] },
Each heating circuit with a separate pump is labelled HC1, HC2 and so on and has its own device created. Here is the example for HC1:
{ "@type": "device", "rootDeviceId": "64-da-a0-02-8a-b2", "id": "hdm:ICom:0404200XX:HC1", "deviceServiceIds": [ "HeatingCircuit" ], "manufacturer": "JUNKERS", "roomId": "hz_10", "deviceModel": "HEATING_CIRCUIT", "serial": "0404200XXHC1", "profile": "GENERIC", "properties": { "heater.type": "RADIATOR" }, "name": "Heater Circuit 1", "status": "AVAILABLE", "parentDeviceId": "hdm:ICom:0404200XX", "childDeviceIds": [] },
The service is called via /services/HeatingCircuit/state
Example output:
{ "@type": "heatingCircuitState", "operationMode": "AUTOMATIC", "setpointTemperature": 22.0, "setpointTemperatureForLevelEco": 15.0, "setpointTemperatureForLevelComfort": 22.0, "schedule": { "profiles": [ { "day": "MONDAY", "switchPoints": [ { "startTimeMinutes": 0, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } }, { "startTimeMinutes": 300, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "COMFORT" } }, { "startTimeMinutes": 1290, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } } ] }, { "day": "TUESDAY", "switchPoints": [ { "startTimeMinutes": 0, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } }, { "startTimeMinutes": 300, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "COMFORT" } }, { "startTimeMinutes": 1290, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } } ] }, { "day": "WEDNESDAY", "switchPoints": [ { "startTimeMinutes": 0, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } }, { "startTimeMinutes": 300, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "COMFORT" } }, { "startTimeMinutes": 1290, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } } ] }, { "day": "THURSDAY", "switchPoints": [ { "startTimeMinutes": 0, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } }, { "startTimeMinutes": 300, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "COMFORT" } }, { "startTimeMinutes": 1290, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } } ] }, { "day": "FRIDAY", "switchPoints": [ { "startTimeMinutes": 0, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } }, { "startTimeMinutes": 300, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "COMFORT" } }, { "startTimeMinutes": 1290, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } } ] }, { "day": "SATURDAY", "switchPoints": [ { "startTimeMinutes": 0, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } }, { "startTimeMinutes": 390, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "COMFORT" } }, { "startTimeMinutes": 1320, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } } ] }, { "day": "SUNDAY", "switchPoints": [ { "startTimeMinutes": 0, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } }, { "startTimeMinutes": 390, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "COMFORT" } }, { "startTimeMinutes": 1320, "value": { "@type": "temperatureLevelSwitchPointValue", "temperatureLevel": "ECO" } } ] } ] }, "temperatureOverrideModeActive": false, "temperatureOverrideFeatureEnabled": true, "energySavingFeatureEnabled": false, "comfortTemperatureRange": { "minTemperature": 15.5, "maxTemperature": 30.0 }, "ecoTemperatureRange": { "minTemperature": 5.0, "maxTemperature": 21.5 }, "setPointTemperatureRange": { "minTemperature": 5.0, "maxTemperature": 30.0 }, "on": true }
It would be great, if this could be supported, so we could read "setpointTemperature" values into NodeRed flows. Of course I can test this with my setup.
Currently I don't think it is possible to change setpointTemperature via REST API.
Hi,
I like your Bosch Smart Home nodes !
would it be possible to get the device name (additionally to deviceId) in msg.topic?
would it be possible to get the temperature and the valve position for each thermostat in msg.topic?
Thank you in advance
Best regards
Gabriel
Hello,
I have updated node.js. Now I have the problem that node red hangs on startup. Attached is the log at startup.
5 Apr 16:53:02 - [info] Node-RED version: v3.0.2
5 Apr 16:53:02 - [info] Node.js version: v20.12.1
5 Apr 16:53:02 - [info] Windows_NT 10.0.22631 x64 LE
5 Apr 16:53:03 - [info] Loading palette nodes
5 Apr 16:53:04 - [debug] Module: @alainx277/node-red-miele 0.1.0 \Users\micha.node-red\node_modules@alainx277\node-red-miele
5 Apr 16:53:04 - [debug] Module: @rotflorg/node-red-contrib-ecoflow-powerstream 0.5.1 \Users\micha.node-red\node_modules@rotflorg\node-red-contrib-ecoflow-powerstream
5 Apr 16:53:04 - [debug] Module: google-translate-tts 0.4.0-dev \Users\micha.node-red\node_modules\google-translate-tts
5 Apr 16:53:04 - [debug] Module: node-red-contrib-boolean-logic 0.0.3 \Users\micha.node-red\node_modules\node-red-contrib-boolean-logic
5 Apr 16:53:04 - [debug] Module: node-red-contrib-boolean-logic-ultimate 1.0.56 \Users\micha.node-red\node_modules\node-red-contrib-boolean-logic-ultimate
5 Apr 16:53:04 - [debug] Module: node-red-contrib-bosch-shc 0.4.31 \Users\micha.node-red\node_modules\node-red-contrib-bosch-shc
5 Apr 16:53:04 - [debug] Module: node-red-contrib-buffer-parser 3.2.2 \Users\micha.node-red\node_modules\node-red-contrib-buffer-parser
5 Apr 16:53:04 - [debug] Module: node-red-contrib-calc 1.0.5 \Users\micha.node-red\node_modules\node-red-contrib-calc
5 Apr 16:53:04 - [debug] Module: node-red-contrib-color-convert 0.0.8 \Users\micha.node-red\node_modules\node-red-contrib-color-convert
5 Apr 16:53:04 - [debug] Module: node-red-contrib-colorspace 1.0.2 \Users\micha.node-red\node_modules\node-red-contrib-colorspace
5 Apr 16:53:04 - [debug] Module: node-red-contrib-credentials 0.2.2 \Users\micha.node-red\node_modules\node-red-contrib-credentials
5 Apr 16:53:04 - [debug] Module: node-red-contrib-dashboard-bar-chart-data 0.9.8 \Users\micha.node-red\node_modules\node-red-contrib-dashboard-bar-chart-data
5 Apr 16:53:04 - [debug] Module: node-red-contrib-daylight-rgbw 2.1.7 \Users\micha.node-red\node_modules\node-red-contrib-daylight-rgbw
5 Apr 16:53:04 - [debug] Module: node-red-contrib-ecoflow 0.9.7 \Users\micha.node-red\node_modules\node-red-contrib-ecoflow
5 Apr 16:53:04 - [debug] Module: node-red-contrib-enocean 0.8.5 \Users\micha.node-red\node_modules\node-red-contrib-enocean
5 Apr 16:53:04 - [debug] Module: node-red-contrib-enocean-esp2 0.0.6 \Users\micha.node-red\node_modules\node-red-contrib-enocean-esp2
5 Apr 16:53:04 - [debug] Module: node-red-contrib-enocean-telegram-decoder 1.0.1 \Users\micha.node-red\node_modules\node-red-contrib-enocean-telegram-decoder
5 Apr 16:53:04 - [debug] Module: node-red-contrib-enoceanip 0.1.2 \Users\micha.node-red\node_modules\node-red-contrib-enoceanip
5 Apr 16:53:04 - [debug] Module: node-red-contrib-float 1.0.3 \Users\micha.node-red\node_modules\node-red-contrib-float
5 Apr 16:53:04 - [debug] Module: node-red-contrib-full-msg-json-schema-validation 1.1.0 \Users\micha.node-red\node_modules\node-red-contrib-full-msg-json-schema-validation
5 Apr 16:53:04 - [debug] Module: node-red-contrib-geofox-api 0.1.3 \Users\micha.node-red\node_modules\node-red-contrib-geofox-api
5 Apr 16:53:04 - [debug] Module: node-red-contrib-homekit-rgb 1.0.3 \Users\micha.node-red\node_modules\node-red-contrib-homekit-rgb
5 Apr 16:53:04 - [debug] Module: node-red-contrib-hue-tunable-white 1.1.1 \Users\micha.node-red\node_modules\node-red-contrib-hue-tunable-white
5 Apr 16:53:04 - [debug] Module: node-red-contrib-huemagic 4.2.2 \Users\micha.node-red\node_modules\node-red-contrib-huemagic
5 Apr 16:53:04 - [debug] Module: node-red-contrib-influxdb 0.6.1 \Users\micha.node-red\node_modules\node-red-contrib-influxdb
5 Apr 16:53:04 - [debug] Module: node-red-contrib-jsonfilter 0.1.0 \Users\micha.node-red\node_modules\node-red-contrib-jsonfilter
5 Apr 16:53:04 - [debug] Module: node-red-contrib-light 1.0.0 \Users\micha.node-red\node_modules\node-red-contrib-light
5 Apr 16:53:04 - [debug] Module: node-red-contrib-modbus 5.26.0 \Users\micha.node-red\node_modules\node-red-contrib-modbus
5 Apr 16:53:04 - [debug] Module: node-red-contrib-modbustcp 1.2.3 \Users\micha.node-red\node_modules\node-red-contrib-modbustcp
5 Apr 16:53:04 - [debug] Module: node-red-contrib-skyremote-new 0.1.2 \Users\micha.node-red\node_modules\node-red-contrib-skyremote-new
5 Apr 16:53:04 - [debug] Module: node-red-contrib-sonospollytts 2.0.8 \Users\micha.node-red\node_modules\node-red-contrib-sonospollytts
5 Apr 16:53:04 - [debug] Module: node-red-contrib-state 1.6.1 \Users\micha.node-red\node_modules\node-red-contrib-state
5 Apr 16:53:04 - [debug] Module: node-red-contrib-sum 0.1.1 \Users\micha.node-red\node_modules\node-red-contrib-sum
5 Apr 16:53:04 - [debug] Module: node-red-contrib-sun-position 2.2.0-beta3 \Users\micha.node-red\node_modules\node-red-contrib-sun-position
5 Apr 16:53:04 - [debug] Module: node-red-contrib-tofloat 1.0.0 \Users\micha.node-red\node_modules\node-red-contrib-tofloat
5 Apr 16:53:04 - [debug] Module: node-red-contrib-tts-ultimate 1.0.50 \Users\micha.node-red\node_modules\node-red-contrib-tts-ultimate
5 Apr 16:53:04 - [debug] Module: node-red-contrib-tuya-smart-device 5.1.0 \Users\micha.node-red\node_modules\node-red-contrib-tuya-smart-device
5 Apr 16:53:04 - [debug] Module: node-red-contrib-ui-iro-color-picker 0.1.6 \Users\micha.node-red\node_modules\node-red-contrib-ui-iro-color-picker
5 Apr 16:53:04 - [debug] Module: node-red-dashboard 3.5.0 \Users\micha.node-red\node_modules\node-red-dashboard
5 Apr 16:53:04 - [debug] Module: node-red-node-openweathermap 0.5.1 \Users\micha.node-red\node_modules\node-red-node-openweathermap
5 Apr 16:53:04 - [debug] Module: node-red-node-random 0.4.1 \Users\micha.node-red\node_modules\node-red-node-random
5 Apr 16:53:04 - [debug] Module: node-red-node-serialport 1.0.3 \Users\micha.node-red\node_modules\node-red-node-serialport
5 Apr 16:53:04 - [debug] Module: node-red-node-tail 0.3.2 \Users\micha.node-red\node_modules\node-red-node-tail
5 Apr 16:53:04 - [debug] Module: nr-strompreis 1.0.0 \Users\micha.node-red\node_modules\nr-strompreis
5 Apr 16:53:04 - [debug] Module: json-db-node-red 0.5.3 C:\Users\micha\node_modules\json-db-node-red
5 Apr 16:53:04 - [debug] ! Module: node-red-contrib-bosch-shc 0.3.25 C:\Users\micha\node_modules\node-red-contrib-bosch-shc ignored due to local copy
5 Apr 16:53:04 - [debug] Module: node-red-contrib-json 0.2.0 C:\Users\micha\node_modules\node-red-contrib-json
5 Apr 16:53:11 - [info] Dashboard version 3.5.0 started at /ui
5 Apr 16:53:11 - [warn] ------------------------------------------------------
5 Apr 16:53:11 - [warn] [node-red-contrib-enocean/enocean-config-node] Error: The module '\?\C:\Users\micha.node-red\node_modules@serialport\bindings\build\Release\bindings.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 83. This version of Node.js requires
NODE_MODULE_VERSION 115. Please try re-compiling or re-installing
the module (for instance, using npm rebuild
or npm install
).
5 Apr 16:53:11 - [warn] ------------------------------------------------------
5 Apr 16:53:11 - [info] Settings file : C:\Users\micha.node-red\settings.js
5 Apr 16:53:11 - [info] Context store : 'default' [module=localfilesystem]
5 Apr 16:53:11 - [info] User directory : \Users\micha.node-red
5 Apr 16:53:11 - [warn] Projects disabled : editorTheme.projects.enabled=false
5 Apr 16:53:11 - [warn] Flows file name not set. Generating name using hostname.
5 Apr 16:53:11 - [info] Flows file : \Users\micha.node-red\flows_WSMD01.json
5 Apr 16:53:11 - [info] Server now running at http://127.0.0.1:1880/
5 Apr 16:53:11 - [debug] loaded flow revision: 7583d62c8f1ceb5c27e2e0a21544fa69
5 Apr 16:53:11 - [debug] red/runtime/nodes/credentials.load : no user key present
5 Apr 16:53:11 - [debug] red/runtime/nodes/credentials.load : using default key
5 Apr 16:53:11 - [debug] red/runtime/nodes/credentials.load : keyType=system
5 Apr 16:53:11 - [warn]
Your flow credentials file is encrypted using a system-generated key.
If the system-generated key is lost for any reason, your credentials
file will not be recoverable, you will have to delete it and re-enter
your credentials.
5 Apr 16:53:11 - [info] Waiting for missing types to be registered:
5 Apr 16:53:11 - [info] - enocean-config-node
Hello Philippe - I had a Skype with Mr. Volker Grahn regarding Node-Red shc today.
https://flows.nodered.org/node/node-red-contrib-bosch-shc
What he misses are the demo flows which you e.g. once here
https://sourcecode.socialcoding.bosch.com/projects/IT/repos/intouch.project.smarthome.nodered.sh/browse/nodes
have filed. These are no longer up to date.
Have you or can you send us a few training or demo nodes at short notice or anchor them in Node-Red ORG
which work with the latest version?
Would be great.
Thank you.
Hallo Philippe – ich hatte heute ein Skype mit Herrn Volker Grahn bezüglich Node-Red shc.
https://flows.nodered.org/node/node-red-contrib-bosch-shc
Was er vermisst sind die Demo Flows welche Ihr z.B. einmal hier
https://sourcecode.socialcoding.bosch.com/projects/IT/repos/intouch.project.smarthome.nodered.sh/browse/nodes
abgelegt habt. Diese sind ja nicht mehr auf dem neusten Stand.
Hast du bzw. kannst du uns kurzfristig ein paar Schulungs bzw. Demo Nodes zusenden bzw. diese in Node-Red ORG verankern
welche mit der neusten Version arbeiten ?
Wäre prima.
Danke.
Hey,
on Path "/devices/roomClimateControl_hz_4/services/TemperatureLevel" i only get the temperature that is there in the room. Is it somehow possible to also get the temperature which is currently set?
Nodes go offline (status: "disconnected") after hours/days of usage.
Might be because to receiving an upload on the smart home controller? Nodes never recovered even BOSCH system ist working fine. Restart or re-deploy without any other changes successfully reconnected the nodes.
12 Jan 17:42:52 - [info] [shc-config:36aa8089.711ec8] Long polling SHC: XXX.XX.XXX.XX with poll Id: e7ejd3chh-342
15 Jan 07:44:47 - [error] [shc-config:36aa8089.711ec8] Error: connect EHOSTUNREACH XXX.XX.XXX.XX:8444
15 Jan 07:45:10 - [error] [shc-config:36aa8089.711ec8] Error: connect EHOSTUNREACH XXX.XX.XXX.XX:8444
15 Jan 07:45:33 - [error] [shc-config:36aa8089.711ec8] Error: connect EHOSTUNREACH XXX.XX.XXX.XX:8444
15 Jan 07:45:56 - [error] [shc-config:36aa8089.711ec8] Error: connect EHOSTUNREACH XXX.XX.XXX.XX:8444
15 Jan 07:46:19 - [error] [shc-config:36aa8089.711ec8] Error: connect EHOSTUNREACH XXX.XX.XXX.XX:8444
15 Jan 07:46:43 - [error] [shc-config:36aa8089.711ec8] Error: connect EHOSTUNREACH XXX.XX.XXX.XX:8444
Support for API 2.x will be dropped later this year.
Please migrate to API 3.2 or later, see https://github.com/BoschSmartHome/bosch-shc-api-docs/blob/master/CHANGELOG.md#320---2022-12-09.
On entering shc IP adress and password, I always receive
cannot get /shc/tls
cannot get /shc/id
Support for API 1.0 is dropped, see BoschSmartHome/bosch-shc-api-docs#46
Migration to 2.1 is required.
Hey hxmelab,
Thanks a lot for your great node RED implementation of the BSH controller! Now I am able to control contact sensors and rollershutters and forward their state in OpenHab using simple flows.
I also own two TRVs. Reading temperature levels from the TRVs works fine. When I try to change their temperature by simple injecting a number like 20, I do not get any response from the TRV except for the output of the current temperature (I tested this in automatic and manual mode of the TRV). Is there anything I have to consider here?
And is there any option to read the TargetTemperature (ie. the number displayed) from the device instead to see whether the injection was accepted?
Bosch changed the REST API from 2.x to 3.2. The node-red-contrib-bosch-shc is no longer working. Please update it.
Hello, I have the current Node Red installed on an Intel NUC which also has Home a
Assistant is running. The controller is found in Node Red. Unfortunately, when I try to pair, I get the error (400 Bad Request). Password is correct and I have activated the controller for pairing. Is the error known?
Hello Phil,
Thanks for your great work and adding support for THB (battery powered wall thermostat) with #28
It is possible to add the mains-powered BWTH devices as well in Node Red? I recently purchased one device. My REST API output:
"manufacturer": "BOSCH", "roomId": "hz_10", "deviceModel": "BWTH", "serial": "3014F711A000239BB858E68B", "profile": "GENERIC", "name": "Thermostat", "status": "AVAILABLE", "parentDeviceId": "roomClimateControl_hz_10", "childDeviceIds": []
They also support humidity according to the REST api:
{ "@type": "humidityLevelState", "humidity": 42.0 }
I guess extending function isSupported(model) {
with adding 'BWTH' should do the trick?
Thanks!
jensflorian
Hi,
I'm running the provided node-red docker container with version 3.0.2.
Version of the node-red-contrib-bosch-shc is in version 0.3.28.
I have set up the connection to the bosch smart home controller successfully and the device node discovers all my rooms and my hue lamps.
Unfortunately I'm not able to find my door/window sensors
Am I doing something wrong or are the sensors not yet supported?
If it is not yet supported, is it already planned?
Hello,
I hope I'm in the right place...
I'm trying to connect the SHC Device Node to my SHC Device.
Unfortunately I'm not able to establish a connection.
Everytime I give it try I get the error that the Password isn't correct, eventhough I changed it on both sides.
I hope my problem is somewhat clear.
thx
Ralf
Hi @hxmelab and thanks for developing this integration which I was looking for since some years.
Unfortunately I can not use it.
After configuring the properties of my Smart Home Controller in Node-Red, I always get "ERROR - please check password" when trying to pair with my Controller. I have now changed the System password three times but am still getting this error message.
Is this a known bug? Any ideas what to do?
My environment:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.