Sloopdog / Ardunio-Code-Dometic-AC

This code helps communicate between the Nest thermostat and a Dometic single zone ac system
9 stars 3 forks source link

Curious about the timing #2

Open welcometochristown opened 2 years ago

welcometochristown commented 2 years ago

Hey @Sloopdog I'm in exactly the same scenario of wanting to place my dometic RV Thermostat and want to control it myself for turning on the heat in my rv remotely.

Great work with getting all this working btw, I have a question about the timings of the signals being sent in your code. It seems that there is a lot of delayMillisecond between signals, for example the heat_on() function has many delays over half a second, when all added up this seems like a long time.

Are all these signals required to start the heat on process, or is it all part of a start up process? Would I be expecting to wait all those delays before the heating started?

I was also wondering how you turn things off, all of the functions just seem to be for turning things on.

Sloopdog commented 2 years ago

Hi I'm glad I could help. And the timing is because it is recreating the signal the domestic thermostat needs to be turned on. They all need to be the length so that the signal is read correctly. And there is no noticeable wait for the heat or any other function. If you were try and shorten the time then the dometic control board would not understand the signal being sent because it would be effectively a completely different signal.

Hope this helps explain it. Let me know if you have any other questions.

Thanks

On Mon, Nov 1, 2021, 9:08 PM welcometochristown @.***> wrote:

Hey @Sloopdog https://github.com/Sloopdog I'm in exactly the same scenario of wanting to place my dometic RV Thermostat and want to control it myself for turning on the heat in my rv remotely.

Great work with getting all this working btw, I have a question about the timings of the signals being sent in your code. It seems that there is a lot of delayMillisecond between signals, for example the heat_on() function has many delays over half a second, when all added up this seems like a long time.

Are all these signals required to start the heat on process, or is it all part of a start up process? Would I be expecting to wait all those delays before the heating started?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Sloopdog/Ardunio-Code-Dometic-AC/issues/2, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQLPICDDF25KMS7XLKKWWGDUJ42ZHANCNFSM5HFIXDJQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

welcometochristown commented 2 years ago

@Sloopdog I have one last question. I am attempting to implement a simple remote control using my raspberry pi. I can send the signal using its GPIO out (and I can measure the voltages changing correctly) but nothing happens on the thermostat. I think maybe its because raspberry pi operates at 3.3V while arduino operates at 5V.

Do you know what voltage the thermostat considers HIGH, when I measure it manually I can see voltages up to 4.3 being sent by the control panel. Could you confirm any findings that might support this?

sooonmitch commented 1 year ago

@welcometochristown I just started messing around with this project using an ESP and ESPHome. I am currently able to control my HVAC unit (AC, Heat, Fan) with 3.3v signals.

My belief behind this is that the unit needs to understand the digital signal from different lengths of wire (ultimately different voltages that won't match 12). It seems to be flexible enough to handle 3.3, so you may want to look into your timings. Especially with a Pi. The Pi doesn't have a real time clock so the delays could vary, especially under load.

TemperedEnterprises commented 1 year ago

So is this code basically a "recording" of the TX pin when changing the modes?

I have read this is modbus, and modbus is a industrial automation standard with many libraries..

If this is really 300 baud then it is transmitting 300 bits per second.. but that doesn't seem correct since a delay of 500 ms would be 150 bits on/off depending on if set high or low..