Omnistat driver for CQC

royalj7

Active Member
I thought I'd post here as I haven't heard a peep back on the CQC boards. I'm guessing everyone that uses an Omnistat runs it though the Omni or Elk?? The t-stat is pretty nice and is priced very good, I just want to interface CQC with it directly.

Thanks,
--Jamie
 
I just posted an Omnistat driver, exhumed from the old Premise forum, in the Premise Downloads area. It can be used as a springboard to accelerate the development of an Omnistat driver for CQC.

The zip archive contains an XDO file. An XDO is an XML file that defines the classes, properties and methods of a Premise application. It can be read with a text-editor but it is not the easiest thing to comprehend. It is possible to spot the methods which are written in VBScript. The key method is called OnChangeOnNewData and contains code that reads the serial port and parses the binary data received from the Omnistat thermostat.

Alternately, you can download Premise Home Control (free), install the Omnistat driver and use Premise Builder to clearly see how the driver is constructed and how it behaves. It should provide a good starting point for the development of a CQC-based Omnistat driver.

FWIW
I've perused the source-code for CQC drivers and the translation from Premise to CQC is fairly straightforward.
 
I thought I'd post here as I haven't heard a peep back on the CQC boards. I'm guessing everyone that uses an Omnistat runs it though the Omni or Elk?? The t-stat is pretty nice and is priced very good, I just want to interface CQC with it directly.

Thanks,
--Jamie

The protocol is here:
OmniStat2 Spec

It looks rather complex.

I control mine through the HAI driver, but that requires a panel, of course. Many but not all features are supported.
 
royalj7,

To simplify your life, I exported all of the driver's methods into text files so they can be easily reviewed with an editor. Good luck!
 

Attachments

If someone is interested in writing this driver for CQC I would be willing to compensate them for it. Please PM me if you are interested.

Thanks,
--Jamie
 
If someone is interested in writing this driver for CQC I would be willing to compensate them for it. Please PM me if you are interested.

Thanks,
--Jamie

You could also try rentacoder.com. I've used it and it's awesome. You'll get a bunch of extremely high quotes, but you'll also get dirt cheap quotes from people in 3rd world countries. I had a project that I needed done where most of the quotes here were $1k-$2k. I got quotes from India for under $100, and finally, I had a girl from Azerbaijan do it for $17. It worked perfectly the first time, no bugs. Just make sure you select someone with a lot of feedback and high ratings.
 
Do you recall what programming language was used to develop your application?

I'll take a guess that rentacoder's talent pool is fairly deep when it comes to mainstream languages (C, C++, C#, VB, Perl, PHP, JavaScript, Java, etc) but shallower when dealing with proprietary or special-purpose languages like CML, LUA, etc. In addition, the developer must have access to the Home Automation application and the target device. It's a long shot but certainly worth investigating.
 
Do you recall what programming language was used to develop your application?

I'll take a guess that rentacoder's talent pool is fairly deep when it comes to mainstream languages (C, C++, C#, VB, Perl, PHP, JavaScript, Java, etc) but shallower when dealing with proprietary or special-purpose languages like CML, LUA, etc. In addition, the developer must have access to the Home Automation application and the target device. It's a long shot but certainly worth investigating.

Mine was a web project done in PHP. I don't think you'll have a problem finding talent that knows the languages involved, but getting them access to the hardware might require some creativity. Maybe install a fresh copy of CQC in a VirtualBox instance, plug the omnistat in, and give the coder RDP access to the box.
 
Sorry for the old bump, but I would also be interested in compensanting for an Omnistat driver for CQC, or even Elve. I currently control my Omnistat via the Elk M1 using Elve. I am a bit frustrated with the way Elk does the Fahrenheit to Celsius conversion as it leads me to lose the ability to set certain set point values (i.e. I can set 22 C or 23.5 C but nothing in between). Having Elve or CQC control the Omnistat directly would probably resolve the issue.
 
I do some driver work for hire, so I might be interested in doing it. Maybe if you dig up a couple other interested folks you could split the cost. The cost would kind of depend on how much you wanted just access to basic functionality vs. how much smarts you wanted to be incorporated into the driver itself to make sure you can't do anything wrong.

Obvious basic functionality would be to expose some of the register registers 0 through 20, and most of 57 though 74 as per thermostat sets of fields, and allow those that are writable be writeable. Access to the programming and setup ones could be through a command field where you just pass in a formatted string to indicate what you want to do, if that's desirable, or that could just be treated as setup, and not exposed via the driver, which would simplify it.

We have a remote port server that would let me do the coding from here, using your thermo that's already in place, so that shouldn't be a problem. Of course at the point I'm ready to do some testing you'd want to be there in case I accidentally set the temp to 150 degrees or something.
 
I might be interested too if I can't resolve my Elk>Omnistat issues. I've got 14 stats, since its rs232 would each need its own com port?
 
In theory you can string 4 or more on a line. How well that actually works, I dunno. Someone who has actually tried it would have to give some horse's mouth feedback on that.
 
I got 11, all were connected together to a single port, until I moved the thermostats to be connected directly to HAI. With 100 boud serial conncetion it takes a while to poll all thermostats. HAI uses 300 and I don't see any issues, although I lost ability to use non-standard features like changing screen color etc.
 
Is there any baud limitation based on number of thermos on the line? I would think it would be a pig even at 9600, so if it has to run at 300, it would be even more so. It's already got a lot of timing limitations as well, and proivdes no async notifications (wouldn't work wtih multiples on the same 232 line.) It could take minutes to round robin through 10 of them, it would seem to me.
 
Back
Top