|
// MDAR Limited - Velbus openHAB Items template (generic, per-room/per-module catalogue) |
|
// AAA_OH5_Generic_template Alexa V3.items |
|
// |
|
// FOLDER: this file MUST live in $OPENHAB_CONF/items/ - openHAB scans config |
|
// folders by name, not by file content, so a .items file placed anywhere |
|
// else (or a non-.items file placed in items/) will not load. This is the |
|
// underlying reason the files in this collection cannot be merged across |
|
// type - .things content belongs only in things/, .rules only in rules/, |
|
// .items only in items/, regardless of how related their content is. |
|
// |
|
// ============================================================================ |
|
// HOW THE FILES IN THIS COLLECTION RELATE TO EACH OTHER |
|
// ============================================================================ |
|
// velbusbridge1.things -> defines the Bridge Thing. Every channel string |
|
// below starts with the bridge instance name |
|
// chosen there (default: VelbusNetworkBridge). |
|
// THIS FILE -> per-module Item templates. Copy the block(s) for |
|
// the modules actually fitted, find/replace the |
|
// address segment and room-derived name prefix. |
|
// WholeHouseThermostat.items -> whole-house aggregation Groups. Required if you |
|
// use the CabinGPO_HeatingRelay / CabinGPO_CoolingRelay |
|
// / CabinGPO_Thermostat style blocks below, since |
|
// those join groups defined in that file, not here. |
|
// Colour_OH5.rules -> consumes the ColourPickers Group defined below. |
|
// Required if any Color item joins that group. |
|
// ============================================================================ |
|
// |
|
// TEMPLATING CONVENTION - read this before adopting any block below |
|
// ============================================================================ |
|
// Every line in this file is commented out ("//") by default - it is a menu, |
|
// not a working configuration. To adopt an entry: uncomment it, then |
|
// find/replace three things together, consistently: |
|
// 1. The address segment in the channel string (e.g. "05", "71", "0C", "D2", |
|
// "VMB8DC-20-0xD8") - this is a placeholder from the reference install and |
|
// WILL be different on every project. There is nothing special about any |
|
// one address below versus another; ALL of them need replacing. |
|
// 2. The Item name prefix (e.g. CabinGPO_, Loft1RY_, BathroomColour) - this |
|
// should reflect the room/zone the module is physically installed in. |
|
// 3. The Label string (the quoted text after the Item name) - same room/zone |
|
// wording, for consistency in the UI and with voice assistants. |
|
// The bridge instance name (VelbusNetworkBridge) almost never needs to change |
|
// per-room - it only changes if you are using a different/named bridge entirely |
|
// (see velbusbridge1.things and the multi-segment note in that file). |
|
// |
|
// The room/zone assignment is the ONE judgement call a human or commissioning |
|
// agent needs to make when adopting this template - everything else (which |
|
// channel ID to use, which metadata syntax, which Group to join) is fixed by |
|
// the module type and does not need re-deriving per project. |
|
// |
|
// ============================================================================ |
|
// HOMEKIT METADATA - SUGGESTIONS, NOT RULES |
|
// ============================================================================ |
|
// HomeKit tags have been added throughout this file as a starting point, not |
|
// a definitive prescription - in several places (the colour pickers, the |
|
// fan/outlet relays, the PIR sensor bank) there's a genuine judgement call |
|
// about which HomeKit accessory type best represents a given Velbus channel, |
|
// and the choice made here is one reasonable option among others, not the |
|
// only correct one. Where a clean mapping genuinely doesn't exist (the |
|
// momentary DoorRelease switch, the button-mimicking strings, rainfall/wind |
|
// speed sensors), no tag has been added rather than forcing a misleading one |
|
// - see the inline notes at each of those points for why. |
|
// |
|
// IMPORTANT: Alexa and Google Assistant metadata in this file has been |
|
// tested against real devices over an extended period. The HomeKit metadata |
|
// has NOT been tested against real Apple hardware or the Home app - there is |
|
// no Apple ecosystem available to validate against. It has been written |
|
// carefully against the official HomeKit add-on documentation, but you |
|
// should treat every homekit= tag in this file as "should work, please |
|
// verify" rather than "confirmed working", and validate against your own |
|
// iPhone/iPad/Home app before relying on it. |
|
// |
|
// Documentation links (correct as of 30 June 2026 - openHAB docs URLs of the |
|
// form openhab.org/docs/... and openhab.org/addons/... always redirect to |
|
// the LATEST released version's documentation, which may have moved on from |
|
// what's described here or from what you have installed. If something here |
|
// doesn't match what you see in MainUI, check which openHAB version you're |
|
// actually running and look for the matching archived docs - the openHAB |
|
// docs site keeps version-pinned copies, e.g. v50.openhab.org for 5.0, |
|
// v43.openhab.org for 4.3, down through v34/v33/v32/v31/v30 for the 3.x |
|
// series and v2.openhab.org for 2.x): |
|
// - HomeKit add-on: https://www.openhab.org/addons/integrations/homekit/ |
|
// - Alexa skill: https://www.openhab.org/docs/ecosystem/alexa/ |
|
// - Google Assistant: https://www.openhab.org/docs/ecosystem/google-assistant/ |
|
// |
|
// ============================================================================ |
|
// CHANGELOG |
|
// ============================================================================ |
|
// June 2026 - Added HomeKit metadata throughout (dimmers/relays/colour |
|
// pickers/PIR/weather - see the HOMEKIT METADATA section above for the |
|
// important caveats on this). Previously only the thermostat block and |
|
// the Door/Roof blinds carried HomeKit tags. |
|
// June 2026 - Merged with "AAA_OH5_Generic_template Alexa V3 WITH preset |
|
// dissemination.items" - that file's only real difference was whether |
|
// "preset dissemination" (whole-house averaging of Comfort/Day/Night/ |
|
// Antifrost setpoints) was active, and that toggle now lives correctly in |
|
// WholeHouseThermostat.items, not here. The two files' Item catalogues were |
|
// otherwise near-identical; nothing unique from either was dropped in the |
|
// merge. |
|
// Also fixed in this pass: duplicate CabinGPO_Button01 (CH1 and CH8) -> |
|
// CH8 renamed CabinGPO_Button08; VMB7IN_0A_Counter_2 pointed at channel |
|
// "counter" instead of "counter2"; "VMB2DC0-20" typo -> "VMB2DC-20"; |
|
// "Coffee AMchine" -> "Coffee Machine"; Alexa V3 colour tags standardised |
|
// on BrightnessController.brightness,PowerController.powerState, |
|
// ColorController.color (was inconsistent invalid "Light.brightness" style |
|
// syntax in one of the two source files). |
|
// |
|
// May 20th 2024 - Serious update to Alexa Thermostat. Adding Alexa metadata |
|
// in V4.1.2 for thermostats in the UI is broken - text file / manual using |
|
// the CODE window is the only option. See this forum post - |
|
// https://community.openhab.org/t/edit-metadata-results-in-spinning-wheel-while-loading/153937/7 |
|
// April 28th 2024 - added HomeKit to thermostat |
|
// April 24th 2024 - tidy up the layout of this file |
|
// Oct 5th 2023 - add motion sensor with profile conversion from Pressed to |
|
// ON; add MotionSensor metadata for Alexa |
|
// Aug 8th 2022 - For use with openHAB3 onwards. Alexa Version 3 metadata. |
|
// Semantic modelling, see also the Semantic building template. Groups for |
|
// combining lights or seeing how many circuits are on. |
|
// Dec 30th 2025 - Add VMB2DC-20, VMB8DC-20 and VMB4LEDPWM-20 |
|
|
|
|
|
|
|
// String VelbusRefresh "Velbus Refresh" |
|
// String ExternalIP "External IP" |
|
|
|
|
|
|
|
// Group CabinGPO_Thermostat "Cabin Thermostat" <temperature> { ga="Thermostat" [roomHint="Cabin", thermostatModes="off=SAFE,heat=DAY,eco=NIGHT,on=DAY"] , alexa="Endpoint.Thermostat" [name="Cabin Thermostat", description="Velbus Thermostat in Cabin"] , homekit = "Thermostat" } |
|
// Number CabinGPO_CurrentTemperature "Cabin Current Temperature" <heating> ( CabinGPO_Thermostat ,WholeHouse_CurrentTemperature ) { channel="velbus:vmbgpod:VelbusNetworkBridge:05:input#CH33" , ga="thermostatTemperatureAmbient" , alexa="TemperatureSensor.temperature" , homekit = "CurrentTemperature" } // Set to Ch9 or Ch33 |
|
// Number CabinGPO_CurrentTargetTemperature "Cabin Current Target Temperature" <heating> ( CabinGPO_Thermostat ,WholeHouse_CurrentTargetTemperature ) { channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#currentTemperatureSetpoint" , ga="thermostatTemperatureSetpoint" , alexa="ThermostatController.targetSetpoint" , homekit = "TargetTemperature" } |
|
// String CabinGPO_ThermostatMode "Cabin Thermostat mode" <heating> ( CabinGPO_Thermostat, WholeHouse_ThermostatMode ) { channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#mode" , ga="thermostatMode" , alexa="ModeController.mode" [friendlyNames="@Setting.Preset", supportedModes="SAFE=Safe,NIGHT=Night,DAY=Day,COMFORT=Comfort"] , homekit = "TargetHeatingCoolingMode" [HEAT="COMFORT", AUTO="DAY", COOL="NIGHT", OFF="SAFE"] } |
|
// String CabinGPO_ThermostatOperatingMode "Cabin Thermostat operating mode" <heating> ( CabinGPO_Thermostat, WholeHouse_ThermostatOperatingMode ) { channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#operatingMode" , alexa="ThermostatController.thermostatMode" [COOL="COOLING",HEAT="HEATING"] , homekit = "CurrentHeatingCoolingMode" [HEAT="HEATING", COOL="COOLING"] } |
|
// |
|
// The four preset target items below join the optional whole-house preset |
|
// aggregation groups (WholeHouse_HeatingComfortTarget etc) which are defined, |
|
// commented out by default, in WholeHouseThermostat.items. Enable both ends |
|
// together if you want whole-house averaged preset targets. |
|
// |
|
// Number CabinGPO_HeatingComfortTarget "Cabin Heating Comfort Target Temperature" <temperature> {channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#heatingModeComfortTemperatureSetpoint" } |
|
// Number CabinGPO_HeatingDayTarget "Cabin Heating Day Target Temperature" <temperature> {channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#heatingModeDayTemperatureSetpoint" } |
|
// Number CabinGPO_HeatingNightTarget "Cabin Heating Night Target Temperature" <temperature> {channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#heatingModeNightTemperatureSetpoint" } |
|
// Number CabinGPO_HeatingAntifrostTarget "Cabin Heating Antifrost Target Temperature"<temperature> {channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#heatingModeAntiFrostTemperatureSetpoint" } |
|
// |
|
// |
|
// Number CabinGPO_CoolingComfortTarget "Cabin Cooling Comfort Target Temperature" <temperature> {channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#coolingModeComfortTemperatureSetpoint" } |
|
// Number CabinGPO_CoolingDayTarget "Cabin Cooling Day Target Temperature" <temperature> {channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#coolingModeDayTemperatureSetpoint" } |
|
// Number CabinGPO_CoolingNightTarget "Cabin Cooling Night Target Temperature" <temperature> {channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#coolingModeNightTemperatureSetpoint" } |
|
// Number CabinGPO_CoolingSafeTarget "Cabin Cooling Safe Target Temperature" <temperature> {channel="velbus:vmbgpod:VelbusNetworkBridge:05:thermostat#coolingModeSafeTemperatureSetpoint" } |
|
|
|
|
|
// Edit the following to suit the relay channels in use. These join the |
|
// always-on relay aggregation groups defined in WholeHouseThermostat.items. |
|
// Not tagged for HomeKit by default since they're normally driven by the |
|
// thermostat logic rather than tapped manually - add homekit="ContactSensor" [name="Heating Active"] |
|
// to either line if you want state visibility in the Home app, where OPEN = "valve open" |
|
|
|
// Switch CabinGPO_HeatingRelay "Cabin Heating Relay" <radiator> (WholeHouse_HeatingRelay_Count,WholeHouse_HeatingRelay) {channel="velbus:vmb4ryld:VelbusNetworkBridge:02:CH4"} |
|
// Switch CabinGPO_CoolingRelay "Cabin Cooling Relay" <climate> (WholeHouse_CoolingRelay_Count,WholeHouse_CoolingRelay) {channel="velbus:vmb1ryno:VelbusNetworkBridge:71:CH3"} |
|
|
|
|
|
|
|
|
|
// Group:Switch:OR(ON,OFF) LoungeAllLights "Lounge lights any on" |
|
// Group:Number:COUNT("ON") LoungeAllLightCount "Lounge How many lights on" |
|
// Group:Dimmer:AVG LoungeLXGroup "Group of lights" |
|
|
|
|
|
|
|
// Group ColourPickers "All Colour Pickers" |
|
|
|
|
|
// Edit the following to suit the Dimmer channels in use - Any colour item should be put into the (ColourPickers) group |
|
|
|
// Color BathroomColour "Bathroom Colour" <colorpicker> (ColourPickers) {ga="light", alexa="BrightnessController.brightness,PowerController.powerState,ColorController.color" [name="Colour Light", description="Smart Colour Light"], homekit="Lighting, Lighting.Hue, Lighting.Brightness, Lighting.Saturation" [name="Bathroom Colour"]} |
|
// Dimmer BathroomColour_RED "Bathroom Red" <slider> {channel="velbus:vmb4dc:VelbusNetworkBridge:BF:CH1"} |
|
// Dimmer BathroomColour_GREEN "Bathroom Green" <slider> {channel="velbus:vmb4dc:VelbusNetworkBridge:BF:CH2"} |
|
// Dimmer BathroomColour_BLUE "Bathroom Blue" <slider> {channel="velbus:vmb4dc:VelbusNetworkBridge:BF:CH3"} |
|
// Dimmer BathroomColour_WHITE "Bathroom White" <slider> {channel="velbus:vmb4dc:VelbusNetworkBridge:BF:CH4", ga="Light" [roomHint="Bathroom"], alexa="Light" [name="Dimmable Light", description="Super Smart Dimming Light"]} |
|
// |
|
// |
|
// |
|
// Color MidRoomColour "Middle Bedroom Colour" <colorpicker> (ColourPickers) {ga="light", alexa="BrightnessController.brightness,PowerController.powerState,ColorController.color", homekit="Lighting, Lighting.Hue, Lighting.Brightness, Lighting.Saturation" [name="Middle Bedroom Colour"]} // tag the Color item only - HomeKit talks to this, not the individual _RED/_GREEN/_BLUE/_WHITE Dimmer items below, the Colour rule fans the command out the same way it already does for Alexa/Google |
|
// Dimmer MidRoomColour_RED "Middle Bedroom Red" <slider> {channel="velbus:vmb4dc:VelbusNetworkBridge:D2:CH1"} |
|
// Dimmer MidRoomColour_GREEN "Middle Bedroom Green" <slider> {channel="velbus:vmb4dc:VelbusNetworkBridge:D2:CH2"} |
|
// Dimmer MidRoomColour_BLUE "Middle Bedroom Blue" <slider> {channel="velbus:vmb4dc:VelbusNetworkBridge:D2:CH3"} |
|
// Dimmer MidRoomColour_WHITE "Middle Bedroom White" <slider> {channel="velbus:vmb4dc:VelbusNetworkBridge:D2:CH4", ga="Light" [roomHint="Middle Bedroom"], alexa="Light" [name="Dimmable Light", description="White Smart Dimming Light"]} |
|
|
|
|
|
// Mains dimmer |
|
// Dimmer MainsDimmer01 "Mains Dimmer" <slider> {channel="velbus:vmbdmir:VelbusNetworkBridge:D1:CH1", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="Mains Dimmer"]} |
|
|
|
|
|
// VMB2DC-20 |
|
// Group:Dimmer:AVG VMB2DC_AVG "2DC Average" |
|
|
|
// Dimmer VMB2DCCh01 "2DC Ch 1" <slider> (VMB2DC_AVG) {channel="velbus:vmb2dc-20:VelbusNetworkBridge:D2:brightness#CH1", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="2DC Channel 1"]} |
|
// Dimmer VMB2DCCh02 "2DC Ch 2" <slider> (VMB2DC_AVG) {channel="velbus:vmb2dc-20:VelbusNetworkBridge:D2:brightness#CH2", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="2DC Channel 2"]} |
|
// String VMB2DCCh01fade "2DC Ch 1 Fade mode" {channel="velbus:vmb2dc-20:VelbusNetworkBridge:D2:fade-mode#CH1"} |
|
// String VMB2DCCh02fade "2DC Ch 2 Fade mode" {channel="velbus:vmb2dc-20:VelbusNetworkBridge:D2:fade-mode#CH2"} |
|
// Number VMB2DCCh01Scene "2DC Ch 1 Scene" {channel="velbus:vmb2dc-20:VelbusNetworkBridge:D2:scene#CH1"} |
|
// Number VMB2DCCh02Scene "2DC Ch 2 Scene" {channel="velbus:vmb2dc-20:VelbusNetworkBridge:D2:scene#CH2"} |
|
|
|
|
|
|
|
|
|
|
|
// VMB8DC-20 |
|
// Group:Dimmer:AVG VMB8DC_Group "VMB8DC Average" <light> |
|
|
|
// Dimmer VMB8DC20_Ch01 "8DC Ch 1" <slider> (VMB8DC_Group) {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:brightness#CH1", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="8DC Channel 1"]} |
|
// Dimmer VMB8DC20_Ch02 "8DC Ch 2" <slider> (VMB8DC_Group) {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:brightness#CH2", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="8DC Channel 2"]} |
|
// Dimmer VMB8DC20_Ch03 "8DC Ch 3" <slider> (VMB8DC_Group) {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:brightness#CH3", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="8DC Channel 3"]} |
|
// Dimmer VMB8DC20_Ch04 "8DC Ch 4" <slider> (VMB8DC_Group) {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:brightness#CH4", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="8DC Channel 4"]} |
|
// Dimmer VMB8DC20_Ch05 "8DC Ch 5" <slider> (VMB8DC_Group) {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:brightness#CH5", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="8DC Channel 5"]} |
|
// Dimmer VMB8DC20_Ch06 "8DC Ch 6" <slider> (VMB8DC_Group) {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:brightness#CH6", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="8DC Channel 6"]} |
|
// Dimmer VMB8DC20_Ch07 "8DC Ch 7" <slider> (VMB8DC_Group) {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:brightness#CH7", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="8DC Channel 7"]} |
|
// Dimmer VMB8DC20_Ch08 "8DC Ch 8" <slider> (VMB8DC_Group) {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:brightness#CH8", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="8DC Channel 8"]} |
|
// String VMB8DC20_Ch01_fade "8DC Ch 1 Fade mode" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:fade-mode#CH1"} |
|
// String VMB8DC20_Ch02_fade "8DC Ch 2 Fade mode" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:fade-mode#CH2"} |
|
// String VMB8DC20_Ch03_fade "8DC Ch 3 Fade mode" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:fade-mode#CH3"} |
|
// String VMB8DC20_Ch04_fade "8DC Ch 4 Fade mode" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:fade-mode#CH4"} |
|
// String VMB8DC20_Ch05_fade "8DC Ch 5 Fade mode" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:fade-mode#CH5"} |
|
// String VMB8DC20_Ch06_fade "8DC Ch 6 Fade mode" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:fade-mode#CH6"} |
|
// String VMB8DC20_Ch07_fade "8DC Ch 7 Fade mode" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:fade-mode#CH7"} |
|
// String VMB8DC20_Ch08_fade "8DC Ch 8 Fade mode" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:fade-mode#CH8"} |
|
// Number VMB8DC20_Ch01_scene "8DC Ch 1 Scene" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:scene#CH1"} |
|
// Number VMB8DC20_Ch02_scene "8DC Ch 2 Scene" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:scene#CH2"} |
|
// Number VMB8DC20_Ch03_scene "8DC Ch 3 Scene" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:scene#CH3"} |
|
// Number VMB8DC20_Ch04_scene "8DC Ch 4 Scene" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:scene#CH4"} |
|
// Number VMB8DC20_Ch05_scene "8DC Ch 5 Scene" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:scene#CH5"} |
|
// Number VMB8DC20_Ch06_scene "8DC Ch 6 Scene" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:scene#CH6"} |
|
// Number VMB8DC20_Ch07_scene "8DC Ch 7 Scene" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:scene#CH7"} |
|
// Number VMB8DC20_Ch08_scene "8DC Ch 8 Scene" {channel="velbus:vmb8dc-20:VelbusNetworkBridge:VMB8DC-20-0xD8:scene#CH8"} |
|
|
|
|
|
|
|
// VMB4LEDPWM-20 |
|
|
|
|
|
// Group:Dimmer:AVG VMB4LEDPWM_Group "VMB4LEDPWM Average" <light> |
|
// Dimmer VMB4LEDPWM20_Ch01 "4LED Ch 1" <slider> (VMB4LEDPWM_Group) {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:brightness#CH1", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="4LED Channel 1"]} // if used as independent channels - do not also tag the VL1 Color item below if using that grouping instead |
|
// Dimmer VMB4LEDPWM20_Ch02 "4LED Ch 2" <slider> (VMB4LEDPWM_Group) {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:brightness#CH2", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="4LED Channel 2"]} // if used as independent channels - do not also tag the VL1 Color item below if using that grouping instead |
|
// Dimmer VMB4LEDPWM20_Ch03 "4LED Ch 3" <slider> (VMB4LEDPWM_Group) {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:brightness#CH3", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="4LED Channel 3"]} // if used as independent channels - do not also tag the VL1 Color item below if using that grouping instead |
|
// Dimmer VMB4LEDPWM20_Ch04 "4LED Ch 4" <slider> (VMB4LEDPWM_Group) {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:brightness#CH4", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Brightness" [name="4LED Channel 4"]} // if used as independent channels - do not also tag the VL1 Color item below if using that grouping instead |
|
// String VMB4LEDPWM20_Ch01_fade "4LED Ch 1 Fade mode" {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:fade-mode#CH1"} |
|
// String VMB4LEDPWM20_Ch02_fade "4LED Ch 2 Fade mode" {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:fade-mode#CH2"} |
|
// String VMB4LEDPWM20_Ch03_fade "4LED Ch 3 Fade mode" {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:fade-mode#CH3"} |
|
// String VMB4LEDPWM20_Ch04_fade "4LED Ch 4 Fade mode" {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:fade-mode#CH4"} |
|
// Number VMB4LEDPWM20_Ch01_scene "4LED Ch 1 Scene" {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:scene#CH1"} |
|
// Number VMB4LEDPWM20_Ch02_scene "4LED Ch 2 Scene" {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:scene#CH2"} |
|
// Number VMB4LEDPWM20_Ch03_scene "4LED Ch 3 Scene" {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:scene#CH3"} |
|
// Number VMB4LEDPWM20_Ch04_scene "4LED Ch 4 Scene" {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:scene#CH4"} |
|
// |
|
// |
|
// Color VMB4LEDPWM20_Color "4LED Colour Picker" <color> {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:virtual-light#VL1", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting, Lighting.Hue, Lighting.Brightness, Lighting.Saturation" [name="4LED Colour Picker"]} // only tag this OR the four channels above as Lighting, not both |
|
// Dimmer VMB4LEDPWM20_WHT "4LED White portion" <slider> {channel="velbus:vmb4ledpwm-20:VelbusNetworkBridge:0C:dim-white#DW1", ga="Light" [roomHint="Model"], alexa="Light", homekit="Lighting" [name="4LED White"]} |
|
|
|
|
|
|
|
// Lighting - Change to suit the relay you are using - VMBxRYxxxxxx |
|
|
|
// Switch LightingRelay01 "Lighting Relay 01" <switch> {channel="velbus:vmb4ryno:VelbusNetworkBridge:74:CH1", alexa="Light.PowerState" [name="Light Switch", description="Super Smart Light"], homekit="Lighting" [name="Lighting Relay 1"] , expire="1h,command=OFF"} // will reset to OFF after 1 hour |
|
// Switch LightingRelay02 "Lighting Relay 02" <switch> {channel="velbus:vmb4ryno:VelbusNetworkBridge:74:CH2", alexa="Light.PowerState" [name="Light Switch", description="Super Smart Light"], homekit="Lighting" [name="Lighting Relay 2"]} |
|
// Switch LightingRelay03 "Lighting Relay 03" <switch> {channel="velbus:vmb4ryno:VelbusNetworkBridge:74:CH3", alexa="Light.PowerState" [name="Light Switch", description="Super Smart Light"], homekit="Lighting" [name="Lighting Relay 3"]} |
|
// Switch LightingRelay04 "Lighting Relay 04" <switch> {channel="velbus:vmb4ryno:VelbusNetworkBridge:74:CH4", alexa="Light.PowerState" [name="Light Switch", description="Super Smart Light"], homekit="Lighting" [name="Lighting Relay 4"]} |
|
|
|
|
|
// VMB7IN - Energy monitoring / pulse counter, Add Unit of Measurement and icon as required |
|
// Number VMB7IN_0A_Counter_1 "Electricity Usage Total" <energy> {channel="velbus:vmb7in:VelbusNetworkBridge:0A:counter#counter1"} |
|
// Number VMB7IN_0A_Counter_1_Current "Electricity Usage Current" <energy> {channel="velbus:vmb7in:VelbusNetworkBridge:0A:counter#counter1Current"} |
|
// Number VMB7IN_0A_Counter_2 "Gas Usage" <gas> {channel="velbus:vmb7in:VelbusNetworkBridge:0A:counter#counter2"} |
|
// Number VMB7IN_0A_Counter_2_Current "Gas Usage Current" <gas> {channel="velbus:vmb7in:VelbusNetworkBridge:0A:counter#counter2Current"} |
|
// Number VMB7IN_0A_Counter_3 "All Water usage" <flow> {channel="velbus:vmb7in:VelbusNetworkBridge:0A:counter#counter3"} |
|
// Number VMB7IN_0A_Counter_3_Current "All Water usage Current" <flow> {channel="velbus:vmb7in:VelbusNetworkBridge:0A:counter#counter3Current"} |
|
// Number VMB7IN_0A_Counter_4 "Hot Water usage" <flow> {channel="velbus:vmb7in:VelbusNetworkBridge:0A:counter#counter4"} |
|
// Number VMB7IN_0A_Counter_4_Current "Hot Water usage Current" <flow> {channel="velbus:vmb7in:VelbusNetworkBridge:0A:counter#counter4Current"} |
|
|
|
|
|
|
|
// Edit the following to suit the relay channels in use |
|
|
|
// Switch Loft1RY_CH1 "Loft 12V PSU" <switch> {channel="velbus:vmb1ryno:VelbusNetworkBridge:71:CH1" , ga="Outlet" , alexa="Switch" [name="Socket", description="Switched socket"], homekit="Outlet" [name="Loft 12V PSU"]} |
|
// Switch Loft1RY_CH2 "Loft 1RY Unused" {channel="velbus:vmb1ryno:VelbusNetworkBridge:71:CH2" , ga="Outlet" , alexa="Coffeemaker" [name="Coffee", description="Coffee Machine"]} |
|
// Switch Loft1RY_CH3 "Loft 1RY Lounge Fan" {channel="velbus:vmb1ryno:VelbusNetworkBridge:71:CH3" , ga="Fan" , alexa="Fan", homekit="BasicFan" [name="Lounge Fan"]} |
|
// Switch Loft1RY_CH4 "Lounge as Bedroom" <bedroom_blue> {channel="velbus:vmb1ryno:VelbusNetworkBridge:71:CH4" , ga="Outlet" [ tfaAck=true ] , alexa="Switch" [name="Desk Fan", description="My desk fan"], homekit="Outlet" [name="Desk Fan"]} // or homekit="BasicFan" if you prefer it shown as a fan accessory rather than an outlet |
|
// Switch DoorRelease "Door Release" {channel="velbus:vmb1ryno:VelbusNetworkBridge:67:CH1" , expire="5s,command=OFF", ga="SecuritySystem" [ tfaPin="1234" ,roomHint="Hallway"], alexa="LockState" [inverted="true"]} // not tagged for HomeKit - this is a momentary pulse (expire=5s), HomeKit's Lock accessory expects a persistent Current/Target state pair, not a momentary release, so it doesn't map cleanly without extra logic |
|
// Switch Loft1RY_CH5 "House Awake" <alarm> {channel="velbus:vmb1ryno:VelbusNetworkBridge:71:CH5"} |
|
|
|
|
|
// Meteo channels |
|
// Number:Temperature Meteo_Temperature "Weather Station Temperature" <temperature> {channel="velbus:vmbmeteo:VelbusNetworkBridge:FE:weatherStation#CH10", homekit="TemperatureSensor"} |
|
// Number:Length Meteo_Rainfall "Weather Station Rainfall" <rain> {channel="velbus:vmbmeteo:VelbusNetworkBridge:FE:weatherStation#CH11"} |
|
// Number:Illuminance Meteo_LightLevel "Weather Station Light Level" <sun> {channel="velbus:vmbmeteo:VelbusNetworkBridge:FE:weatherStation#CH12", homekit="LightSensor"} // no native HomeKit accessory for rainfall or wind speed, so those two channels above are left untagged |
|
// Number:Speed Meteo_Windspeed "Weather Station Wind Speed" <wind> {channel="velbus:vmbmeteo:VelbusNetworkBridge:FE:weatherStation#CH13"} |
|
|
|
|
|
// Motor controllers - blinds, curtains, windows, projection screens etc |
|
|
|
// or Alexa command PercentageController.percentage |
|
|
|
|
|
// Rollershutter Door "Door" {channel="velbus:vmb2ble:VelbusNetworkBridge:61:CH1" , alexa="Blind,PositionState" [name="Large Window Blind", description="Largest Window blind"] , homekit="WindowCovering, WindowCovering.CurrentPosition, WindowCovering.TargetPosition, WindowCovering.PositionState"} |
|
// Rollershutter Roof "Roof" {channel="velbus:vmb2ble:VelbusNetworkBridge:61:CH2" , alexa="Blind,PositionState" [name="Small Window Blind", description="Smallest Window blind", capabilityNames="@Setting.Position", supportedCommands="UP=@Value.Up:@Value.Open,DOWN=@Value.Down:@Value.Close,STOP=@Value.Stop", supportedRange="0:100:1", unitOfMeasure="Percent", actionMappings="Close=DOWN,Open=UP,Lower=DOWN,Raise=UP,Stop=STOP", stateMappings="Closed=100,Open=0:99"] , homekit="WindowCovering, WindowCovering.CurrentPosition, WindowCovering.TargetPosition, WindowCovering.PositionState"} |
|
|
|
|
|
|
|
|
|
|
|
// Ensure these groups are active in at least 1 Items file and add the Minute and Hour limiting rule |
|
|
|
|
|
// Group needed for the ClockAlarm_OH5.rules file |
|
// Group Velbus_AlarmTimes "Velbus Alarm Clocks" |
|
// |
|
// Velbus clock alarms come in two distinct flavours, and a real install will |
|
// often use both at once - which one applies to a given module is set in |
|
// VelbusLink (or by the AI commissioning agent) as that module's local/global |
|
// mode, not chosen here: |
|
// |
|
// LOCAL mode - the module keeps its own independent alarm times, set via |
|
// the per-module clockAlarm channel block immediately below. |
|
// Typical use: bedrooms, where each room wants its own |
|
// wake/bed times. |
|
// |
|
// GLOBAL mode - the module follows times broadcast by the bridge to Velbus |
|
// address 0x00, set via the Global_ClockAlarm block further |
|
// down (which binds to the bridge Thing itself, not a |
|
// per-module address). Typical use: communal areas that |
|
// should all follow one unified schedule. |
|
// |
|
// So: one Global_ClockAlarm block covers every module you've set to global |
|
// mode collectively. Each module set to local mode needs its own copy of the |
|
// CabinGPO_ClockAlarm-style block below, addressed to that module. |
|
// Clock Alarm — exploring with CabinGPO as the test panel before duplicating to other rooms. |
|
// Structure: each Wake/Bed slot is a Group:DateTime — the MainUI time-picker targets the GROUP |
|
// itself; its two Number members (Hour/Minute) are the real Velbus-bound channels. The rule |
|
// (ClockAlarm_OH5.rules) finds the Hour/Minute members by name and pushes the split values to them. |
|
// Velbus_AlarmTimes only needs to exist once across all Items files if reused for other rooms. |
|
// |
|
// Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// DateTime CabinGPO_CAW1 "Cabin Alarm Wake 1" (Velbus_AlarmTimes) |
|
// Switch CabinGPO_ClockAlarm_ClockAlarm1Enabled "Cabin Alarm 1 Enabled" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm1Enabled"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// Number CabinGPO_ClockAlarm_ClockAlarm1WakeupHour "Cabin Alarm 1 Wake Hour" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm1WakeupHour"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// Number CabinGPO_ClockAlarm_ClockAlarm1WakeupMinute "Cabin Alarm 1 Wake Minute" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm1WakeupMinute"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// DateTime CainGPO_CAB1 "Cabin Alarm Bed 1" (Velbus_AlarmTimes) |
|
// Number CabinGPO_ClockAlarm_ClockAlarm1BedtimeHour "Cabin Alarm 1 Bed Hour" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm1BedtimeHour"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// Number CabinGPO_ClockAlarm_ClockAlarm1BedtimeMinute "Cabin Alarm 1 Bed Minute" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm1BedtimeMinute"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// DateTime CabinGPO_CAW2 "Cabin Alarm Wake 2" (Velbus_AlarmTimes) |
|
// Switch CabinGPO_ClockAlarm_ClockAlarm2Enabled "Cabin Alarm 2 Enabled" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm2Enabled"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// Number CabinGPO_ClockAlarm_ClockAlarm2WakeupHour "Cabin Alarm 2 Wake Hour" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm2WakeupHour"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// Number CabinGPO_ClockAlarm_ClockAlarm2WakeupMinute "Cabin Alarm 2 Wake Minute" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm2WakeupMinute"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// DateTime CainGPO_CAB2 "Caib Alarm Bed 2" (Velbus_AlarmTimes) |
|
// Number CabinGPO_ClockAlarm_ClockAlarm2BedtimeHour "Cabin Alarm 2 Bed Hour" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm2BedtimeHour"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
// Number CabinGPO_ClockAlarm_ClockAlarm2BedtimeMinute "Cabin Alarm 2 Bed Minute" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:clockAlarm#clockAlarm2BedtimeMinute"} // Add ONLY if this module is set to LOCAL alarm mode (see note above) |
|
|
|
|
|
// Global mode block - binds to the bridge's own clockAlarm channel group |
|
// (broadcast to address 0x00), not a per-module one - see |
|
// velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#... below |
|
|
|
// DateTime Global_CAW1 "Global Alarm Wake 1" (Velbus_AlarmTimes) |
|
// Switch Global_ClockAlarm_ClockAlarm1Enabled "Global Alarm 1 Enabled" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm1Enabled"} |
|
// Number Global_ClockAlarm_ClockAlarm1WakeupHour "Global Alarm 1 Wake Hour" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm1WakeupHour"} |
|
// Number Global_ClockAlarm_ClockAlarm1WakeupMinute "Global Alarm 1 Wake Minute" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm1WakeupMinute"} |
|
// DateTime Global_CAB1 "Global Alarm Bed 1" (Velbus_AlarmTimes) |
|
// Number Global_ClockAlarm_ClockAlarm1BedtimeHour "Global Alarm 1 Bed Hour" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm1BedtimeHour"} |
|
// Number Global_ClockAlarm_ClockAlarm1BedtimeMinute "Global Alarm 1 Bed Minute" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm1BedtimeMinute"} |
|
|
|
|
|
// DateTime Global_CAW2 "Global Alarm Wake 2" (Velbus_AlarmTimes) |
|
// Switch Global_ClockAlarm_ClockAlarm2Enabled "Global Alarm 2 Enabled" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm2Enabled"} |
|
// Number Global_ClockAlarm_ClockAlarm2WakeupHour "Global Alarm 2 Wake Hour" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm2WakeupHour"} |
|
// Number Global_ClockAlarm_ClockAlarm2WakeupMinute "Global Alarm 2 Wake Minute" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm2WakeupMinute"} |
|
// DateTime Global_CAB2 "Global Alarm Bed 2" (Velbus_AlarmTimes) |
|
// Number Global_ClockAlarm_ClockAlarm2BedtimeHour "Global Alarm 2 Bed Hour" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm2BedtimeHour"} |
|
// Number Global_ClockAlarm_ClockAlarm2BedtimeMinute "Global Alarm 2 Bed Minute" {channel="velbus:networkbridge:VelbusNetworkBridge:bridgeClockAlarm#clockAlarm2BedtimeMinute"} |
|
|
|
|
|
|
|
// OLED Extras |
|
// String CabinGPO_Memo "Cabin Memotext" <text> {channel="velbus:vmbgpod:CabinOD:05:oledDisplay#MEMO", ga="text"} |
|
// Switch CabinGPO_Screensaver "Cabin Screen saver" <screen> {channel="velbus:vmbgpod:CabinOD:05:oledDisplay#SCREENSAVER"} |
|
|
|
|
|
// Button mimicking - Send "PRESSED" or "LONG_PRESSED" to this string |
|
// |
|
// Not tagged for HomeKit by default - HomeKit's StatelessProgrammableSwitch |
|
// expects single/double/long press events (0/1/2 or ON/OPEN style), not the |
|
// "PRESSED"/"RELEASED" strings these channels produce directly. A profile or |
|
// rule is needed to translate between the two before tagging - see the |
|
// AccessoryGroup/StatelessProgrammableSwitch example near the bottom of the |
|
// HomeKit add-on docs if you want to expose a bank of these as a scene |
|
// controller in the Home app. |
|
|
|
// String CabinGPO_Button01 "CabinGPO Button 1" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:button#CH1", expire="1s,state=RELEASED"} //reverts to Released after 1 second |
|
// String CabinGPO_Button02 "CabinGPO Button 2" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:button#CH2", expire="1s,state=RELEASED"} |
|
// String CabinGPO_Button03 "CabinGPO Button 3" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:button#CH3", expire="1s,state=RELEASED"} |
|
// String CabinGPO_Button04 "CabinGPO Button 4" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:button#CH4", expire="1s,state=RELEASED"} |
|
// String CabinGPO_Button05 "CabinGPO Button 5" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:button#CH5", expire="1s,state=RELEASED"} |
|
// String CabinGPO_Button06 "CabinGPO Button 6" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:button#CH6", expire="1s,state=RELEASED"} |
|
// String CabinGPO_Button07 "CabinGPO Button 7" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:button#CH7", expire="1s,state=RELEASED"} |
|
// String CabinGPO_Button08 "CabinGPO Button 8" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:button#CH8", expire="1s,state=RELEASED"} |
|
|
|
|
|
|
|
// Button triggers, example given for a VMBGP4PIR, where channels 5 to 8 are |
|
|
|
|
|
// String CabinGP4PIR_Dark "Cabin Dark" {channel="velbus:vmbgp4pir:VelbusNetworkBridge:05:input#CH5"[profile="system:rawbutton-on-off-switch"], alexa="MotionSensor"} // Profile converts "PRESSED" & "RELEASED" in ON and OFF |
|
// String CabinGP4PIR_Motion "Cabin Motion" {channel="velbus:vmbgp4pir:VelbusNetworkBridge:05:input#CH6"[profile="system:rawbutton-on-off-switch"], alexa="MotionSensor", homekit="MotionSensor"} // Profile converts "PRESSED" & "RELEASED" in ON and OFF. Only tag ONE of the four PIR channels for HomeKit - Dark/MotionLD/Absence are the same physical sensor in different modes, tagging more than one creates duplicate accessories |
|
// String CabinGP4PIR_MotionLD "Cabin Motion LD" {channel="velbus:vmbgp4pir:VelbusNetworkBridge:05:input#CH7"[profile="system:rawbutton-on-off-switch"], alexa="MotionSensor"} // Profile converts "PRESSED" & "RELEASED" in ON and OFF |
|
// String CabinGP4PIR_Absence "Cabin Absence" {channel="velbus:vmbgp4pir:VelbusNetworkBridge:05:input#CH8"[profile="system:rawbutton-on-off-switch"], alexa="MotionSensor"} // Profile converts "PRESSED" & "RELEASED" in ON and OFF |
|
|
|
// LED Feedback |
|
// String CabinGPO_LED_Feedback_BT1 "Cabin LED Feedback Button 1" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:feedback#CH1"} |
|
// String CabinGPO_LED_Feedback_BT2 "Cabin LED Feedback Button 2" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:feedback#CH2"} |
|
// String CabinGPO_LED_Feedback_BT3 "Cabin LED Feedback Button 3" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:feedback#CH3"} |
|
// String CabinGPO_LED_Feedback_BT4 "Cabin LED Feedback Button 4" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:feedback#CH4"} |
|
// String CabinGPO_LED_Feedback_BT5 "Cabin LED Feedback Button 5" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:feedback#CH5"} |
|
// String CabinGPO_LED_Feedback_BT6 "Cabin LED Feedback Button 6" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:feedback#CH6"} |
|
// String CabinGPO_LED_Feedback_BT7 "Cabin LED Feedback Button 7" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:feedback#CH7"} |
|
// String CabinGPO_LED_Feedback_BT8 "Cabin LED Feedback Button 8" {channel="velbus:vmbgpod:VelbusNetworkBridge:05:feedback#CH8"} |
|
|
|
|
|
|
|
|
|
// Useful information |
|
|
|
// https://www.openhab.org/docs/ecosystem/alexa/ |
|
|
|
// https://www.openhab.org/docs/ecosystem/google-assistant/ |
|
|
|
// https://www.openhab.org/addons/integrations/homekit/ |
|
|