Is OpenHAB with remote devices possible?

I’m looking for a setup where I have “things” in multiple physical locations and would like to have multiple users have access. Is such a setup possible with OpenHAB? I’d prefer to have devices connect across the internet rather than needing an OH instance at every location. If I do need an OH instance per-location, are there any sort of pre-installed devices available to buy?

Just wanting to know if such a setup is possible or not, and what the setup might entail in a very broad overview.

It’s possible, but depends a lot on exactly what you want to do.

The first thing I’d ask is: do the locations need to talk to each other so that one can control the other? If not, then it will be much easier to set up OH in both locations and then connect as necessary using myopenHAB.org or a VPN. Each system will run independently and–crucially–not be dependent on the Internet. This sounds like more work, but it would (in my opinion) be much easier to maintain and troubleshoot.

To directly answer your question, you can use the Remote openHAB Binding to control one server’s devices from another.

Nope, but for people who are new to Linux and single-board computers (SBC), we typically recommend Raspberry Pis with the openHABian system image. There’s a learning curve to get started, but we’ll help you fill in the blanks after encouraging you strongly to read the documentation.

You can run openHAB on pretty much any computer, but openHABian makes it much easier to get started. The problem is that Raspberry Pi 4s are still in short supply. Hopefully that will change in the next few months. If you can find a used Raspberry Pi 3B, that would be sufficient for openHABian.

I know you’re looking for broad strokes, but it would be helpful if you could provide more detail on what you want to do and why you want to do it. That’ll enable us to help you find the best solution, which may or may not match the vision you have in your head. :wink:

As with most things, the answer is it depends.

That should be supportable for some “things” and not others. For example, cloud API devices can be access from anywhere. But Zwave/Zigbee requires a transceiver to be local to the devices and either that serial connection between the transceiver and OH be local or exposed through a serial to IP interface.

You can have multiple users but there are only two roles, admin and user. And access is managed by role, meaning what any “user” can see, all “users” can see.

Via what?

If they are network based devices, please please please do not expose them to the Internet. That’s a really bad idea. But you can link all the machines together using a VPN of some sort (e.g. Tailscale). But your regular off the shelf IoT devices won’t support that so you’ll need a WiFi gateway or another machine on those remote networks to make the links.

The closes to that is an RPi with openHABian.

I was hoping to have a setup where OH was running on a VM, and have the devices connect to that. But it seems I do indeed need OH running at each location as a gateway. That’s what I suspected. Thanks for the help!

If your devices speak MQTT (or are supported by {zigbee,zwave}2mqtt) they can be connected over the internet to a central openHAB instance.
Mosquitto supports TLS.