Geekzone: technology news, blogs, forums
Guest
Welcome Guest.
You haven't logged in yet. If you don't have an account you can register now.




310 posts

Ultimate Geek
+1 received by user: 64


Topic # 192361 8-Mar-2016 11:32
Send private message

Howdy,

 

I have OpenHAB running at home for home automation.  I also run an HRV for my house.  The Control Panel obviously displays house and roof temperatures and controls the fans to dump air into the house depending on the temperatures.  I want to integrate the HRV into OpenHAB (for starters, just get it to display the HRV temperatures in the OpenHAB GUI)  I figure I should be able to do this with an Arduino or NodeMCU and tap that into the circuitry at the back of the HRV control panel.  

 

I stumbled across this link which mentions the HRV system uses a simple DS18B20 temperature sensor which is also commonly used sensor for Arduino experiments:

 

http://www.hexperiements.com/?page_id=47

 

 

 

Just wanted to know if anyone has attempted something around this already...??  Thoughts? Potential issues?

 

 

 

Cheers


View this topic in a long page with up to 500 replies per page Create new topic
 1 | 2


310 posts

Ultimate Geek
+1 received by user: 64


  Reply # 1508056 8-Mar-2016 12:35
Send private message

oops, helps if I can spell...  wink

 

http://www.hexperiments.com/?page_id=47

 

 


21607 posts

Uber Geek
+1 received by user: 4429

Trusted
Subscriber

  Reply # 1508097 8-Mar-2016 13:39
Send private message

Link is dead.

 

Ideally you would want to tap into the comms between the keypad and the motor controller since that would get you all the temperatures, and be able to fake button presses hopefully to shut it down etc. It will be a propriatory protocol and would need reverse engeneering.





Richard rich.ms

 
 
 
 




310 posts

Ultimate Geek
+1 received by user: 64


  Reply # 1508101 8-Mar-2016 13:45
Send private message

Try the fixed link above, does not seem overly proprietary at all, uses TTL for communication the link above outlines the serial data and how to interpret

21607 posts

Uber Geek
+1 received by user: 4429

Trusted
Subscriber

  Reply # 1508110 8-Mar-2016 14:02
Send private message

Ah sweet, that makes it easy then. RJ11 double adapter and a 5v arduino and you should be in business. 1200 baud was faultless with software serial when I last tried it out, not like 9600 which I had lots of problems with.

 

I dont have access to a house with one in to play anymore, but my main desire to "hack" it was to just turn it off when it didnt need to be running - roof at 8degrees and the house at 23 means a signifigant increase in heating cost with its always moving a little bit of air in mode.





Richard rich.ms



310 posts

Ultimate Geek
+1 received by user: 64


  Reply # 1534632 17-Apr-2016 22:41
Send private message

