ioBroker HomeMatic IP Cloud AccessPoint Adapter
This adapter uses Sentry libraries to automatically report exceptions and code errors to the developers. For more details and for information how to disable the error reporting see Sentry-Plugin Documentation! Sentry reporting is used starting with js-controller 3.0.
This adapter allows to communicate with a HomematicIP CloudAccessPoint via the Rest API of the Homematic IP Cloud
Important note: Please limit control requests to the bare minimum because EQ-3 started to block IPs when you do too much!
This Adapter needs node-js in version >= 8.6
Here a Step-by-Step Installation Video on YouTube https://youtu.be/kXWfJRUYJIA
Most Homematic IP devices are already working with the latest adapter version.
I will improve it constantly, but it will take time. Any help from the community thru e.g. Pull Request would be highly appreciated.
For not working HmIP devices, please create an issue with this info (please one per device and if possible the technical name in the subject). Switch adapter logging in ioBroker to silly mode and add the json of the device which is printed to the log in the issue. I may also need a json of a state change.
If you are looking for the information, if the alarm settings are active you have to check the active status of the group INTERNAL and EXTERNAL, they represent in combination the three alarm states. INTERNAL and EXTERNAL actives means Away, only EXTERNAL active means only Perimeter active.
Important Info what can be done with this adapter
!!! You can only trigger events with this adapter that can be triggered through the original Homematic IP app. For example direct connections between devices have no events in the app and can also not be triggert through this adapter!!!
- enter your SGTIN (back of the Access Point) and the PIN (if set before), and validate the data via press of the blue LED Button. This will create an Authentication token.
to coreGreenberet for his python lib (https://github.com/coreGreenberet/homematicip-rest-api)
Diskussion in ioBroker Forum
Adapter Request auf GitHub
- (Apollon77) Fix a warning in js-controller 3.3
- (Apollon77) Implement NOTIFICATION_MP3_SOUND_CHANNEL
- (Apollon77) IMPORTANT: The adapter now requires js-controller 3.1 at least!
- (Apollon77) Update objects on startup to make sure definition is current
- (Apollon77) prevent warnings in js-controller 3.3
- (Apollon77) Implement CARBON_DIOXIDE_SENSOR_CHANNEL
- (Apollon77) Implement TEMPERATURE_SENSOR_2_EXTERNAL_DELTA_CHANNEL, DOOR_LOCK_CHANNEL and ACCESS_AUTHORIZATION_CHANNEL
- (Apollon77) Round temperature values to nearest 0.5 degrees
- (Apollon77) Only send values to HMIP when changed (reduce traffic!)
- (Apollon77) Add debouncing to setPointTemperature changes (means value is sent out when "stable" for 5s!) (reduce traffic!)
- (Apollon77) Add throttling to other change requests (means other changes are blocked for 1s) (reduce traffic!)
- (Apollon77) Implement ANALOG_ROOM_CONTROL_CHANNEL (Sentry IOBROKER-HMIP-1X)
- (Apollon77) Try to detect websocket connection failures start over
- (Apollon77) add Heating Absence Permanent state and functionality
- (Apollon77) add support for MULTI_MODE_INPUT_BLIND_CHANNEL
- (Apollon77) Add check when HMIP domain could not be determined.
- (Apollon77) Prevent crash case (Sentry IOBROKER-HMIP-1N)
- Important note: Please limit control requests to the bare minimum because EQ-3 started to block IPs when you do too much!
- (Apollon77) Add support for WALL_MOUNTED_THERMOSTAT_CHANNEL
- (Apollon77) ignore DEVICE_CHANNEL_EVENT for now and also log as debug to not flood log
- (Apollon77) Add control options for primary/secondaryShadingLevel datapoints
- (Apollon77) fix potential crash case (Sentry IOBROKER-HMIP-1N)
- (Apollon77) Add ROTARY_WHEEL_CHANNEL and RAIN_DETECTION_CHANNEL, ACCESS_CONTROLLER_WIRED_CHANNEL
- (Apollon77) Read home anew if no home object is provided for SECURITY_JOURNAL_CHANGED event
- (Apollon77) Fix missing write permission for Notification Light "On" channel
- (SliX185) Add MAINS_FAILURE_CHANNEL
- (Apollon77) Add DEVICE_RECHARGEABLE_WITH_SABOTAGE, ACCESS_CONTROLLER_CHANNEL, FLOOR_TERMINAL_BLOCK_MECHANIC_CHANNEL, DEVICE_BASE_FLOOR_HEATING, MULTI_MODE_INPUT_DIMMER_CHANNEL, MULTI_MODE_INPUT_SWITCH_CHANNEL, ANALOG_OUTPUT_CHANNEL, ACCELERATION_SENSOR_CHANNEL, TILT_VIBRATION_SENSOR_CHANNEL, SHADING_CHANNEL
- (Apollon77) try to add dim/rgb support for NotificationLight. You might need to delete/recreate the states if it is not working.
- (Apollon77) add additional functions for setOperationLock, setClimateControlDisplay, setMinimumFloorHeatingValvePosition, setRgbDimLevel. You might need to delete/recreate the states if it is not working.
- (Apollon77) adjusted some roles. You might need to delete/recreate the states if it is not working.
- (Apollon77) Prevent Crash case (Sentry IOBROKER-HMIP-1B)
- (Apollon77) Fix pairing process
- (saschaabraham) Added an active property INTERNAL and EXTERNAL groups for alarm zones
- (marcus0303/slix185) added DOOR_CHANNEL properties
- (Apollon77) Crash prevented if object is deleted by state changed (Sentry IOBROKER-HMIP-Y)
- (Apollon77) Remember already sent unknown channel infos to not spam Sentry
- (Apollon77) Handle reconnects better (Sentry IOBROKER-HMIP-G)
- (Apollon77) Try to prevent crashes on i valid server reponses, warning is logged
- (SliX185) Add HMIP-SPDR (PASSAGE_DETECTOR_CHANNEL)
- (Apollon77) Make sure invalid data do not crash adapter (Sentry IOBROKER-HMIP-7)
- (Apollon77) code cleanup
- (Apollon77) fix several roles (role info is not allowed)
- (Apollon77) Add Sentry for error/crash reporting
- (Apollon77) multiple fixes and optimizations
- (Apollon77) prevent adapter crashes in some places
- (ApolloSK) add vaporAmount for WeatherSensorPro
- (ApolloSK) fix HmIP-SWO-PR wrong DataType actualTemperature
- (marcus0303) Added DEVICE_GLOBAL_PUMP_CONTROL, FLOOR_TERMINAL_BLOCK_LOCAL_PUMP_CHANNEL and DEVICE_INCORRECT_POSITIONED, Fixed role in _createWaterSensorChannel and function call in _createWeatherSensorPlusChannel
- (marcus0303) Added CONTACT_INTERFACE_CHANNEL for HmIP-SCI (see Issue #70 ), Added FLOOR_TERMINAL_BLOCK_CHANNEL, HEAT_DEMAND_CHANNEL, DEHUMIDIFIER_DEMAND_CHANNEL, CHANGE_OVER_CHANNEL, but without functionality, because it's not implemented in REST-API. Only to supress Warnings in Log.
- (jogibear9988) multiple fixes
- (jogibear9988) multiple fixes
- (jogibear9988) added ping/pong, enable setBoots, more units, more hardware
- (jogibear9988) fullrx and operationlock channel
- (jogibear9988) fixes a few devices
- (jogibear9988) fixes wrong state handling
- (jogibear9988) fixes for more devices, alarm handling
- (jogibear9988) more devices and big refactoring (switched from DeviceType to FunctionalChannelType)
- (jogibear9988) more devices, bugfixes. thanks to TobiasF1986, steckenpferd and Ma-ster77
- (jogibear9988) bugfixes and more devices
- (jogibear9988) bugfixes, more devices and initial support of groups
- (jogibear9988) initial release
The MIT License (MIT)
Copyright (c) 2018-2021 jogibear9988 email@example.com, Apollon77
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.