diff --git a/bundles/org.openhab.binding.guntamatic/README.md b/bundles/org.openhab.binding.guntamatic/README.md
index 3fb9a056d..196fd11d2 100644
--- a/bundles/org.openhab.binding.guntamatic/README.md
+++ b/bundles/org.openhab.binding.guntamatic/README.md
@@ -5,39 +5,41 @@ The Guntamatic Binding can be used to monitor and control [Guntamatic Heating Sy
## Supported Things
The Guntamatic Binding was developed and tested using Guntamatic Biostar 15kW Pellets Heating System, running Firmware 3.2d.
-It should work for all other Guntamatic Heating Systems as well, that support the same web interface.
+It should work for all other Guntamatic Heating Systems as well, that support the same web interface (Pellets, WoodChips, EnergyGrain as well as Log Heating Systems).
## Things
Guntamatic Heating Systems supported as Thing Types:
-| Name | Thing Type ID | Status |
-|---------------|---------------|-----------------------------------|
-| Biostar | `biostar` | tested via 15kW, firmware 3.2d |
-| Powerchip | `powerchip` | untested |
-| Powercorn | `powercorn` | untested |
-| Biocom | `biocom` | untested |
-| Pro | `pro` | untested |
-| Therm | `therm` | untested |
+| Name | Thing Type ID | Heating System Type | Binding Development Status |
+|---------------|---------------|----------------------|--------------------------------------------------|
+| Biostar | `biostar` | Pellets | tested via 15kW, firmware 3.2d, German & English |
+| Biosmart | `biosmart` | Logs | tested via 22kW, firmware 3.2f, German |
+| Powerchip | `powerchip` | WoodChips | tested via 100kW, firmware 3.2d, French |
+| Powercorn | `powercorn` | EnergyGrain | untested |
+| Biocom | `biocom` | Pellets | untested |
+| Pro | `pro` | Pellets or WoodChips | untested |
+| Therm | `therm` | Pellets | untested |
+| Generic | `generic` | - | use, if none from above |
### Thing Configuration
-| Parameter | Description | Default |
-|------------------|-----------------------------------------------------------------------------|-----------------|
-| `hostname` | Hostname or IP address of the Guntamatic Heating System | |
-| `key` | Optional, but required to read protected parameters and to control the Guntamatic Heating System.
The key needs to be requested from Guntamatic support, e.g. via https://www.guntamatic.com/en/contact/. | |
-| `refreshInterval` | Interval the Guntamatic Heating System is polled in seconds | `60` |
-| `encoding` | Code page used by the Guntamatic Heating System | `windows-1252` |
+| Parameter | Description | Default |
+|--------------------|-----------------------------------------------------------------------------|-----------------|
+| `hostname` | Hostname or IP address of the Guntamatic Heating System | |
+| `key` | Optional, but required to read protected parameters and to control the Guntamatic Heating System.
The key needs to be requested from Guntamatic support, e.g. via https://www.guntamatic.com/en/contact/. | |
+| `refreshInterval` | Interval the Guntamatic Heating System is polled in seconds | `60` |
+| `encoding` | Code page used by the Guntamatic Heating System | `windows-1252` |
### Properties
-| Property | Description |
-|---------------------|---------------------------------------------------------------|
-| `extraWwHeat` | Parameter used by `controlExtraWwHeat` channels |
-| `boilerApproval` | Parameter used by `controlBoilerApproval` channel |
-| `heatCircProgram` | Parameter used by `controlHeatCircProgram` channels |
-| `program` | Parameter used by `controlProgram` channel |
-| `wwHeat` | Parameter used by `controlWwHeat` channels |
+| Property | Description | Supported |
+|---------------------|---------------------------------------------------------------|---------------------------------------------------|
+| `extraWwHeat` | Parameter used by `controlExtraWwHeat` channels | all |
+| `boilerApproval` | Parameter used by `controlBoilerApproval` channel | Biostar, Powerchip, Powercorn, Biocom, Pro, Therm |
+| `heatCircProgram` | Parameter used by `controlHeatCircProgram` channels | all |
+| `program` | Parameter used by `controlProgram` channel | all |
+| `wwHeat` | Parameter used by `controlWwHeat` channels | all |
## Channels
@@ -45,10 +47,10 @@ Guntamatic Heating Systems supported as Thing Types:
The Guntamatic Heating System can be controlled using the following channels:
-| Channel | Description | Type | Unit | Security Access Level | ReadOnly | Advanced |
-|-----------------------|-----------------------------------------------------------|-------|:---------:|:-------------------------:|:--------:|:--------:|
-| `controlBoilerApproval` | Set Boiler Approval (`AUTO`, `OFF`, `ON`) | `String` | | 🔐 W1 | R/W | true |
-| `controlProgram` | Set Program (`OFF`, `NORMAL`, `WARMWATER`, `MANUAL`) | `String` | | 🔐 W1 | R/W | false |
+| Channel | Description | Type | Unit | Security Access Level | ReadOnly | Advanced |
+|-----------------------|---------------------------------------------------------------------------|-------|:---------:|:-------------------------:|:--------:|:--------:|
+| `controlBoilerApproval` | Set Boiler Approval (`AUTO`, `OFF`, `ON`) | `String` | | 🔐 W1 | R/W | true |
+| `controlProgram` | Set Program (`OFF`, `NORMAL`, `WARMWATER`, `MANUAL`[1](#f1)) | `String` | | 🔐 W1 | R/W | false |
| `controlHeatCircProgram0` | Set Heat Circle 0 Program (`OFF`, `NORMAL`, `HEAT`, `LOWER`) | `String` | | 🔐 W1 | R/W | true |
| `controlHeatCircProgram1` | Set Heat Circle 1 Program (`OFF`, `NORMAL`, `HEAT`, `LOWER`) | `String` | | 🔐 W1 | R/W | true |
| `controlHeatCircProgram2` | Set Heat Circle 2 Program (`OFF`, `NORMAL`, `HEAT`, `LOWER`) | `String` | | 🔐 W1 | R/W | true |
@@ -58,18 +60,22 @@ The Guntamatic Heating System can be controlled using the following channels:
| `controlHeatCircProgram6` | Set Heat Circle 6 Program (`OFF`, `NORMAL`, `HEAT`, `LOWER`) | `String` | | 🔐 W1 | R/W | true |
| `controlHeatCircProgram7` | Set Heat Circle 7 Program (`OFF`, `NORMAL`, `HEAT`, `LOWER`) | `String` | | 🔐 W1 | R/W | true |
| `controlHeatCircProgram8` | Set Heat Circle 8 Program (`OFF`, `NORMAL`, `HEAT`, `LOWER`) | `String` | | 🔐 W1 | R/W | true |
-| `controlWwHeat0` | Trigger Warm Water Circle 0 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
-| `controlWwHeat1` | Trigger Warm Water Circle 1 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
-| `controlWwHeat2` | Trigger Warm Water Circle 2 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
-| `controlExtraWwHeat0` | Trigger Extra Warm Water Circle 0 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
-| `controlExtraWwHeat1` | Trigger Extra Warm Water Circle 1 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
-| `controlExtraWwHeat2` | Trigger Extra Warm Water Circle 2 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
+| `controlWwHeat0` | Trigger Warm Water Circle 0 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
+| `controlWwHeat1` | Trigger Warm Water Circle 1 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
+| `controlWwHeat2` | Trigger Warm Water Circle 2 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
+| `controlExtraWwHeat0` | Trigger Extra Warm Water Circle 0 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
+| `controlExtraWwHeat1` | Trigger Extra Warm Water Circle 1 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
+| `controlExtraWwHeat2` | Trigger Extra Warm Water Circle 2 (`RECHARGE`) | `String` | | 🔐 W1 | R/W | true |
+
+- 1) ... `MANUAL` is supported by Biostar, Powerchip, Powercorn, Biocom, Pro as well as Therm only [↩](#a1)
#### Response of Control Channels
- `{"ack":"confirmation message"}` ... in case of success
- `{"err":"error message"}` ... in case of error
+The reaction of the Guntamatic Heating System can be monitored via the corresponding data channel. E.g. `programHc1` if you triggered `controlHeatCircProgram1`. The data channel gets updated with the next cyclic update (according to the `refreshInterval` configuration).
+
### Monitoring Channels
The Binding dynamically generates Channels, derived from the data provided from the actual Guntamatic Heating System.
diff --git a/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticBindingConstants.java b/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticBindingConstants.java
index 1d52bcff6..917838aa9 100644
--- a/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticBindingConstants.java
+++ b/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticBindingConstants.java
@@ -31,11 +31,13 @@ public class GuntamaticBindingConstants {
// List of all Thing Type UIDs
public static final ThingTypeUID THING_TYPE_BIOSTAR = new ThingTypeUID(BINDING_ID, "biostar");
+ public static final ThingTypeUID THING_TYPE_BIOSMART = new ThingTypeUID(BINDING_ID, "biosmart");
public static final ThingTypeUID THING_TYPE_POWERCHIP = new ThingTypeUID(BINDING_ID, "powerchip");
public static final ThingTypeUID THING_TYPE_POWERCORN = new ThingTypeUID(BINDING_ID, "powercorn");
public static final ThingTypeUID THING_TYPE_BIOCOM = new ThingTypeUID(BINDING_ID, "biocom");
public static final ThingTypeUID THING_TYPE_PRO = new ThingTypeUID(BINDING_ID, "pro");
public static final ThingTypeUID THING_TYPE_THERM = new ThingTypeUID(BINDING_ID, "therm");
+ public static final ThingTypeUID THING_TYPE_GENERIC = new ThingTypeUID(BINDING_ID, "generic");
// List of all Channel ids
public static final String CHANNEL_CONTROLBOILERAPPROVAL = "controlBoilerApproval";
@@ -56,7 +58,14 @@ public class GuntamaticBindingConstants {
public static final String CHANNEL_CONTROLEXTRAWWHEAT1 = "controlExtraWwHeat1";
public static final String CHANNEL_CONTROLEXTRAWWHEAT2 = "controlExtraWwHeat2";
- public static final List CHANNELIDS = Arrays.asList(CHANNEL_CONTROLBOILERAPPROVAL, CHANNEL_CONTROLPROGRAM,
+ public static final List STATIC_CHANNEL_IDS = Arrays.asList(CHANNEL_CONTROLBOILERAPPROVAL,
+ CHANNEL_CONTROLPROGRAM, CHANNEL_CONTROLHEATCIRCPROGRAM0, CHANNEL_CONTROLHEATCIRCPROGRAM1,
+ CHANNEL_CONTROLHEATCIRCPROGRAM2, CHANNEL_CONTROLHEATCIRCPROGRAM3, CHANNEL_CONTROLHEATCIRCPROGRAM4,
+ CHANNEL_CONTROLHEATCIRCPROGRAM5, CHANNEL_CONTROLHEATCIRCPROGRAM6, CHANNEL_CONTROLHEATCIRCPROGRAM7,
+ CHANNEL_CONTROLHEATCIRCPROGRAM8, CHANNEL_CONTROLWWHEAT0, CHANNEL_CONTROLWWHEAT1, CHANNEL_CONTROLWWHEAT2,
+ CHANNEL_CONTROLEXTRAWWHEAT0, CHANNEL_CONTROLEXTRAWWHEAT1, CHANNEL_CONTROLEXTRAWWHEAT2);
+
+ public static final List STATIC_CHANNEL_IDS_WOBOILERAPP = Arrays.asList(CHANNEL_CONTROLPROGRAM,
CHANNEL_CONTROLHEATCIRCPROGRAM0, CHANNEL_CONTROLHEATCIRCPROGRAM1, CHANNEL_CONTROLHEATCIRCPROGRAM2,
CHANNEL_CONTROLHEATCIRCPROGRAM3, CHANNEL_CONTROLHEATCIRCPROGRAM4, CHANNEL_CONTROLHEATCIRCPROGRAM5,
CHANNEL_CONTROLHEATCIRCPROGRAM6, CHANNEL_CONTROLHEATCIRCPROGRAM7, CHANNEL_CONTROLHEATCIRCPROGRAM8,
diff --git a/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticHandler.java b/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticHandler.java
index 442c8521a..abca7d469 100644
--- a/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticHandler.java
+++ b/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticHandler.java
@@ -47,6 +47,7 @@ import org.openhab.core.thing.ChannelUID;
import org.openhab.core.thing.Thing;
import org.openhab.core.thing.ThingStatus;
import org.openhab.core.thing.ThingStatusDetail;
+import org.openhab.core.thing.ThingTypeUID;
import org.openhab.core.thing.binding.BaseThingHandler;
import org.openhab.core.thing.binding.builder.ChannelBuilder;
import org.openhab.core.thing.binding.builder.ThingBuilder;
@@ -83,11 +84,21 @@ public class GuntamaticHandler extends BaseThingHandler {
SIUnits.CELSIUS, NUMBER_TEMPERATURE, ImperialUnits.FAHRENHEIT, NUMBER_TEMPERATURE, SIUnits.CUBIC_METRE,
NUMBER_VOLUME, Units.DAY, NUMBER_TIME, Units.HOUR, NUMBER_TIME);
+ private static final Map MAP_COMMAND_PARAM_APPROVAL = Map.of("AUTO", "0", "OFF", "1", "ON", "2");
+ private static final Map MAP_COMMAND_PARAM_PROG = Map.of("OFF", "0", "NORMAL", "1", "WARMWATER",
+ "2", "MANUAL", "8");
+ private static final Map MAP_COMMAND_PARAM_PROG_WOMANU = Map.of("OFF", "0", "NORMAL", "1",
+ "WARMWATER", "2");
+ private static final Map MAP_COMMAND_PARAM_HC = Map.of("OFF", "0", "NORMAL", "1", "HEAT", "2",
+ "LOWER", "3");
+ private static final Map MAP_COMMAND_PARAM_WW = Map.of("RECHARGE", "0");
+
private final Logger logger = LoggerFactory.getLogger(GuntamaticHandler.class);
private final HttpClient httpClient;
private @Nullable ScheduledFuture> pollingFuture = null;
+ private List staticChannelIDs;
private GuntamaticConfiguration config = new GuntamaticConfiguration();
private Boolean channelsInitialized = false;
private GuntamaticChannelTypeProvider guntamaticChannelTypeProvider;
@@ -96,10 +107,11 @@ public class GuntamaticHandler extends BaseThingHandler {
private Map> units = new HashMap<>();
public GuntamaticHandler(Thing thing, HttpClient httpClient,
- GuntamaticChannelTypeProvider guntamaticChannelTypeProvider) {
+ GuntamaticChannelTypeProvider guntamaticChannelTypeProvider, List staticChannelIDs) {
super(thing);
this.httpClient = httpClient;
this.guntamaticChannelTypeProvider = guntamaticChannelTypeProvider;
+ this.staticChannelIDs = staticChannelIDs;
}
@Override
@@ -107,13 +119,25 @@ public class GuntamaticHandler extends BaseThingHandler {
if (!(command instanceof RefreshType)) {
if (!config.key.isBlank()) {
String param;
+ Map map;
String channelID = channelUID.getId();
switch (channelID) {
case CHANNEL_CONTROLBOILERAPPROVAL:
param = getThing().getProperties().get(PARAMETER_BOILERAPPROVAL);
+ map = MAP_COMMAND_PARAM_APPROVAL;
break;
case CHANNEL_CONTROLPROGRAM:
param = getThing().getProperties().get(PARAMETER_PROGRAM);
+ ThingTypeUID thingTypeUID = getThing().getThingTypeUID();
+
+ if (THING_TYPE_BIOSTAR.equals(thingTypeUID) || THING_TYPE_POWERCHIP.equals(thingTypeUID)
+ || THING_TYPE_POWERCORN.equals(thingTypeUID) || THING_TYPE_BIOCOM.equals(thingTypeUID)
+ || THING_TYPE_PRO.equals(thingTypeUID) || THING_TYPE_THERM.equals(thingTypeUID)) {
+ map = MAP_COMMAND_PARAM_PROG;
+ } else {
+ map = MAP_COMMAND_PARAM_PROG_WOMANU;
+ }
+
break;
case CHANNEL_CONTROLHEATCIRCPROGRAM0:
case CHANNEL_CONTROLHEATCIRCPROGRAM1:
@@ -126,23 +150,36 @@ public class GuntamaticHandler extends BaseThingHandler {
case CHANNEL_CONTROLHEATCIRCPROGRAM8:
param = getThing().getProperties().get(PARAMETER_HEATCIRCPROGRAM).replace("x",
channelID.substring(channelID.length() - 1));
+ map = MAP_COMMAND_PARAM_HC;
break;
case CHANNEL_CONTROLWWHEAT0:
case CHANNEL_CONTROLWWHEAT1:
case CHANNEL_CONTROLWWHEAT2:
param = getThing().getProperties().get(PARAMETER_WWHEAT).replace("x",
channelID.substring(channelID.length() - 1));
+ map = MAP_COMMAND_PARAM_WW;
break;
case CHANNEL_CONTROLEXTRAWWHEAT0:
case CHANNEL_CONTROLEXTRAWWHEAT1:
case CHANNEL_CONTROLEXTRAWWHEAT2:
param = getThing().getProperties().get(PARAMETER_EXTRAWWHEAT).replace("x",
channelID.substring(channelID.length() - 1));
+ map = MAP_COMMAND_PARAM_WW;
break;
default:
return;
}
- String response = sendGetRequest(PARSET_URL, "syn=" + param, "value=" + command.toString());
+ String cmd = command.toString().trim();
+ if (map.containsValue(cmd)) {
+ // cmd = cmd;
+ } else if (map.containsKey(cmd)) {
+ cmd = map.get(cmd);
+ } else {
+ logger.warn("Invalid command '{}' for channel '{}' received ", cmd, channelID);
+ return;
+ }
+
+ String response = sendGetRequest(PARSET_URL, "syn=" + param, "value=" + cmd);
if (response != null) {
State newState = new StringType(response);
updateState(channelID, newState);
@@ -232,7 +269,8 @@ public class GuntamaticHandler extends BaseThingHandler {
String[] daqdesc = html.split("\\n");
List channelList = new ArrayList<>();
- for (String channelID : CHANNELIDS) {
+ // make sure that static channels are present
+ for (String channelID : staticChannelIDs) {
Channel channel = thing.getChannel(channelID);
if (channel == null) {
logger.warn("Static Channel '{}' is not present: remove and re-add Thing", channelID);
@@ -241,6 +279,7 @@ public class GuntamaticHandler extends BaseThingHandler {
}
}
+ // add dynamic channels, based on data provided by Guntamatic Heating System
for (int i = 0; i < daqdesc.length; i++) {
String[] param = daqdesc[i].split(";");
String label = param[0].replace("C02", "CO2");
@@ -401,8 +440,10 @@ public class GuntamaticHandler extends BaseThingHandler {
parseAndUpdate(response);
} else if (url.equals(DAQDESC_URL)) {
parseAndInit(response);
+ } else {
+ logger.debug(req);
+ // PARSET_URL via return
}
- // PARSET_URL via return
return response;
} catch (IllegalArgumentException e) {
errorReason = String.format("IllegalArgumentException: %s",
diff --git a/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticHandlerFactory.java b/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticHandlerFactory.java
index 6ef605aed..6b32053ec 100644
--- a/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticHandlerFactory.java
+++ b/bundles/org.openhab.binding.guntamatic/src/main/java/org/openhab/binding/guntamatic/internal/GuntamaticHandlerFactory.java
@@ -14,6 +14,7 @@ package org.openhab.binding.guntamatic.internal;
import static org.openhab.binding.guntamatic.internal.GuntamaticBindingConstants.*;
+import java.util.List;
import java.util.Set;
import org.eclipse.jdt.annotation.NonNullByDefault;
@@ -39,8 +40,9 @@ import org.osgi.service.component.annotations.Reference;
@Component(configurationPid = "binding.guntamatic", service = ThingHandlerFactory.class)
public class GuntamaticHandlerFactory extends BaseThingHandlerFactory {
- private static final Set SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_BIOSTAR, THING_TYPE_POWERCHIP,
- THING_TYPE_POWERCORN, THING_TYPE_BIOCOM, THING_TYPE_PRO, THING_TYPE_THERM);
+ private static final Set SUPPORTED_THING_TYPES_UIDS = Set.of(THING_TYPE_BIOSTAR, THING_TYPE_BIOSMART,
+ THING_TYPE_POWERCHIP, THING_TYPE_POWERCORN, THING_TYPE_BIOCOM, THING_TYPE_PRO, THING_TYPE_THERM,
+ THING_TYPE_GENERIC);
private final HttpClient httpClient;
private GuntamaticChannelTypeProvider guntamaticChannelTypeProvider;
@@ -60,9 +62,18 @@ public class GuntamaticHandlerFactory extends BaseThingHandlerFactory {
@Override
protected @Nullable ThingHandler createHandler(Thing thing) {
ThingTypeUID thingTypeUID = thing.getThingTypeUID();
+ List staticChannelIDs;
+
+ if (THING_TYPE_BIOSTAR.equals(thingTypeUID) || THING_TYPE_POWERCHIP.equals(thingTypeUID)
+ || THING_TYPE_POWERCORN.equals(thingTypeUID) || THING_TYPE_BIOCOM.equals(thingTypeUID)
+ || THING_TYPE_PRO.equals(thingTypeUID) || THING_TYPE_THERM.equals(thingTypeUID)) {
+ staticChannelIDs = STATIC_CHANNEL_IDS;
+ } else {
+ staticChannelIDs = STATIC_CHANNEL_IDS_WOBOILERAPP;
+ }
if (supportsThingType(thingTypeUID)) {
- return new GuntamaticHandler(thing, httpClient, guntamaticChannelTypeProvider);
+ return new GuntamaticHandler(thing, httpClient, guntamaticChannelTypeProvider, staticChannelIDs);
}
return null;
diff --git a/bundles/org.openhab.binding.guntamatic/src/main/resources/OH-INF/i18n/guntamatic.properties b/bundles/org.openhab.binding.guntamatic/src/main/resources/OH-INF/i18n/guntamatic.properties
index 8d3e99cc4..844919ee5 100644
--- a/bundles/org.openhab.binding.guntamatic/src/main/resources/OH-INF/i18n/guntamatic.properties
+++ b/bundles/org.openhab.binding.guntamatic/src/main/resources/OH-INF/i18n/guntamatic.properties
@@ -6,7 +6,7 @@ binding.guntamatic.description = Binding for Guntamatic Heating Systems.
# thing types
thing-type.guntamatic.biocom.label = Guntamatic Biocom
-thing-type.guntamatic.biocom.description = Guntamatic Biocom Heating System. Untested! Please provide Feedback!
+thing-type.guntamatic.biocom.description = Guntamatic Biocom Pellets Heating System. Untested! Please provide Feedback!
thing-type.guntamatic.biocom.channel.controlBoilerApproval.label = Set Boiler Approval
thing-type.guntamatic.biocom.channel.controlExtraWwHeat0.label = Trigger Extra Warm Water Circle 0
thing-type.guntamatic.biocom.channel.controlExtraWwHeat1.label = Trigger Extra Warm Water Circle 1
@@ -24,8 +24,26 @@ thing-type.guntamatic.biocom.channel.controlProgram.label = Set Program
thing-type.guntamatic.biocom.channel.controlWwHeat0.label = Trigger Warm Water Circle 0
thing-type.guntamatic.biocom.channel.controlWwHeat1.label = Trigger Warm Water Circle 1
thing-type.guntamatic.biocom.channel.controlWwHeat2.label = Trigger Warm Water Circle 2
+thing-type.guntamatic.biosmart.label = Guntamatic Biosmart
+thing-type.guntamatic.biosmart.description = Guntamatic Biosmart Log Heating System
+thing-type.guntamatic.biosmart.channel.controlExtraWwHeat0.label = Trigger Extra Warm Water Circle 0
+thing-type.guntamatic.biosmart.channel.controlExtraWwHeat1.label = Trigger Extra Warm Water Circle 1
+thing-type.guntamatic.biosmart.channel.controlExtraWwHeat2.label = Trigger Extra Warm Water Circle 2
+thing-type.guntamatic.biosmart.channel.controlHeatCircProgram0.label = Set Heat Circle 0 Program
+thing-type.guntamatic.biosmart.channel.controlHeatCircProgram1.label = Set Heat Circle 1 Program
+thing-type.guntamatic.biosmart.channel.controlHeatCircProgram2.label = Set Heat Circle 2 Program
+thing-type.guntamatic.biosmart.channel.controlHeatCircProgram3.label = Set Heat Circle 3 Program
+thing-type.guntamatic.biosmart.channel.controlHeatCircProgram4.label = Set Heat Circle 4 Program
+thing-type.guntamatic.biosmart.channel.controlHeatCircProgram5.label = Set Heat Circle 5 Program
+thing-type.guntamatic.biosmart.channel.controlHeatCircProgram6.label = Set Heat Circle 6 Program
+thing-type.guntamatic.biosmart.channel.controlHeatCircProgram7.label = Set Heat Circle 7 Program
+thing-type.guntamatic.biosmart.channel.controlHeatCircProgram8.label = Set Heat Circle 8 Program
+thing-type.guntamatic.biosmart.channel.controlProgram.label = Set Program
+thing-type.guntamatic.biosmart.channel.controlWwHeat0.label = Trigger Warm Water Circle 0
+thing-type.guntamatic.biosmart.channel.controlWwHeat1.label = Trigger Warm Water Circle 1
+thing-type.guntamatic.biosmart.channel.controlWwHeat2.label = Trigger Warm Water Circle 2
thing-type.guntamatic.biostar.label = Guntamatic Biostar
-thing-type.guntamatic.biostar.description = Guntamatic Biostar Heating System
+thing-type.guntamatic.biostar.description = Guntamatic Biostar Pellets Heating System
thing-type.guntamatic.biostar.channel.controlBoilerApproval.label = Set Boiler Approval
thing-type.guntamatic.biostar.channel.controlExtraWwHeat0.label = Trigger Extra Warm Water Circle 0
thing-type.guntamatic.biostar.channel.controlExtraWwHeat1.label = Trigger Extra Warm Water Circle 1
@@ -43,8 +61,26 @@ thing-type.guntamatic.biostar.channel.controlProgram.label = Set Program
thing-type.guntamatic.biostar.channel.controlWwHeat0.label = Trigger Warm Water Circle 0
thing-type.guntamatic.biostar.channel.controlWwHeat1.label = Trigger Warm Water Circle 1
thing-type.guntamatic.biostar.channel.controlWwHeat2.label = Trigger Warm Water Circle 2
+thing-type.guntamatic.generic.label = Guntamatic Generic
+thing-type.guntamatic.generic.description = Generic Guntamatic Heating System. Use this type, if your Heating System is none of the others. Please provide Feedback!
+thing-type.guntamatic.generic.channel.controlExtraWwHeat0.label = Trigger Extra Warm Water Circle 0
+thing-type.guntamatic.generic.channel.controlExtraWwHeat1.label = Trigger Extra Warm Water Circle 1
+thing-type.guntamatic.generic.channel.controlExtraWwHeat2.label = Trigger Extra Warm Water Circle 2
+thing-type.guntamatic.generic.channel.controlHeatCircProgram0.label = Set Heat Circle 0 Program
+thing-type.guntamatic.generic.channel.controlHeatCircProgram1.label = Set Heat Circle 1 Program
+thing-type.guntamatic.generic.channel.controlHeatCircProgram2.label = Set Heat Circle 2 Program
+thing-type.guntamatic.generic.channel.controlHeatCircProgram3.label = Set Heat Circle 3 Program
+thing-type.guntamatic.generic.channel.controlHeatCircProgram4.label = Set Heat Circle 4 Program
+thing-type.guntamatic.generic.channel.controlHeatCircProgram5.label = Set Heat Circle 5 Program
+thing-type.guntamatic.generic.channel.controlHeatCircProgram6.label = Set Heat Circle 6 Program
+thing-type.guntamatic.generic.channel.controlHeatCircProgram7.label = Set Heat Circle 7 Program
+thing-type.guntamatic.generic.channel.controlHeatCircProgram8.label = Set Heat Circle 8 Program
+thing-type.guntamatic.generic.channel.controlProgram.label = Set Program
+thing-type.guntamatic.generic.channel.controlWwHeat0.label = Trigger Warm Water Circle 0
+thing-type.guntamatic.generic.channel.controlWwHeat1.label = Trigger Warm Water Circle 1
+thing-type.guntamatic.generic.channel.controlWwHeat2.label = Trigger Warm Water Circle 2
thing-type.guntamatic.powerchip.label = Guntamatic Powerchip
-thing-type.guntamatic.powerchip.description = Guntamatic Powerchip Heating System. Untested! Please provide Feedback!
+thing-type.guntamatic.powerchip.description = Guntamatic Powerchip WoodChip Heating System
thing-type.guntamatic.powerchip.channel.controlBoilerApproval.label = Set Boiler Approval
thing-type.guntamatic.powerchip.channel.controlExtraWwHeat0.label = Trigger Extra Warm Water Circle 0
thing-type.guntamatic.powerchip.channel.controlExtraWwHeat1.label = Trigger Extra Warm Water Circle 1
@@ -63,7 +99,7 @@ thing-type.guntamatic.powerchip.channel.controlWwHeat0.label = Trigger Warm Wate
thing-type.guntamatic.powerchip.channel.controlWwHeat1.label = Trigger Warm Water Circle 1
thing-type.guntamatic.powerchip.channel.controlWwHeat2.label = Trigger Warm Water Circle 2
thing-type.guntamatic.powercorn.label = Guntamatic Powercorn
-thing-type.guntamatic.powercorn.description = Guntamatic Powercorn Heating System. Untested! Please provide Feedback!
+thing-type.guntamatic.powercorn.description = Guntamatic Powercorn EnergyGrain Heating System. Untested! Please provide Feedback!
thing-type.guntamatic.powercorn.channel.controlBoilerApproval.label = Set Boiler Approval
thing-type.guntamatic.powercorn.channel.controlExtraWwHeat0.label = Trigger Extra Warm Water Circle 0
thing-type.guntamatic.powercorn.channel.controlExtraWwHeat1.label = Trigger Extra Warm Water Circle 1
@@ -82,7 +118,7 @@ thing-type.guntamatic.powercorn.channel.controlWwHeat0.label = Trigger Warm Wate
thing-type.guntamatic.powercorn.channel.controlWwHeat1.label = Trigger Warm Water Circle 1
thing-type.guntamatic.powercorn.channel.controlWwHeat2.label = Trigger Warm Water Circle 2
thing-type.guntamatic.pro.label = Guntamatic Pro
-thing-type.guntamatic.pro.description = Guntamatic Pro Heating System. Untested! Please provide Feedback!
+thing-type.guntamatic.pro.description = Guntamatic Pro Pellets or WoodChip Heating System. Untested! Please provide Feedback!
thing-type.guntamatic.pro.channel.controlBoilerApproval.label = Set Boiler Approval
thing-type.guntamatic.pro.channel.controlExtraWwHeat0.label = Trigger Extra Warm Water Circle 0
thing-type.guntamatic.pro.channel.controlExtraWwHeat1.label = Trigger Extra Warm Water Circle 1
@@ -101,7 +137,7 @@ thing-type.guntamatic.pro.channel.controlWwHeat0.label = Trigger Warm Water Circ
thing-type.guntamatic.pro.channel.controlWwHeat1.label = Trigger Warm Water Circle 1
thing-type.guntamatic.pro.channel.controlWwHeat2.label = Trigger Warm Water Circle 2
thing-type.guntamatic.therm.label = Guntamatic Therm
-thing-type.guntamatic.therm.description = Guntamatic Therm Heating System. Untested! Please provide Feedback!
+thing-type.guntamatic.therm.description = Guntamatic Therm Pellets Heating System. Untested! Please provide Feedback!
thing-type.guntamatic.therm.channel.controlBoilerApproval.label = Set Boiler Approval
thing-type.guntamatic.therm.channel.controlExtraWwHeat0.label = Trigger Extra Warm Water Circle 0
thing-type.guntamatic.therm.channel.controlExtraWwHeat1.label = Trigger Extra Warm Water Circle 1
@@ -153,6 +189,11 @@ channel-type.guntamatic.controlProgram.state.option.0 = OFF
channel-type.guntamatic.controlProgram.state.option.1 = NORMAL
channel-type.guntamatic.controlProgram.state.option.2 = WARMWATER
channel-type.guntamatic.controlProgram.state.option.8 = MANUAL
+channel-type.guntamatic.controlProgramWOManu.label = Set Program
+channel-type.guntamatic.controlProgramWOManu.description = Set Program of the Guntamatic Heating System (OFF, NORMAL, WARMWATER)
+channel-type.guntamatic.controlProgramWOManu.state.option.0 = OFF
+channel-type.guntamatic.controlProgramWOManu.state.option.1 = NORMAL
+channel-type.guntamatic.controlProgramWOManu.state.option.2 = WARMWATER
channel-type.guntamatic.controlWwHeat.label = Trigger Warm Water Circle
channel-type.guntamatic.controlWwHeat.description = Trigger Warm Water Circle of the Guntamatic Heating System (RECHARGE)
channel-type.guntamatic.controlWwHeat.state.option.0 = RECHARGE
diff --git a/bundles/org.openhab.binding.guntamatic/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.guntamatic/src/main/resources/OH-INF/thing/thing-types.xml
index a47745155..676cb34de 100644
--- a/bundles/org.openhab.binding.guntamatic/src/main/resources/OH-INF/thing/thing-types.xml
+++ b/bundles/org.openhab.binding.guntamatic/src/main/resources/OH-INF/thing/thing-types.xml
@@ -7,7 +7,7 @@
- Guntamatic Biostar Heating System
+ Guntamatic Biostar Pellets Heating System
@@ -71,10 +71,73 @@
+
+
+
+ Guntamatic Biosmart Log Heating System
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PR001
+ HKx01
+ BKx06
+ ZKx06
+
+
+
- Guntamatic Powerchip Heating System. Untested! Please provide Feedback!
+ Guntamatic Powerchip WoodChip Heating System
@@ -141,7 +204,7 @@
- Guntamatic Powercorn Heating System. Untested! Please provide Feedback!
+ Guntamatic Powercorn EnergyGrain Heating System. Untested! Please provide Feedback!
@@ -208,7 +271,7 @@
- Guntamatic Biocom Heating System. Untested! Please provide Feedback!
+ Guntamatic Biocom Pellets Heating System. Untested! Please provide Feedback!
@@ -275,7 +338,7 @@
- Guntamatic Pro Heating System. Untested! Please provide Feedback!
+ Guntamatic Pro Pellets or WoodChip Heating System. Untested! Please provide Feedback!
@@ -342,7 +405,7 @@
- Guntamatic Therm Heating System. Untested! Please provide Feedback!
+ Guntamatic Therm Pellets Heating System. Untested! Please provide Feedback!
@@ -406,7 +469,70 @@
+
+
+ Generic Guntamatic Heating System. Use this type, if your Heating System is none of the others. Please
+ provide Feedback!
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PR001
+ HKx01
+ BKx06
+ ZKx06
+
+
+
String
@@ -421,6 +547,18 @@
+
+ String
+
+ Set Program of the Guntamatic Heating System (OFF, NORMAL, WARMWATER)
+
+
+
+
+
+
+
+
String