Hello, I am in the process of building a temperature and humidity sensing system. The system consists of a sensor every 5 feet (1.5 m) and up to 32 sensors max per cable, with the average cable being roughly only 5 to 10 sensors. Most cost effective sensors that I have come across use i2c or spi, which I understand will not meet the long cable requirements. My question is what is a communication protocol that best suites my system and also are there any reliable single unit cost effective temp and humidity sensor.
For I2C or SPI it is too long distance. 1-Wire could meet your requirements, e.g sensor DHT22.
I haven't been able to find the long term stability of the DHT22. Would it work for a consumer application?
Datasheet? What about the Arduino? Would it work for a consumer application? DHT22 (also DHT11) is cheap Chinese product, however the internet contains lots positive reviews. Are you looking for some industrial quality device?
I need something that is accurate and reliable over long period of time and long wires. A small sensor using rs-485 would work nice I think but there doesn't seem to be anything on the market.
SPI will run cables that long pretty easily. The problem is that there must be a distinct chip-select (CS) wire for each sensor, so a 32-sensor cable needs 35 wires.
I2C can be pushed up to 20 ft or more with special line drivers. Don't completely discount it but personally, I've seen I2C problems with 20cm of cable.
RS485 is not going to happen unless you build relatively large circuit boards to hold all the required chips and power supplies.
One-wire has been suggested. I've never used it but from what I know it does solve this particular problem quite well.
A MODBUS addressing scheme and tri-stateable drivers can be used with RS232 and TTL serial. I've got a network of units on 80ft of 4-core ribbon cable. Each one holds its transmit line at high impedance until the master authorises it to take control of the transmit line and start transmitting.
Don't be afraid to go wireless. Use your 'cable' as just a power supply and then wireless modules for the actual data transmission.
There would be also solution to use transceivers form some type of bus to another. For an example SHT21 or SHT3x which are I2C and to use a transceiver to another type of bus, e.g. 1-wire (DS28E17). It's just an example, don't think I prefer 1W. Another solution: look for some separate chips for humidity and temperature, but it looks like humidity sesors are mostly I2C.