openHAB 2.0 binding
-
I've been trying to figure this out for a while. For me openhab discovers 4 things Red, Green, Blue and Status. These are all dimmers and I can't get them all to work together as 1 colour wheel? They all work really well independently but that's as far as I got. I've also tried the .items file but with no luck.
@matt-shepherd What works for me :
items - just used 1 channel, V_VAR1, but you could keep them separateString neoPixelRgb "RGB LED string" (grpLighting) { channel="mysensors:rgbLight:ethGateway:rgb01:var1" } Color neoPixelColor "RGB LED string" <colorwheel> (grpLighting)rule
rule "Set RGB value NeoPixelStrip" when Item neoPixelColor changed then val hsbValue = neoPixelColor.state as HSBType val brightness = hsbValue.brightness.intValue val redValue = ((((hsbValue.red.intValue * 255) / 100) * brightness) / 100) val grnValue = ((((hsbValue.green.intValue * 255) / 100) * brightness) / 100) val bluValue = ((((hsbValue.blue.intValue * 255) / 100) * brightness) / 100) val rgbHexString = String::format("%02X%02X%02X", redValue, grnValue, bluValue) sendCommand(neoPixelRgb, rgbHexString) endparsed in node
if (message.type == V_VAR1) { // Write some debug info Serial.print(", New status, V_RGB: "); Serial.println(message.getString()); // starting to process the hex code String hexstring = message.getString(); //here goes the hex color code coming from through MySensors (like FF9A00) long number = (long) strtol( &hexstring[0], NULL, 16); RGB_values[0] = number >> 16; RGB_values[1] = number >> 8 & 0xFF; RGB_values[2] = number & 0xFF; colorWipe(strip.Color(RGB_values[0], RGB_values[1], RGB_values[2]), 50); } -
@the-trung yes, the binding seems to be installed. Serial transport is needed for MySensors. I'm not able to answer questions about mcp binding.
-
Hi @TimO,
I also tried the RGB Light and it seems to be working! (I am using Maghac's RGB LED strip sketch)
Auto discovery worked instantly. I did have to work with the .items file to get the color picker instead of a text input. I also get these two errors every time I send a command:16:57:36.770 [INFO ] [smarthome.event.ItemCommandEvent ] - Item 'rgbLight01' received command 124,89,100 16:57:36.809 [INFO ] [marthome.event.ItemStateChangedEvent] - rgbLight01 changed from 359,91,100 to 124,89,100 16:57:37.117 [WARN ] [rs.internal.gateway.MySensorsGateway] - Variable 2 not present 16:57:37.222 [WARN ] [rs.internal.gateway.MySensorsGateway] - Variable 3 not presentAs I'm relatively new to MySensors, I was wondering if it is normal that the RGB Light Sensor channel is used for this. Or is this just temporary until an actual RGB channel is made?
@FusedHe3 Thank you for testing and your input!
The sketch you are using is representing itself as a RGB sensor and the log you've posted looks good.
About the fiddling with the .items file and the color picker: Thank you! That should'nt be needed anymore, I've changed it here: RGB-Test-Binding
-
@TimO Hey all, looks everything seems to work now, but now i have defined the bindings by the paper UI, and work with the rule definition as show by 'doctor64' ....
thanks for the help
Roger@RVMRVM The definitions carlyler posted looks fine and I've tried to implement this logic into the binding so you won't need the rule anymore. Feel free to test my binding or stay with the rule. Hopefully both would lead to the same result. :)
-
Hello!
I just started to play with OpenHab2 and new binding? thank you for great work.
But, i discover some strange behavior:
Openhab2, ethernet gateway, 3 mysensor nodes, all nodes sucessfully detected and configured in PaperUI, but some data looks like not updated. Looking to log i note some suspicious lines like:00:28:47.077 [DEBUG] [rsAbstractConnection$MySensorsReader] - 3;1;1;0;0;24.6 00:28:47.078 [DEBUG] [rs.internal.gateway.MySensorsGateway] - Node 3 found in gateway 00:28:47.078 [DEBUG] [rs.internal.gateway.MySensorsGateway] - Child 1 found in node 3 00:28:47.078 [WARN ] [rs.internal.gateway.MySensorsGateway] - Variable 0 not presentSorry, i don't know how to dump OpenHab configuration, but item configured.
Any suggestions? -
@FusedHe3 Thank you for testing and your input!
The sketch you are using is representing itself as a RGB sensor and the log you've posted looks good.
About the fiddling with the .items file and the color picker: Thank you! That should'nt be needed anymore, I've changed it here: RGB-Test-Binding
-
@RVMRVM The definitions carlyler posted looks fine and I've tried to implement this logic into the binding so you won't need the rule anymore. Feel free to test my binding or stay with the rule. Hopefully both would lead to the same result. :)
@TimO Perfect, is OK for RGB & RGBW... but now the datastring you send is a decimal string, not a HEX-string as they used normal, it is not a big problem to change this feature in the node script, if you want to have a decimal string.
How do you handle the white color, becaus this is not included in the datastring info. maybe by a switch and a other variable .
something like this:
Roger
-
@TimO Perfect, is OK for RGB & RGBW... but now the datastring you send is a decimal string, not a HEX-string as they used normal, it is not a big problem to change this feature in the node script, if you want to have a decimal string.
How do you handle the white color, becaus this is not included in the datastring info. maybe by a switch and a other variable .
something like this:
Roger
@RVMRVM Interesting. Do you have a corresponding log for me?
Here's my test:
[INFO ] [arthome.event.ItemCommandEvent:43 ] - Item 'mysensors_rgbLight_8a7ca179_rgblight_199_0_rgb' received command 71,46,91 [DEBUG] [.c.thing.internal.ThingManager:366 ] - Delegating command '71,46,91' for item 'mysensors_rgbLight_8a7ca179_rgblight_199_0_rgb' to handler for channel 'mysensors:rgbLight:8a7ca179:rgblight_199_0:rgb' [DEBUG] [.m.c.MySensorsRGBTypeConverter:63 ] - Converting RGB Int to Hex: R d4, G e8, B 7d [DEBUG] [b.m.i.gateway.MySensorsGateway:563 ] - Node 199 found in gateway [DEBUG] [b.m.i.gateway.MySensorsGateway:567 ] - Child 0 found in node 199 [DEBUG] [ractConnection$MySensorsWriter:524 ] - Sending to MySensors: 199;0;1;0;40;d4e87d -
@RVMRVM Interesting. Do you have a corresponding log for me?
Here's my test:
[INFO ] [arthome.event.ItemCommandEvent:43 ] - Item 'mysensors_rgbLight_8a7ca179_rgblight_199_0_rgb' received command 71,46,91 [DEBUG] [.c.thing.internal.ThingManager:366 ] - Delegating command '71,46,91' for item 'mysensors_rgbLight_8a7ca179_rgblight_199_0_rgb' to handler for channel 'mysensors:rgbLight:8a7ca179:rgblight_199_0:rgb' [DEBUG] [.m.c.MySensorsRGBTypeConverter:63 ] - Converting RGB Int to Hex: R d4, G e8, B 7d [DEBUG] [b.m.i.gateway.MySensorsGateway:563 ] - Node 199 found in gateway [DEBUG] [b.m.i.gateway.MySensorsGateway:567 ] - Child 0 found in node 199 [DEBUG] [ractConnection$MySensorsWriter:524 ] - Sending to MySensors: 199;0;1;0;40;d4e87d -
Hey @doctor64 !
Please open a new topic. This one is getting really huge. :-)
Please check if the temperature channel is linked. In PaperUI you may do this by moving to "Configuration" -> "Things" and click on the sensor data.
Hello @TimO !
I delete all things and items (btw, seems like items not deleted completely, and re-apperas after item re-create), create things again and not see error anymore. Some black magic in action, looks like.
I will create separate topic if this issue appears again. Thank you! -
@FusedHe3 Thank you for testing and your input!
The sketch you are using is representing itself as a RGB sensor and the log you've posted looks good.
About the fiddling with the .items file and the color picker: Thank you! That should'nt be needed anymore, I've changed it here: RGB-Test-Binding
@TimO Just tried the changes you made. Color picker now worked straight away! :smile:
I also checked the sketch and it seems to be declaring itself as an RGB Light, not as a sensor. But could it be that what I see in the PaperUI are just the labels that still need to be changed?
void presentation() { // Send the Sketch Version Information to the Gateway sendSketchInfo(SN, SV); present(CHILD_ID_LIGHT, S_RGB_LIGHT); }

One last question: the
Variable 2 not presenterror I get everytime a command is send, is that because those two variables aren't set in the sketch I'm using?Thanks!
-
Hi,
just a quick question:
OpenHab2 can be used without touching any code right?
I use mysensors serial gateway. Tried to set it up all day yesterday from skratch. Also with OpenHabian. But no success.
So it seems i still have to edit files and folders manually in order to get it running right?I got Domoticz working after short time. Was expecting OpenHab2 makes it even more easy :/
-
@TimO Just tried the changes you made. Color picker now worked straight away! :smile:
I also checked the sketch and it seems to be declaring itself as an RGB Light, not as a sensor. But could it be that what I see in the PaperUI are just the labels that still need to be changed?
void presentation() { // Send the Sketch Version Information to the Gateway sendSketchInfo(SN, SV); present(CHILD_ID_LIGHT, S_RGB_LIGHT); }

One last question: the
Variable 2 not presenterror I get everytime a command is send, is that because those two variables aren't set in the sketch I'm using?Thanks!
-
Hi,
just a quick question:
OpenHab2 can be used without touching any code right?
I use mysensors serial gateway. Tried to set it up all day yesterday from skratch. Also with OpenHabian. But no success.
So it seems i still have to edit files and folders manually in order to get it running right?I got Domoticz working after short time. Was expecting OpenHab2 makes it even more easy :/
@edsteve Yes, that's one goal of the binding. For the serial gateway the hardest part is to determine the path of the serial port. Something like: /dev/ttyUSB0 or /dev/ttyACM0 if you're using Linux.
What exactly does not work? Please attach a log from the karaf console.
-
@TimO
I use Nano Neo as Hardware with Armbian Linux and OpenHabian on top. The bundle:list showed me mysensors.
I don't find any Things. Where do i have to put this info: /dev/ttyUSB0 or /dev/ttyACM0?? In which config file?
Now i get an error with karaf saying "connection refused" when i try:ssh -p 8101 openhab@localhostYesterday it worked... the karaf thing make it even more difficult.
EDIT: I just found out that i have to make a demo.things file with the code for the serial gateway.... And for sure that was not the last file which needs manual editing. I go back to Domoticz. Till OpenHab becomes same easy.
-
@FusedHe3 Please enable DEBUG mode in the karaf console and paste the output around
Variable 2 not presenthere.@TimO Thanks for investigating!
Here's the log, but I don't know if it's of any more help.18:36:25.233 [DEBUG] [.converter.MySensorsRGBTypeConverter] - Converting RGB Int to Hex: R 05, G 71, B ff 18:36:25.295 [DEBUG] [rs.internal.gateway.MySensorsGateway] - Node 10 found in gateway 18:36:25.321 [DEBUG] [rs.internal.gateway.MySensorsGateway] - Child 1 found in node 10 18:36:25.408 [INFO ] [marthome.event.ItemStateChangedEvent] - RGBLEDStrip_Color changed from 15,100,100 to 214,98,100 18:36:25.346 [DEBUG] [rsAbstractConnection$MySensorsWriter] - Sending to MySensors: 10;1;1;0;40;0571ff 18:36:25.365 [INFO ] [smarthome.event.ItemCommandEvent ] - Item 'RGBLEDStrip_Color' received command 214,98,100 18:36:25.840 [DEBUG] [rsAbstractConnection$MySensorsReader] - 10;1;1;0;2;1 18:36:25.863 [DEBUG] [rs.internal.gateway.MySensorsGateway] - Node 10 found in gateway 18:36:25.895 [DEBUG] [rs.internal.gateway.MySensorsGateway] - Child 1 found in node 10 18:36:25.919 [WARN ] [rs.internal.gateway.MySensorsGateway] - Variable 2 not present 18:36:26.209 [DEBUG] [rsAbstractConnection$MySensorsReader] - 10;1;1;0;3;100 18:36:26.232 [DEBUG] [rs.internal.gateway.MySensorsGateway] - Node 10 found in gateway 18:36:26.254 [DEBUG] [rs.internal.gateway.MySensorsGateway] - Child 1 found in node 10 18:36:26.276 [WARN ] [rs.internal.gateway.MySensorsGateway] - Variable 3 not presentI guess it may have something to do with a
V_lightandV_dimmeranswer that is being send by the node. (As a reminder: I'm using this this one.) -
@TimO So I finally got around to testing the RGBW version of the plugin. I tested it with one sensor (light and the battery voltage) and an RGBW node.

Results:
- RGBW color settings works well. Its a message of lengths 8 (e.g. 00ff5100) instead of the 9 from domoticz (#00ff5100). So I had to change my node's code. But your solution looks cleaner, so I guess thats fine :+1: What didn't work are all the other values beside "color". As you can see I changed the variable 1-4 and it gets send to the node as message type 24-27, which are custom variables... why did you use these?
- RGBW on/off did not work. The "status" button does nothing. Log below. Would be nice to have a button to send on/off commands to the nodes.
- Light and Voltage sensors seem to work just fine
By the way, short question about openhab 2: what is the difference between things and items? Seems like items/sitemaps are used in the "old" frontends to display sensors/actors. Are things the same for the new paperUI? I have just used that one yet. And why do I have to declare the gateway in a file while the rest is auto discovered (also it seems like some of you also added their sensors to the file with the gateway definition)?
Seems to be hard to find up-to-date easy information on these things, so thanks in advance for an explanation.Log from the status button:
22:55:02.378 [INFO ] [smarthome.event.ItemCommandEvent ] - Item 'mysensors_rgbwLight_gateway_rgbwlight_10_1_status' received command OFF 22:55:02.402 [WARN ] [ensors.handler.MySensorsThingHandler] - Variable not found, cannot handle command for thing mysensors:rgbwLight:gateway:rgbwlight_10_1 of type status 22:55:02.440 [INFO ] [marthome.event.ItemStateChangedEvent] - mysensors_rgbwLight_gateway_rgbwlight_10_1_status changed from ON to OFF -
By the way has someone running openhab together with an echo (alexa)? I am currently trying to use that combination and at least with the RGBW nodes there seems to be no reaction (yet) to the commands.
-

Hello,
With 2 nodes, first has 1 child with id 0 , second has 2 children, id 0 and id 1, I get the following in the logs. Second node is not picked up.
Used the openhab2 zip and the jar from here http://www.oberfoell.com/openhab2/org.openhab.binding.mysensors-2.1.0-SNAPSHOT.jar for the installation.
All the configuration was done from the paperui.
Any thoughts ?
Best regards,
Romeo -

Hello,
With 2 nodes, first has 1 child with id 0 , second has 2 children, id 0 and id 1, I get the following in the logs. Second node is not picked up.
Used the openhab2 zip and the jar from here http://www.oberfoell.com/openhab2/org.openhab.binding.mysensors-2.1.0-SNAPSHOT.jar for the installation.
All the configuration was done from the paperui.
Any thoughts ?
Best regards,
Romeo@frg Please enter
log:set DEBUG org.openhab.binding.mysensorsin the karaf console and post the debug log of the binding here.