Developing an openHAB server hardware

Hi all,

we are a small group of hardware and software engineers who are developing a device for smart IoT applications. Shortly our “Telegea Smart Hub” device will go into production. As first application of this device it will be deployed as the remote controller hardware of the Telegea platform.

But the device is not limited to that and was designed with a broad range of applications in mind. We think it has many features which make it an excellent hardware platform for running the openHAB server software. The idea is to offer this device as “openHAB box”, probably with the openHABian OS already installed and customized for the hardware, so anyone can just plug it in and start playing with openHAB. But the device is completely hackable so there are no limits to what you can do with it.

The device is built around the Raspberry Pi Compute Module which means it runs all the software which runs on the RPi. Currently we use the first generation CM but the device is also compatible with the upcoming CM3 which has the same CPU and RAM as RPi3. Persistent storage is implemented on the CM as 4Gbyte eMMC Flash which is a robust solution compared to standard SD cards.

Additional to the compute core the hardware provides “out of the box” many interfaces to connect the most common IoT devices and sensors. Interfaces we didn’t think of can be added via extension modules.

The device provides the following features:

  • Based on RaspberryPi Compute Module
  • Real time clock (with integrated battery) for time keeping during reboot and short power off
  • On board temperature and humidity sensor
  • 2 configurable RJ14 sensor connectors for external wired sensors (GPIO, I2C, SPI)
  • Screw terminals for 8 digital inputs for pulse counting or status signals
  • Screw terminals for 4 analog inputs (0-5V)
  • Integrated AC IN voltage measurement circuit (via 2 ADC channels)
  • Additional configurable GPIOs (PCB header)
  • RS485 interface for communication with Modbus devices
  • Ethernet port (100BASE-TX)
  • 2 USB host ports for extensions
  • EEPROM for persistent product data storage
  • Radio module (XBee shape) for connectivity with wireless sensors (optional)
  • Wifi module (optional)
  • 2.8" Touchscreen (optional)
  • RPi compatible GPIO connector for add on modules
  • DIN rail enclosure for mounting in electrical switch board
  • 5VDC power supply via micro USB or 24VAC via screw terminals

Here is a picture of the current prototype of the board. It still lacks some of the above listed features, which will be added in the production version.

It would be really great to get some feedback from the openHAB user community. Any thoughts, comments ideas? Are there any features you are missing?

Ondrej


Official product page: http://www.dekitalia.com/telegea-smart-hub/

9 Likes

Hi,

it’s a great idea for me.

In the first time, I can suggest to you to integrate ZWAVE device. In Italy xBee device are not more.
Another, I would suggest to include at least two relè.

I think of this as an interface between the classical safety and home automation (zwave or modbus)

Hi Massimiliano, thanks for your feedback.

We have not integrated any radio technology directly on the board because these modules are relatively expensive, so it would unnecessarily increase the cost of the board if you don’t need it. But there is a RPi compatible 40pin header where add-on modules can be plugged in. So to add a Z-wave interface it would be possible to use e.g. the RaZberry module. But if there is demand we would also consider to design our own Z-wave module.

As for the relays, we had 4 relays integrated in the first prototype but removed these. It is a cost issue, good relays are expensive. But mainly if these relays are used to switch mains voltage (230V) it makes certification of the hardware much more complicated. So we preferred to have a low voltage device. Relays can be easily added via USB relay cards with 1,2 or 4 relays, using just an USB cable. Cards with more relays need their own power supply. All relay cards supported by crelay can be used on a Linux system.

The idea is awesome, this is exactly what is missing…dedicated openhab device for consumers.
I miss an consumer ready device which can be bought, installed and is stable enough to stay functional with
least effort (SD-card crash, openhab crash after power failure, manually configuring zwave stick on terminal
when using an USB hub … etc.).

I have a lot of questions about your idea about stuff like is it an one time production or do you want to start
an company? What about support, branding, … but first things first.

First I would suggest to add ‘hardware’ in your topic title so your article will be found by more people.
More people is more feedback :slight_smile:

Second, I would suggest to think seriously about the possibility to add multiple devices
like ZWAVE, RFXCom (434MhZ) (I’m not yet saying how). There is a very nice project started in the Netherlands called ‘Homey’. It started as an kickstarter project and is now ‘ready’ and for sale and maybe you can get ideas from there design/functionalities. Link: Homey technology
I personally think that there is no ‘best’ solution for the question whether to implement devices on board
like zwave or that you should create usb ports/GPIO pins for it. I would suggest to think what your
main goal of your product is and who your ‘customers’ are. There are different kinds of harware
already available like the raspberry pi which you can buy with Openhab OS on it, so
you need to do something different or better than others. Important word here is ‘extensible’ i think. Think of a way so you can support new kinds of devices without forcing customers to buy a new ‘openhab box’ ;-).
So a lot of usb-ports/GPIO pins are a possible solution (or maybe there are other solutions). This way your hardware is sustainable and will only need a software update when supporting a new device.

