Skip to content

Commit

Permalink
Move current development master (#42)
Browse files Browse the repository at this point in the history
* Skeleton creation

* Merged old code into new plugin

Code merged and adjustments made to discovery process. 
UNTESTED!!

* Added missing files from last commit

* Tested against current OH2 beta: working!

* added baudrate configurable

* Added script for testing purpose and missing pom.xml

* Changed thing description for serial gateway to support different baud
rates.

* Fixed documentation regarding baud rate of the serial gateway

* esh-inf added parameter and serial closing to allow binding restart
correctly

* removed debug log before initialize

* thread managing improved

* little fix allows correct start and stop for binding

* Added missing STOP for item "Rollershutter"

Moved event handling from handleUpdate() to handleCommand().

* Doc fixed

* requestAck feature added

Currently it is not possible to automatically revert to the old state.

* writer thread implementation changed and serial port class changed to
remove the annoying exception on reading

* adding back the message to queue if is not time to sent it again

* reader thread moved in abstract class as the writer

* tryying to move to SerialPort, no success...

* Minor fix in visibilty of overridden method

* Code cleanup and fix for sendDelay

- removed superflous debug messages
- removed superflous variables, methods
- fixed missing implementation of sendDelay

* Error handling on disconnect of ethernet gw

The binding status is updated to OFFLINE and the threads for reader and
writer are beeing stopped. Works for ethernet gw only.

* Added jar and fixed docs

* requestAck 

incoming ACKs are now acknoledged and the message is removed from the
queue

* requestAck: revert item status if no ack is received

If no ACK is received from the node, the binding will try to revert the
status of the item in OH2 to its old value. Only works if a status is
known. (After restart of OH2 no status is known).

Tested with light (STATUS) and dimmer (percent).

* ensure gateway was started correctly

* event driven i_version handing

* removed debug messages

* disconnect on connection fail now child id 255 can respond to i_version

* Added S_HVAC constant

* HVAC Thermostat added
Temperature channel implemented

* Added channels to HVAC
"hvac-flow-state-channel"
"hvac-flow-mode-channel"
"hvac-setPoint-heat-channel"
"hvac-setPoint-cool-channel"
"hvac-speed-channel"
"var1 to var5-channel"

* Added CHANNEL_HVAC_FLOW_MODE and CHANNEL_HVAC_FLOW_STATE to
MySensorHandler

* Added support for return messages to sensor on V_VAR1 to V_VAR5
Changed V_VAR2 to number.

* requestAck feature redesigned. Reader/Writer are now in sync.

* Removed debug messages. Added updated jar of the binding.

* Requesting of thing/item values supported + minor fix

OH2 binding now answers requests for item status.

minor fix
- battery ch. added to hvacThermostat

* Added jar build

* Delay before I_VERSION check for SerialGW, new jar file

* Compatibility fixes

- Implemented a method to register more than one serial port (two or
more serial gw) due to a lack/bug in the used nrserialjava

- Longer timeout for I_VERSION check (5s)

* just a little restyle

* I_TIME and I_CONFIG response implemented (not tested)

* I_VERSION skip now allowed

* Binding jar refresh

* fix for I_TIME/I_CONFIG, not requesting that nodeId = 0

* updated testscript.sh

* Code review

- Added legal information to .java files
- Removed references, files and comments that are not needed

* Fixed value requests from nodes for sensors with multiple subtypes and
added correct deregistration to prevent NPEs on shutdown.

* Added WaterMeter Sensor

* pom.xml refresh

* New jar-Release after merge

* Fixed issue with serial Reader

Fixed issue with Exception while trying to read zero data from serial

* New jar after merge with master

* Added the customSensor, containing the channels for V_VARx
- can be used as a helper to send values to the nodes from Openhab
Signed-off-by: Juergen Messmer <meju@chello.at>

* Fixed mistake in documentation

There was an error in the creation of the bridge. This results in Items not updating although the bridge itself seems fine in openhab2

* Fixed issue with high CPU usage

* added possibility to not revert state if no ack received

* Changed type of vars for "reverted" para from int to boolean

* removed debug logging of messages in queues

* Reduced sleep time in reader

* Added Pressure channel to thing barometer

Pressure channel was missing in barometer thing definition.

* New jar

* Packaged new jar!

* datetime implemented in channel

* last update fixes

* last update fixes #2

* Fixed bug that sends status of things on startup

OH2 core now calls "handleCommand()" on startup with command == REFRESH.
REFRESH is ignored now and the bug fixed.

* Removed constructor task, moved to initialize

* Debug line added

* minor bug fixing and little refactor

* minor bug fixing #2

* minor bug fixing #3

* minor bug fixing #4

* minor bug fixing #5

* fixed log level for some logging

* fixed log level for some logging

* disconnection fixes

* Legal header adjusted, Current jar attached

Signed-off-by: Tim Oberföll <oberfoell@web.de> (github: github_handle)

* started working on network watchdog

* Update MySensorsBindingConstants.java

* Update MySensorsBindingConstants.java

* working on network sanity check

* Update constants to comply with OH2

Added following things:

THING_TYPE_LOCK
THING_TYPE_LEVEL
THING_TYPE_RGB_LIGHT 
THING_TYPE_RGBW_LIGHT
THING_TYPE_RGBW_LIGHT
THING_TYPE_PH_METER

* Update MySensorsBindingConstants.java

* Update MySensorsBindingConstants.java

* Update MySensorsBindingConstants.java

* Updates to comply with My Sensors 2.0

* Update MySensorsDiscoveryService.java

* Update MySensorsDiscoveryService.java

* Update MySensorsBindingConstants.java

* Update thing-types.xml

* Update thing-types.xml

* Update MySensorsBindingConstants.java

* working on network sanity check #2

* Added missing constants, removed typos

* resolved dependecies for bridge connection

* Generated new jar

* new feature and refactoring testing #1

* new feature and refactoring testing #1

* new feature and refactoring testing #2

* Added expert mode

Expert mode allows rule based message parsing and sending.

* [PARTIAL] start joining connector and connection

* connection and connector merged

* invalidating requestDisconnection flag

* connection tested and debugged

* [FIX] adding listener before connection

* cache factory implemented, now managing only given_ids one

* windows disconnect fix and cache minor fix

* new packaging and structure initial restyle

* some changes

* moving to new version of ESM framework

* bridgeHandelerInitialized (deprecated) has changed to
bridgeStatusChanged

* cache usage changed after refactoring

* [FIX] java.util.ConcurrentModificationException

* final fixing, now testing

* utility message type moved into message class

* build.xml file removed

* new jar

* [FIX] asList cause UnsupportedOperationException

* [FIX] startup check not work on connection retry after disconnection

* [FIX] initialize thing to offline, cause problem if left uninitialized

* [WIP] V_TEXT added

Thing added that supports sending and receiving V_TEXT.

* [WIP] Added V_IR_SEND & V_IR_RECEIVE

Both things work in both directions (to and from MySensors network)

* fixing mvn strange behaviour

* Created new jar && Modified Testscript

* Fixed bug that prevents answering of internal messages

If skipStartupCheck is set to true, there was no answer to I_CONFIG, I_TIME and ACK was not working.

* [WiP] Refactor ThingHandler

Cleaning up code for incoming messages.

* Fixing issue in MySensorsBridgeConnection which detached the EventListener

- EventListener now listening independant from skipStartupCheck
- Removed <context> from things eth-gateway and ser-gateway to allow configuration of advanced options in PaperUI

* Fixed recent issue related to updates on Smarthome API

fixes #40
  • Loading branch information
tobof authored Dec 22, 2016
1 parent eb37893 commit 9caec47
Show file tree
Hide file tree
Showing 42 changed files with 2,062 additions and 813 deletions.
4 changes: 3 additions & 1 deletion addons/binding/org.openhab.binding.mysensors/.classpath
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src/main/java"/>
<classpathentry kind="src" path="src/main/test"/>
<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
1 change: 1 addition & 0 deletions addons/binding/org.openhab.binding.mysensors/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/*.cached
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.8
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,11 @@
</description>
<config-description>
<parameter name="serialPort" type="text" required="true">
<context>serial-port</context>
<label>Serial Port</label>
<description>The serial port the MySensors Gateway is connected to
</description>
</parameter>
<parameter name="sendDelay" type="integer" required="false" min="1" max="1000">
<context>senddelay</context>
<label>Send Delay</label>
<description>The delay between messages send to the gateway
</description>
Expand All @@ -30,17 +28,20 @@
<default>115200</default>
</parameter>
<parameter name="skipStartupCheck" type="boolean" required="false">
<context>skipstartupchek</context>
<label>Skip startup connection check</label>
<description>Allow the user to bypass the I_VERSION check on startup</description>
<default>false</default>
</parameter>
<parameter name="imperial" type="boolean" required="false">
<context>imperialconfig</context>
<label>Imperial/Metric selection</label>
<description>Metric answer with imperial instead of metric</description>
<default>false</default>
</parameter>
<parameter name="enableNetworkSanCheck" type="boolean" required="false">
<label>Disable network sanity check</label>
<description>Network sanity check periodically unsure that gateway is up and running</description>
<default>false</default>
</parameter>
</config-description>

</bridge-type>
Expand All @@ -51,37 +52,37 @@
</description>
<config-description>
<parameter name="ipAddress" type="text" required="true">
<context>ipAddress</context>
<label>IP Address</label>
<description>The IP Address the MySensors Gateway uses
</description>
</parameter>
<parameter name="tcpPort" type="integer" required="true" min="1" max="65535">
<context>tcpport</context>
<label>TCP Port</label>
<description>The TCP Port the MySensors Gateway uses (usually 5003)
</description>
<default>5003</default>
</parameter>
<parameter name="sendDelay" type="integer" required="false" min="1" max="1000">
<context>senddelay</context>
<label>Send Delay</label>
<description>The delay between messages send to the gateway
</description>
<default>100</default>
</parameter>
<parameter name="skipStartupCheck" type="boolean" required="false">
<context>skipstartupchek</context>
<label>Skip startup connection check</label>
<description>Allow the user to bypass the I_VERSION check on startup</description>
<default>false</default>
</parameter>
<parameter name="imperial" type="boolean" required="false">
<context>imperialconfig</context>
<label>Imperial/Metric selection</label>
<description>Metric answer with imperial instead of metric</description>
<default>false</default>
</parameter>
<parameter name="enableNetworkSanCheck" type="boolean" required="false">
<label>Disable network sanity check</label>
<description>Network sanity check periodically unsure that gateway is up and running</description>
<default>false</default>
</parameter>
</config-description>

</bridge-type>
Expand Down Expand Up @@ -895,7 +896,133 @@
</parameter>
</config-description>
</thing-type>
<thing-type id="mysensorsMessage">
<supported-bridge-type-refs>
<bridge-type-ref id="bridge-ser" />
<bridge-type-ref id="bridge-eth" />
</supported-bridge-type-refs>

<label>MySensors Message</label>
<description>Shows the complete MySensors Message</description>

<channels>
<channel id="mySensorsMessage" typeId="mySensorsMessage-channel" />
<channel id="lastupdate" typeId="lastupdate-channel"/>
</channels>

<config-description>
<parameter name="nodeId" type="text" required="true">
<context>NodeId</context>
<label>NodeId</label>
<description>The ID of the node in the MySensors network
</description>
<default>999</default>
</parameter>
<parameter name="childId" type="text" required="true">
<context>ChildId</context>
<label>ChildId</label>
<description>The ID of the child of a node in the MySensors network
</description>
<default>999</default>
</parameter>
</config-description>
</thing-type>

<thing-type id="text">
<supported-bridge-type-refs>
<bridge-type-ref id="bridge-ser" />
<bridge-type-ref id="bridge-eth" />
</supported-bridge-type-refs>

<label>Text</label>
<description>V_TEXT</description>

<channels>
<channel id="text" typeId="text-channel" />
<channel id="lastupdate" typeId="lastupdate-channel"/>
</channels>

<config-description>
<parameter name="nodeId" type="text" required="true">
<context>NodeId</context>
<label>NodeId</label>
<description>The ID of the node in the MySensors network
</description>
<default>999</default>
</parameter>
<parameter name="childId" type="text" required="true">
<context>ChildId</context>
<label>ChildId</label>
<description>The ID of the child of a node in the MySensors network
</description>
<default>999</default>
</parameter>
</config-description>
</thing-type>

<thing-type id="irSend">
<supported-bridge-type-refs>
<bridge-type-ref id="bridge-ser" />
<bridge-type-ref id="bridge-eth" />
</supported-bridge-type-refs>

<label>IR Send</label>
<description>Send IR codes</description>

<channels>
<channel id="irSend" typeId="irSend-channel" />
<channel id="lastupdate" typeId="lastupdate-channel"/>
</channels>

<config-description>
<parameter name="nodeId" type="text" required="true">
<context>NodeId</context>
<label>NodeId</label>
<description>The ID of the node in the MySensors network
</description>
<default>999</default>
</parameter>
<parameter name="childId" type="text" required="true">
<context>ChildId</context>
<label>ChildId</label>
<description>The ID of the child of a node in the MySensors network
</description>
<default>999</default>
</parameter>
</config-description>
</thing-type>

<thing-type id="irReceive">
<supported-bridge-type-refs>
<bridge-type-ref id="bridge-ser" />
<bridge-type-ref id="bridge-eth" />
</supported-bridge-type-refs>

<label>IR Receive</label>
<description>Receive IR codes</description>

<channels>
<channel id="irReceive" typeId="irReceive-channel" />
<channel id="lastupdate" typeId="lastupdate-channel"/>
</channels>

<config-description>
<parameter name="nodeId" type="text" required="true">
<context>NodeId</context>
<label>NodeId</label>
<description>The ID of the node in the MySensors network
</description>
<default>999</default>
</parameter>
<parameter name="childId" type="text" required="true">
<context>ChildId</context>
<label>ChildId</label>
<description>The ID of the child of a node in the MySensors network
</description>
<default>999</default>
</parameter>
</config-description>
</thing-type>

<!-- CHANNELS -->

Expand Down Expand Up @@ -1153,4 +1280,28 @@
<description>MySensors Water Electric Condictivity Channel</description>
<state readOnly="false"></state>
</channel-type>
<channel-type id="mysensorsMessage-channel">
<item-type>String</item-type>
<label>MySensors Message</label>
<description>MySensors Message Channel</description>
<state readOnly="false"></state>
</channel-type>
<channel-type id="text-channel">
<item-type>String</item-type>
<label>Text</label>
<description>MySensors Text Channel</description>
<category>Variable</category>
</channel-type>
<channel-type id="irSend-channel">
<item-type>String</item-type>
<label>Text</label>
<description>MySensors IR Send Channel</description>
<category>Variable</category>
</channel-type>
<channel-type id="irReceive-channel">
<item-type>String</item-type>
<label>Text</label>
<description>MySensors IR Receive Channel</description>
<category>Variable</category>
</channel-type>
</thing:thing-descriptions>
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,11 @@ Bundle-Version: 2.0.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-ClassPath: .
Import-Package:
com.google.common.collect,
com.google.common.base,
com.google.common.collect,
com.google.gson;version="2.2.4",
gnu.io,
org.apache.commons.lang,
org.openhab.binding.mysensors,
org.openhab.binding.mysensors.handler,
org.eclipse.smarthome.config.core,
org.eclipse.smarthome.config.discovery,
org.eclipse.smarthome.core.library.types,
Expand All @@ -21,11 +20,15 @@ Import-Package:
org.eclipse.smarthome.core.thing.binding.builder,
org.eclipse.smarthome.core.thing.type,
org.eclipse.smarthome.core.types,
org.openhab.binding.mysensors,
org.openhab.binding.mysensors.internal.handler,
org.osgi.framework,
org.osgi.service.cm,
org.osgi.service.component,
org.osgi.framework,
org.slf4j
Service-Component: OSGI-INF/*.xml
Export-Package: org.openhab.binding.mysensors,
org.openhab.binding.mysensors.handler
Require-Bundle: org.eclipse.smarthome.core
org.openhab.binding.mysensors.internal.handler
Require-Bundle: org.eclipse.smarthome.core,
org.openhab.io.transport.serial,
com.google.gson
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,9 @@
http://www.eclipse.org/legal/epl-v10.html
-->
<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" immediate="true" name="org.openhab.binding.mysensors.internal.MySensorsHandlerFactory">

<implementation class="org.openhab.binding.mysensors.internal.MySensorsHandlerFactory"/>
<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" immediate="true" name="org.openhab.binding.mysensors.internal.factory.MySensorsHandlerFactory">

<implementation class="org.openhab.binding.mysensors.internal.factory.MySensorsHandlerFactory"/>
<service>
<provide interface="org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory"/>
</service>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import java.util.Set;

import org.eclipse.smarthome.core.thing.ThingTypeUID;
import org.openhab.binding.mysensors.internal.MySensorsMessage;
import org.openhab.binding.mysensors.internal.protocol.message.MySensorsMessage;

import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Lists;
Expand Down Expand Up @@ -61,6 +61,7 @@ public class MySensorsBindingConstants {
public static final int MYSENSORS_SUBTYPE_S_DISTANCE = 15;
public static final int MYSENSORS_SUBTYPE_S_LIGHT_LEVEL = 16;
public static final int MYSENSORS_SUBTYPE_S_LOCK = 19;
public static final int MYSENSORS_SUBTYPE_S_IR = 20;
public static final int MYSENSORS_SUBTYPE_S_WATER = 21;
public static final int MYSENSORS_SUBTYPE_S_CUSTOM = 23;
public static final int MYSENSORS_SUBTYPE_S_RGB_LIGHT = 26;
Expand Down Expand Up @@ -197,6 +198,10 @@ public class MySensorsBindingConstants {
public final static ThingTypeUID THING_TYPE_RGB_LIGHT = new ThingTypeUID(BINDING_ID, "rgbLight");
public final static ThingTypeUID THING_TYPE_RGBW_LIGHT = new ThingTypeUID(BINDING_ID, "rgbwLight");
public final static ThingTypeUID THING_TYPE_WATER_QUALITY = new ThingTypeUID(BINDING_ID, "waterQuality");
public final static ThingTypeUID THING_TYPE_MYSENSORS_MESSAGE = new ThingTypeUID(BINDING_ID, "mySensorsMessage");
public final static ThingTypeUID THING_TYPE_TEXT = new ThingTypeUID(BINDING_ID, "text");
public final static ThingTypeUID THING_TYPE_IR_SEND = new ThingTypeUID(BINDING_ID, "irSend");
public final static ThingTypeUID THING_TYPE_IR_RECEIVE = new ThingTypeUID(BINDING_ID, "irReceive");

public final static ThingTypeUID THING_TYPE_BRIDGE_SER = new ThingTypeUID(BINDING_ID, "bridge-ser");
public final static ThingTypeUID THING_TYPE_BRIDGE_ETH = new ThingTypeUID(BINDING_ID, "bridge-eth");
Expand Down Expand Up @@ -254,7 +259,9 @@ public class MySensorsBindingConstants {
public final static String CHANNEL_VAR = "var";
public final static String CHANNEL_VA = "va";
public final static String CHANNEL_POWER_FACTOR = "power-factor";

public final static String CHANNEL_IR_SEND = "irSend";
public final static String CHANNEL_IR_RECEIVE = "irReceive";
public final static String CHANNEL_MYSENSORS_MESSAGE = "mySensorsMessage";
public final static String CHANNEL_LAST_UPDATE = "lastupdate";

// Wait time Arduino reset
Expand Down Expand Up @@ -322,7 +329,9 @@ public class MySensorsBindingConstants {
put(MYSENSORS_SUBTYPE_V_VAR, CHANNEL_VAR);
put(MYSENSORS_SUBTYPE_V_VA, CHANNEL_VA);
put(MYSENSORS_SUBTYPE_V_POWER_FACTOR, CHANNEL_POWER_FACTOR);

put(MYSENSORS_SUBTYPE_V_TEXT, CHANNEL_TEXT);
put(MYSENSORS_SUBTYPE_V_IR_SEND, CHANNEL_IR_SEND);
put(MYSENSORS_SUBTYPE_V_IR_RECEIVE, CHANNEL_IR_RECEIVE);
}
};

Expand All @@ -344,7 +353,8 @@ public class MySensorsBindingConstants {
THING_TYPE_DOOR, THING_TYPE_MOTION, THING_TYPE_SMOKE, THING_TYPE_DIMMER, THING_TYPE_COVER, THING_TYPE_WIND,
THING_TYPE_RAIN, THING_TYPE_UV, THING_TYPE_WEIGHT, THING_TYPE_DISTANCE, THING_TYPE_LIGHT_LEVEL,
THING_TYPE_HVAC, THING_TYPE_WATER, THING_TYPE_CUSTOM, THING_TYPE_LOCK, THING_TYPE_SOUND,
THING_TYPE_RGB_LIGHT, THING_TYPE_RGBW_LIGHT, THING_TYPE_WATER_QUALITY);
THING_TYPE_RGB_LIGHT, THING_TYPE_RGBW_LIGHT, THING_TYPE_WATER_QUALITY, THING_TYPE_MYSENSORS_MESSAGE,
THING_TYPE_TEXT, THING_TYPE_IR_SEND, THING_TYPE_IR_RECEIVE);
/** Supported bridges */
public final static Set<ThingTypeUID> SUPPORTED_BRIDGE_THING_TYPES_UIDS = ImmutableSet.of(THING_TYPE_BRIDGE_SER,
THING_TYPE_BRIDGE_ETH);
Expand All @@ -355,6 +365,6 @@ public class MySensorsBindingConstants {
THING_TYPE_DOOR, THING_TYPE_MOTION, THING_TYPE_SMOKE, THING_TYPE_DIMMER, THING_TYPE_COVER, THING_TYPE_WIND,
THING_TYPE_RAIN, THING_TYPE_UV, THING_TYPE_WEIGHT, THING_TYPE_DISTANCE, THING_TYPE_LIGHT_LEVEL,
THING_TYPE_HVAC, THING_TYPE_WATER, THING_TYPE_CUSTOM, THING_TYPE_LOCK, THING_TYPE_SOUND,
THING_TYPE_RGB_LIGHT, THING_TYPE_RGBW_LIGHT, THING_TYPE_WATER_QUALITY, THING_TYPE_BRIDGE_SER,
THING_TYPE_BRIDGE_ETH);
THING_TYPE_RGB_LIGHT, THING_TYPE_RGBW_LIGHT, THING_TYPE_WATER_QUALITY, THING_TYPE_MYSENSORS_MESSAGE,
THING_TYPE_TEXT, THING_TYPE_IR_SEND, THING_TYPE_IR_RECEIVE, THING_TYPE_BRIDGE_SER, THING_TYPE_BRIDGE_ETH);
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ public class MySensorsBridgeConfiguration {
public Integer baudRate;
public Boolean imperial;
public Boolean skipStartupCheck;

public Boolean enableNetworkSanCheck;
}
Loading

0 comments on commit 9caec47

Please sign in to comment.