WiFi or wires?

I am planning an ambitious HA project. I have limited means.

If I save money in wire, will WiFi be a viable alternative to using SPI or I2C over twisted pair? The bandwidth requirements are next to nothing.

I'd have to use 500' or so of 3-4 conductor wire and it's a 1500sF 3 floor townhouse with about 8-12
wifi APs in range other than mine.

SPI or I2C over a 500' UTP? No way. It's meant for inter-IC communication. There are other protocols for covering large distances, like RS485.

WiFi could be an option, but you have to check the range. If you have a lot of interference from neighbors, you might not be able to reach all three floors.
Get a few WeMos D1 mini boards to test it. They are around $3.50 a piece, so cost shouldn't be an issue.

Pieter

Hi,

But: Do you own it? Do you have access ways to pull wiring where you need it?

How much are you trying to control? What kind of devices?

The existing power lines can be used for process communication, suitable transceivers exist.

mattlogue:
I am planning an ambitious HA project. I have limited means.

If I save money in wire, will WiFi be a viable alternative to using SPI or I2C over twisted pair? The bandwidth requirements are next to nothing.

I'd have to use 500' or so of 3-4 conductor wire and it's a 1500sF 3 floor townhouse with about 8-12
wifi APs in range other than mine.

Ambitious HA projects are expensive.

If an existing WiFI ap is available everywhere that you want your HA project to operate then that gives a fair indication that you should be able to install your own WiFi with adequate reach. Another option would be Power Line Carrier.

Using WiFi will save you the problem of running a lot of cable (as mentioned by @PieterP SPI and I2C is not suitable), however you are going to need to have a WiFi card at each control point and you are also going to need to have power both for the control devices and whatever is being controlled.

You should search for existing HA projects that are close to what you want to achieve and find out how they were implemented and what the design tradeoffs were.

I will make my own UTP... plan to. But I will have to use something else. I was hoping SPI would work. Power lines I considered. I would modulate it in and out myself, but I hear it isn't easy. I know devices do this. I got ethernet throughout the house and wifi has competition but it is operable amonst three floors in and outside.

I don't own, but I've ran wire before. The super makes fun of me and just says to have plans to get it out when I go.

Get one esp8266 and load a WiFi strength sketch on it and walk to every corner of the house to see the strength of the wifi signal.

If you already have any network cable running in the house you may be able to just use that.

Get down to Basics. How many devices? how many controllers? how many points per controller ? what has to talk what doesn't have to talk

if wifi does not penetrate floors, there is no reason you could not have one WiFi node on each floor that deals with everything on that floor, and then uses the Ethernet cable to connect to your floor to floor bits. a combination of LoRa, RF nodes, WiFi, wired and Ethernet might make the most sense in the end.

Also, if you are authorized to run wires and cut drywall, you could put stations in with displays, or run it all from your cell phone.

Hi,
After reading the discussion I have two suggestions:

There is also another RS-485 Library HERE:

Easy to use Arduino RS-485 interface modules are like THIS:

  • HUMAN INTERFACE: Connect one master Arduino to Ethernet to your router. Use Cayenne or other web-based control panel builder. Then you have your interface on the net anywhere, including your phone, your laptop and a cheap tablet attached to the wall if you want. Or a hotel room in Atlanta.
    See my working example HERE:

That is a live example of the temperatures/status (but you can’t do my controls!)

Looks like this:

Info about that project is HERE: http://arduino-info.wikispaces.com/Arduino-Project-Home-Monitor-Control

DISCLAIMER: Mentioned some stuff from my own shop…

PieterP:
SPI or I2C over a 500' UTP? No way. It's meant for inter-IC communication. There are other protocols for covering large distances, like RS485.

WiFi could be an option, but you have to check the range. If you have a lot of interference from neighbors, you might not be able to reach all three floors.
Get a few WeMos D1 mini boards to test it. They are around $3.50 a piece, so cost shouldn't be an issue.

Pieter

What about using said 4 conductor (2 pair) UTP (non-differential signalling*) with UART serial? It somehow seems that UART would take well over long runs, furthermore, I don't need t3 speeds. I simply wish to consolidate (multiplex) a bunch of 1/0 type and a few floating point sensors into one line and figured arduino could do it. Hell, if not, I'll use a mutliplexor and sort the signals out later, but I'd have to make my own clock signal to sync, etc.

  • What about differential signalling across pair? I hear it's not super easy to do - as in I don't have the requisite amps on hand.

A UART handles a single point-to-point connection, so that a multiplexer must be added for multiple slaves. Also rigid timing has to be imposed on the transmissions, else arbitrary input from the slaves will be lost.

SPI allows for multiple slaves, but requires a dedicated Enable (CS) line to each slave.

I2C allows for multiple slaves and masters on the same bus, without any additional hardware.

A bunch of line drivers/receivers exist in hardware. For differential signals you also need the right cables and line terminators.

If for some reason the WIFI option was a no go, consider a CAN bus. A huge advantage of CAN is that bus glitches are automatically handled by the hardware, corrupted messages are automatically re-transmitted. With SPI / I2C / UART, extra error detection and handling is required. And a CAN bus can be 1 KM long with up to 120 nodes.