Rosanswers logo

I have written a ROS python package which provides a bridge to the OpenHAB home automation system (open source license)

OpenHAB is an open source system that connects to virtually any intelligent device, such as smoke detectors, motion detectors, temperature sensors, security systems, TV/audio, fingerprint scanners, lighting, 1-Wire, Wemo, CUPS, DMX, KNX, openpaths, Bluetooth, MQTT, Z-Wave, telephony, Insteon, weather sensors, and web services such as Twitter, etc. ROS also provides a basic Web GUI and Iphone/Android app for setting and dynamically viewing values. openhab.org/features

Give your robot knowledge of the wider world

Use Cases:

  • A motion detector in OpenHAB triggers and ROS dispatches the robot to the location.
  • ROS facial recognition recognizes a face at the door and OpenHAB unlocks the door.
  • A Washing Machine indicates to OpenHAB that the load is complete
    and ROS dispatches a robot to move
    the laundry to the dryer.
  • OpenHAB MQTT binding indicates that Sarah will be home soon and a sensor indicates that the temperature is hot. ROS dispatches the robot to bring Sarah's favorite beer. OpenHAB turns on her favorite rock music and lowers the house temperature.
  • A user clicks on the OpenHAB GUI on an IPAD and selects a new room location for the robot. The message is forwarded by the openhab_bridge to ROS and ROS dispatches the robot.

With the openhab_bridge, virtually any home automation device can be easily setup to publish updates to the openhab_updates topic in ROS, giving a ROS robot knowledge of any Home Automation device. ROS can publish to the openhab_set topic (or openhab_command) and the device in OpenHAB will be set to the new value (or act on the specified command).

To download and for more information:


Originally posted by corb on ROS Answers with karma: 339 on 2015-03-12

Post score: 1

Original comments

Comment by BennyRe on 2015-03-13:
Well, usually people post questions to the ROS users mailing list, which is reserved for announcements. In this case you do it the other way round. You post an announcement on ROS answers, which is reserved for questions. Please post this on ROS users. BTW: We already tested your package. Good job!

Comment by Johan on 2015-03-19:
How can I connect my robot with the openhab_bridge?

Comment by Johan on 2015-03-19:
Thanks for your reply. But how does the openhab bridge recognize the robot ?

My robot ist based on Arduino and has ROS

usually i used the following code for building a "connection" to be able to communicate.

rosrun rosserial_python serial_node.py _port:=/dev/ttyUSB0

Comment by corb on 2015-03-19:
Without Arduino/rosserial, it would run like this:

The linux system running ROSCORE would also launch openhab_bridge. The Openhab bridge subscribes and publishes ROS topics. The openhab bridge uses HTTP to talk to the Openhab REST interface.

Comment by Johan on 2015-03-19:
Is it right that using Arduino/ rosserial is not able right now to connect with the openhab_bridge?

Comment by 130s on 2015-12-17:
@Johan please open a new question, instead of asking in comment section (you won't get sufficient attention by right persons in comment).


1 Answer 1


Rosanswers logo

there is an overview here: http://wiki.ros.org/openhab_bridge. The openhab bridge is a small ROS python package that you launch. Your ROS robot would talk to OpenHAB by using ROS publish/subscribe to the bridge.

Originally posted by corb with karma: 339 on 2015-03-19

This answer was ACCEPTED on the original site

Post score: 1


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.