A bunch of hardware and a bunch of ideas, but not sure best path forward

Pretty stoked to be a part of the openHAB community and hope I can go from learning to contributing soon.

I’ll try to make this quick and I am sure something along these lines have been asked plenty, but everyone’s situation is slight different starting out anyway.

I have an RPi v3, running Raspbian, a Wink hub I just got that I plan on hacking, a OSRAM Lightify bulb, and an array of 433 outlets and a transmitter on the RPI.

I happen to be an “IT guy” (IT Project Analyst for my day job), who also happens to be a developer, and an avid DIY’er, so no better match for me here, huh?

What I did initially to get my toes wet was to use the 433 Transmitter and outlets and custom built my own webapp and android app (simple, using Python, a cpp framework called CodeSend, and PubNub datastream to facilitate the communication via the web. LOVE PubNub as it does not require me to build a webserver and deal with crappy services like DynDNS and all that junk) I Digress…

I could do more with it as is, but what brings me to openHAB is that I want to be able to use pretty much whatever hardware I want and be able to control it all from one place.

I plan on implementing some Arduino components and sensors in addition to all the other devices that I have listed (plus more to come).

I am boring myself writing this, so you must be bored by now also…my point - I want to get started with openHAB and will admit candidly that my biggest reservation with it is the reliance on a web server. I know…that’s pretty much the whole thing, right? I get that and I can deal with it for now, though my creative brain wants to do more with it, customize it, and perhaps figure a way (or create one) that can work using a DSN, like PubNub, but that is way in the future.

Based on what I have mentioned, what would be the next logical step in my process? I assume hacking with Wink Hub, Getting openHAB installed running and talking with the Wink and then start connecting the current devices that I have. If anyone sees something I am completely overlooking or under/overthinking I would appreciate the feedback. In the meantime, I look forward to learning from and with everyone!

A lofty goal that sadly isn’t currently possible with any hub. However, openHAB has probably the widest support of hardware and technologies of them all with over 150 bindings and each binding representing a separate technology/protocol/api so you are in the right place. But you won’t be able to buy some random something or other off of Alibaba and know for certain it will work with OH without checking first.

The architecture of OH though makes it a breeze to control everything from one place. It provides a layer of abstraction between the devices and the business logic so as far as openHAB’s rules and scripts and UI is concerned, there is no difference between a zwave light switch and a 433 light switch.

Indeed OH has a web server built into it to serve up its built in UIs and provide a REST API, but it is by no means the only way to communicate with it nor is it “the whole thing”. If anything is the “whole thing” it is the OSGi container (OH 1.x is built on Eclipse and OH 2 is being built on Apache Karaf). The web server part is only one component of the whole and while important for many users, by no means required to get functionality out of OH.

It is very reasonable to configure a headless OH (i.e. no sitemap) and not use the REST API (maybe block ports 8080 and 8433) and still communicate with it and implement automation behaviors via some other means. I don’t know much about PubNub but based on looking at their marketing stuff it should be pretty easy to write a PubNub binding to send and receive messages that way. A lot of OH and other home automation users like MQTT which would be a good binding to look at for how to implement a PubNub binding if not as a viable alternative to PubNub.

One of the benefits of OH is you are not stuck with one or the other. For example, you could configure your Items and Rules to work using MQTT to get started, then later implement a PubNub binding and all you would need to do is change your Items. Your rules would still work unchanged (NOTE: there are obviously cases where this might break down but you get the point).

My usual advice is to start small and work your way up. Maybe get one or two lights working on a timer or something, then bring in some info from external services like astronomical events (e.g. sunrise, sunset) from the Astro binding, weather information, etc. Get some data to chart (Persistence is an often overlooked feature of OH and this will help you figure it out even if you have no intention of using a web based sitemap/phone app). Then gradually keep adding to it.

If you are not afraid of beta software with new features being added all the time and limited documentation as of yet, I’d recommend OH 2. You seem like the type to be able to identify, diagnose, and report problems and probably not afraid to give up a little bit of stability to be on the bleeding edge. Otherwise stick to OH 1.8 where the docs and examples are experience on this forum are more robust and complete.

You are in IT so I probably don’t need to tell you this, but spend a little time now thinking about how you will tend to the long term care and feeding of your system. The Pi 3 has a habit of chewing through SD cards due to repeated writes so it might be worthwhile looking into how to set up a read/only Pi config (search the forum and google). Don’t forget your security posture (Tripwire?, centralized logging?, firewalls? isolated vlan? etc.). Much easier to lock things down now and open things up as needed then to get everything working, lock it down and then have to figure out why its broken. And I’ve personally realized some massive time saving benefits using an auto-config package to configure my machines lately (I use Ansible but Puppet or Chef may be more up your alley).