finally, I would like to say something about backups. I would be really nice if there is a
backup solution supported. Should openhab crash, I should only simply (re)download openhab
and restore my configuration files from…an USB or an on board backup location? or cloud service or something. Maybe a shadow image on an onboard chip/second sd card or something? It would be really nice to have a solution for backups.

A lot of info to think about. I hope my ideas will help you :slight_smile:

IJsbrand van Prattenburg

Thanks for your feedback. This is very important for us. I will try to answer your questions.

The “Telegea Smart Hub” is definitely extensible. It has all vital components on board and we added also those which don’t add much cost to the board but come in handy. The more costly components like radio modules (Z-wave, ZigBee, …) or wired communication interfaces like M-Bus can be added with extension modules. There is an RPi compatible 40pin header for that on the board or we can use the 2 USB host ports. So if there is some extension we didn’t think of it can be added later on by “off the shelf” RPi add-ons or custom made modules.

There are a number of advantages the “Telegea Smart Hub” has compared to the standard RPi:

  • Robust eMMC flash memory instead of SD card
  • Integrated Real Time Clock with battery backup for precise timekeeping
  • Integrated EEPROM chip for product data storage
  • Integrated RS485 interface for communication with Modbus devices
  • Integrated temperature and humidity sensor ST21
  • Integrated 4 channel A/D converter with screw terminals for analog inputs
  • Screw terminals for digital GPIO
  • Screw terminals and RJ14 connector for 1-wire bus
  • RJ14 connector for I2C bus extensions
  • Programmable push button
  • Choice of 5Vdc and 24Vac power supply

So it has most of what is needed for a SmartHome device already integrated which needs to be added to a RaspberryPi or similar SBCs instead. This means it is a handy device which needs little or no hardware setup, but it can still be extended if necessary.

Your comment on the software backup solution is very interesting and this needs to be studied. I think it is a crucial issue for a robust system.

Here is an overview of the provided hardware interfaces.

Just these days we received the first samples of the latest revision of the board from production and testing it in the lab.

So as soon as the latest issues have been fixed we would like to start porting the OpenHABian OS to this hardware platform. Unfortunately we have very few resources who are tied up in product development at the moment. So if there are any volunteers interested in helping out with this porting, we could provide the hardware and work together to achieve this.

Ondrej

1 Like

I like what you are doing here!
A more simple plug and play out of the box solution will make Openhab available for more people with not so much technical background.
But be aware when you sell it, you also need to spend a sigificant amount of work for support!
What is the sell price you plan for this board?

Things are very busy here, so there is not much time to hang around in the forum. :sweat:

Just to answer some more of the questions: We already have a small company and mostly worked as consultants in the telco business. The Telegea.org platform and the “Telegea Smart Hub” hardware device is our first product developed internally. We will surely provide support for the hardware and the Linux kernel integration. As for the OpenHAB support this should be a community effort where our team will certainly be involved.

The price of the hardware device for the end customer has not yet been decided but it will surely be competitive with similar Smarthome devices. Expect it to be less than 300€. If demand is high enough we will manage to lower production cost and also the final price.

These days we bought a Compute Module 3, which is basically an RPi 3 on a DIMM size module, and today I tested compatibility with the Telegea Smart Hub. I installed a recent Raspbian Jessie Lite image on the modules eMMC flash. Then it just took the usual tweeks to get the LAN chip running (we need the CPU to generate the clock for it) and the UARTs to show up. But now the CM3 runs happily on the Smart Hub board and is able to manage all the integrated peripherals.

Next step is to install OpenHAB on it and see how it performs.

A basic installation of OH2 is now running on the Telegea Smart Hub here in the lab. It runs with the Zulu Java distribution for embedded systems as recommended in the docs. We are still learning about OpenHAB but it shouldn’t take too long to add support for all the integrated hardware components and add-ons which can be connected.

1 Like

Impressive feat of work, and i especially like this part of your post:

But the device is completely hackable so there are no limits to what you can do with it.