I originally attempted this with an ESP8266 and a TTL logic level converter (coz HRV = 5V TTL, whereas ESP is only 3.3V) because it has wireless and a small footprint so will fit in the wall nicely behind the HRV control panel. However I had endless issues getting the data through to the ESP8266 (it was like the TTL logic level converter just didn't want to play game)  So, I've given up on the ESP8266 for now, I'll go back to it later.  I figured I'd get it going on an Arduino Uno for starters (being 5V 'native' so obviously no converter needed) so I can at least get the code worked out. 

 

So, the ribbon cable that comes down from the HRV unit in the roof (that usually goes direct to the control panel) now goes to a splitter, then one feed goes to the control panel, the other has the RX and GND wires split out into the Arduino Uno RX and GND pins.

 

I've coded up the Arduino and have successfully got it printing room temperature to the Arduino debug window.  Still got to code to get roof temperature next, and add some checksum validation code to ensure integrity of the data I'm receiving, but so far all good.

 

The issue I have though, is that as soon as I pretty much plug in the splitter and wire up to the Arduino, the HRV control panel spits out an "Err 02" on the display (or more specifically, as soon as I "complete the Arduino circuit" - eg: plug in both RX and GND, it generates the error on the control panel).  Apparently the error means “Drop in airflow has been detected of the fresh air supply fan. Please check for blockages, especially around the external vent” - however this is obviously just a red herring - the control panel for some reason is interpreting the data incorrectly due to the Arduino being plugged in.  I understand that having 2 x devices reading TTL serial data isn't "in the TTL serial spec" per se, however I've read it can be done usually without an issue.

 

So question is, any ideas on how I can stop the control panel unit from getting this error - which only happens when plugging in the Arduino?  What would I need to wire up between the Arduino and HRV control panel to stop the control panel getting wrong messages?  I've tried some various size resistors but no difference.

 

Any ideas?


1586 posts

Uber Geek
+1 received by user: 156

Trusted

  Reply # 1534660 18-Apr-2016 06:46
One person supports this post
Send private message

Is their a drop in voltage due to the splitter? maybe triggering the error message?





CPU: Intel 3770k| RAM: F3-2400C10D-16GTX G.Skill Trident X |MB:  Gigabyte Z77X-UD5H-WB | GFX: GV-N660OC-2GD gv-n660oc-2gd GeForce GTX 660 | Monitor: Qnix 27" 2560x1440

 

 


21607 posts

Uber Geek
+1 received by user: 4429

Trusted
Subscriber

  Reply # 1534679 18-Apr-2016 08:17
Send private message

Since the uno doesnt have a separate uart from what you upload with, is there a chance you are sending something out from the PC by mistake that is ending up on the recieve pin and then corrupting the comms between the HRV and the wall panel?

 

I prefer the leonardo for that reason, the USB is native to it, so the UART pins are fully able to be used by your own code on Serial1 instead of Serial which is the one that goes back to the host PC.





Richard rich.ms



310 posts

Ultimate Geek
+1 received by user: 64


  Reply # 1534680 18-Apr-2016 08:24
Send private message

I thought about this too so tested it last night - the error occurs as soon as both RX and GND are plugged in AND even if the Arduino is OFF. Prior to that I even removed all serial.print debug statements incase it was that. Perhaps issue might be a ground loop but I can't see any other way around it the way it's wired - unless a combo of electronic components are added to alleviate the issue (I'm not electronics savvy though so wouldn't know where to start!)

21607 posts

Uber Geek
+1 received by user: 4429

Trusted
Subscriber

  Reply # 1534696 18-Apr-2016 09:15
Send private message

Ground loop would cause problems if you just connected the ground.

 

 

 

If you stick the RX into another arduino input pin, does it still error?





Richard rich.ms



310 posts

Ultimate Geek
+1 received by user: 64


  Reply # 1534711 18-Apr-2016 09:58
Send private message

Hmmm interesting...

 

I plug into any GPIO ports without Arduino power, it errors.

 

I plug 5V power from HRV control panel into Arduino, then ports 0-4 it errors, however ports 5 and up it doesn't error.

 

I think the default for all ports are inputs so can't see why this happens, however I'll try software serial and test using say GPIO port 7 and see how I go.

 

Cheers

 

 




310 posts

Ultimate Geek
+1 received by user: 64


  Reply # 1535076 18-Apr-2016 15:54
Send private message

Well that worked a treat. 

 

Defining software serial and plugging into pin 7 with the Arduino 5V powered by the HRV system, does not generate any error on the control panel and both room and roof temperatures are displayed correctly! 

 

(I did think of a possible voltage drop coz of splitter also but with TTL serial, there is room to move its not an exact 0V and exact 5V, and measuring the voltage showed it was within acceptable ranges)

 

Anyways, pretty weird - don't know what caused it (would still like to figure it out, but... better things to do) 

 

Now I've just got to work out how to get it running with an ESP8266 instead!

 

 

 

Thanks for your help.

 

 




310 posts

Ultimate Geek
+1 received by user: 64


  Reply # 1535252 18-Apr-2016 23:14
Send private message

I'm even more confused now... I have 5V power from HRV going to Arduino 5V which I thought is just "completing the HRV circuit" (5V + GND & RX + GND) because without that plugged in the control panel errors) however I just unplugged the USB cable (which is providing the Arduino power) and the Arduino kept running and data continued to be sent (I added MQTT code sending temperature readings via the Ethernet shield to MQTT broker on OpenHAB so could see readings coming in that way) But I didn't think the 5V pin alone could "power" the Arduino? If there was a voltage drop that was causing the error and the Arduino was actually boosting the voltage on the HRV system - then how is the Arduino working - it can't be receiving 5V from the HRV system to power itself and providing 5V to the HRV system to boost voltage? I don't get it - can anyone with some more advanced electronics skills explain?!?!

7829 posts

Uber Geek
+1 received by user: 2581

Subscriber

  Reply # 1535788 19-Apr-2016 16:31
Send private message

the only problem is powering it from 5v may make it become unstable and 5v might not be 5v due to voltage drops in the system

 

http://arduino.stackexchange.com/questions/893/arduino-what-happens-if-i-power-the-arduino-with-both-the-usb-and-external-pow

 

good information there ^^ on how the power supply side of things works


7829 posts

Uber Geek
+1 received by user: 2581

Subscriber

  Reply # 1535792 19-Apr-2016 16:34
Send private message

also how do you have the HRV hooked up to the arduino? it should be in the Vin port or the power jack, not the +5v as thats an output


21607 posts

Uber Geek
+1 received by user: 4429

Trusted
Subscriber

  Reply # 1535795 19-Apr-2016 16:37
Send private message

Jase2985:

 

also how do you have the HRV hooked up to the arduino? it should be in the Vin port or the power jack, not the +5v as thats an output

 

 

5v can also be used to power the arduinos, done it many times. It's connected to the output of the USB/regulated Vin switching stuff.





Richard rich.ms

 1 | 2
View this topic in a long page with up to 500 replies per page Create new topic



Twitter »

Follow us to receive Twitter updates when new discussions are posted in our forums:



Follow us to receive Twitter updates when news items and blogs are posted in our frontpage:



Follow us to receive Twitter updates when tech item prices are listed in our price comparison site:



Geekzone Live »

Try automatic live updates from Geekzone directly in your browser, without refreshing the page, with Geekzone Live now.



Are you subscribed to our RSS feed? You can download the latest headlines and summaries from our stories directly to your computer or smartphone by using a feed reader.

Alternatively, you can receive a daily email with Geekzone updates.