I feel like I’m rambling. Feel free to post any questions here. We tend to be a pretty friendly bunch.

1 Like

@Rich - thanks very much for the time you took to respond! No rambling at all…I can dish out a lot of text myself so can appreciate the reciprocation. You pegged me correctly in being the type who like the beta (though I would most likely have a working system and then a lab setup for the beta to have fun with)

I am glad you pointed out the ability to use OH in the manner you suggested, and as far as PubNub goes, they actually already have API’s I can use with MQTT currently so that is a bonus, but most likely, as you mentioned, I will probably set it up in sort of a vanilla fashion to learn the ins and outs, and then start figuring out how to tweak it to what I want. Additionally, I am glad you mentioned the SD issues associated with RPi, I wouldn’t have even thought about that so will certainly do some research on how to work around that. Being that I am in IT, I have lots of extras that others may not have readily available that I can use.

As far as security, I am more than good on that. Being the geek that I am, I have a darn near fully-fledged business network in my house (firewalls, hardened modem, Layer 2 Cisco switches, and recently ran about 35 cat-6 lines to a patch panel in my mini network cabinet downstairs. Though, I will say that this is where PubNub REALLY shines. It creates subscription channels with loads of security built right in. No need to open any firewall ports at all for it to work, which is really cool. Once I get into openHAB a little more, I would like to work with some other like-minded individuals to come up with a robust implementation using a DSN like PubNub. Good thing about PubNub for us DIY’ers is that I think the free plan is somewhere around 1 million messages a month, which I think should be plenty! :slight_smile:

Again, I appreciate the input and time and look forward to interacting the the community more regularly.

Mike

Welcome!

openHAB is a very good choice for home automation.

In my opinion, ALL home automation systems should have 4 levels of functionality available to the user… I think graceful degradation is the correct term.

  1. Internet access. Cloud based controls and services. Icing on the cake.
  2. Local server only functionality. openHAB fits here. Very well I may add.
  3. Local server down. Yes, I have to get up and flip the switch or adjust the knob myself.
  4. Power grid is down. Low probability, high impact. Late 1800’s lifestyle anyone?

Design for all the above and your system will be easy to live with for the long term.

Awesome…then I must be on the right track because I had already implemented such a structure with my completely homegrown platform I built for my RF’s using my RPi.

And considering that I had been reading a bunch recently of EMP attacks, I would say that if #1 happens, then automation might not be the top of the list of our concerns, but is a good case for #2!

In Florida, I can expect two or three 5 second or less power outages a month and a couple of hours long power outages a year. This is without hurricanes! Having everything correctly configured after a reboot without having to reset ip addresses and such is essential.

One of things I like best about openHAB is its ability to run along side other software packages on my server without conflicts or resource hogging. My current setup has openHAB of course, Node-RED, an MQTT broker, InfluxDB and Grafana.
My sensor nodes and actuator hardware are all homebrew. The esp8266 device is a solid little workhorse. A bit too power hungry for battery operation. The MySensors protocol for 8-bit Atmel Microchip/nRF24L01 nodes is also in the mix for battery operated sensors. Data is exchanged over the MQTT broker between openHAB and Node-RED.

OpenHAB handles the core level chores and I use the other packages more as a prototyping sandbox area. I’ve been through RPi boards, Beagle Bone boards and finally settled on an Intel Atom based SBC with Ubuntu and rotating hard drive as my host system.

The Amazon Ivona text to speech engine sounds great and I am looking forward to playing with the Node-RED -> IBM Bluemix -> Watson cognitive computing platform, for free, soon. Fun stuff!

Code Red has intrigued me in the past but it seemed to have a log of overlap in purpose and functionality with OH, and I don’t have time for learning and using yet another tool that does something I already have handled. I’d be interested to hear about your experience with it running along side OH. What does one do better than the other and that sort of thing.

Twilio text messages to my phone about any events of interest, about 5 minutes of coding.
Some interesting hyper-localized weather reporting text messages or text to speech reports, about 30 minutes of coding.
The Amazon Ivona TTS engine to Node-RED interface is a joy to implement. I have only heard one better TTS engine. Loquendo voices are better, but not by much. In any case, Loquendo no longer seems to be available for hobby use. From what I have listened to the IBM Watson voices, they would come in third or fourth, at least to my ears.

The ease of use of internet connected services is certainly Node-RED’s main strength. I would defer to Peter Scargill’s blog for technical tutorials and depth of working knowledge of Node-RED.

Negatives: Node-RED has no graphical user interface that would be useful for a HA system at present. OH and OH2 are years ahead in that area.

I see openHAB and Node-RED as complementary rather than competitive. Much like Arduino and Raspberry Pi. Each have their own strengths. They work well together.