Id love to get my hands on one board and see where i can get with a little automation project with the geothermal heating system my house. I’ve been looking to create a board myself with rs485 (for the CM3) as the heating system is controlled by a PLC with a MODBUS, however i lack the hardware skills.

Id essentially would only need the base board (can buy and flash the module myself), how and where can i get one?

Hi Rijad,

selling just the bare Smart Hub board is certainly possible. We have boards in stock now but we still need to organize the logistics. There will be a dedicated product page on the Telegea project site shortly with the possibility to order the board.

You can certainly install the software on the Compute Module yourself but be aware that you will need some custom Device Tree overlays to get all the integrated hardware components (e.g. RS485 port) to work. You can find everything you’ll need on the Smart Hub Software Git repository. Have a look in the tools folder.

Ondrej

Hi all,

I am glad to announce that the Telegea Smart Hub hardware is finally available for purchase. We have created a dedicated web page with detailed infos, pictures and documentation.

You can buy the board immediately. The complete kit including the Raspberry Pi Compute Module and enclosure is also on sale but the Compute Module is currently unavailable from all official resellers, so delivery time is somewhat undetermined at the moment. If someone knows a source for these, please let me know.

We are working on a flash image with a customized Raspbian Jessie Lite and OpenHAB2 pre-installed which will be available for download.

Ondrej

Just to let you know that we have the Compute Module 3 in stock now so you can buy also the complete Telegea Smart Hub Kit without delays.

It’s vacation time here and things are progressing more slowly at the moment. But there is some important news I would like to share with you.

The Telegea Smart Hub is now available with the Compute Module 3 and Raspbian Jessie Lite OS pre-installed. This will save you quite some time and will get you going with a working base system immediately.

The main changes to the standard version of Raspbian are the following:

  • Enable clock generation for integrated Ethernet bridge on GPIO pin
  • Enable both UART ports for RS485 connector and serial debug port
  • Enable driver for Real Time Clock chip
  • Enable driver for Analog Digital Converter chip
  • Enable driver for EEPROM chip
  • Enable driver for I²C relay card expansion modules
  • Configure 1-wire bus on screw terminals
  • Install GPIO handling command line tools
  • Install Zulu® Embedded OpenJDK Java

Ondrej

2 Likes

We have done some more integration work and OpenHAB is now managing most of the Telegea Smart Hubs hardware.

The following items can be accessed via the OpenHAB GUI (browser and Android app):

  • Digital Inputs (contact items)
  • On board push button (contact item)
  • Relay switches via USB relay card (switch items)
  • Temperature sensors connected to the 1-wire bus (number items)

The on-board temperature/humidity sensor ST21 is still a bit of a problem but we are working on that. Also the ADC channels still need to be integrated. This activity has just started. But when it is working you will also be able to measure your mains voltage.

We also played with the Astro and Weather addons.

This is the resulting sitemap:

We are setting up a new Github repository with documentation and source code needed for the integration. Eventually also an SD card image with the pre-installed and configured OpenHAB system will be published. So stay tuned …

Ondrej

In addition to the quite common 1-wire temperature sensors, now also devices with serial Modbus interface can be managed by OpenHAB on the Telegea Smart Hub. As an example I used a Chinese temperature and humidity sensor.

And here is a live picture of the demo test plant from the lab.

The following devices are connected to Telegea Smart Hub (top left):

  • 4-channle USB relay card (top right)
  • 1-wire bus temperature sensor (black cable on the left)
  • Modbus temperature and humidityh sensor (bottom center)
  • magnetic window contact (at the top)
  • 2 mechanical switches (bottom right)

The whole setup is mounted into a DIN rail cabinet and it is powered by a 24Vdc power supply module.

Note that all sensors are managed by on board components and no add-on modules need to be used for this setup.

Hi Ondrej, I discovered your boar right now.

We are designing something similar based on Raspberry CM3L :grimacing: with a little bit more hardware.

The preliminary is available on this link: http://www.tanzolab.it/openhab

1 Like

Hi all,

we have created a new Github repository to support third party applications like OpenHAB on the Telegea Smart Hub.
Some initial documentation is already there. Now you can find also the OpenHAB configuration files for the demo test plant I posted here earlier.

Ondrej

1 Like

I was asked in another thread if openHABian would run on the Telegea Smart Hub. Since we hadn’t tried this yet I did a quick test and the installation runs through smoothly. Just flashed the latest openhabianpi-raspbian img file to the SmartHubs Compute Module and powered it up. After about 20mins I could reach the OpenHAB web GUI and the Linux console.

openhabian

With the solid state memory will there be less chance of corruption?