Honda CRX Forum banner

Microcontrolled climate control cables

17K views 25 replies 13 participants last post by  EF RaceRR 
#1 ·
Looking to get some input from people have used microcontrollers in a CRX, maybe steer me in the right direction?

My idea:
Get rid of the gear driven heater control cables, and use servos to operate the water valve and blend door. Reasoning behind doing so:

1. We all know the climate control panels are delicate - mine is not cracked yet, and I'd like to keep it that way.
2. I can never seem to have the cables adjusted correctly, either its warm when I want it hot, or warm when I want it cold. (I may have discovered the issue, I have two broken CRX climate controls, and they have different cable arms with different cable thows. Hmm.)
3. Temperature selection is always a guess, there is lots of slop in the gear and stiff in sections. I always wonder if it is actually FULL hot or cold.

I did some C/C++ programming in high school, and the BASIC language is pretty basic. The controller I bought seems more than capable of running the two servos. I plan to retain the factory knob, and replace the splined shaft that drives the gear with a potentiometer to feed the controller a resistance value. With a few lines of code and a RC time circuit, I can command the the servos to do the dirty work and be pretty accurate.

A few questions I have:
1. Anyone know the specifics of the temp knob in our cars? Specifically the splined portion... Any 5 or 10k linear pots line up?
2. Should I use another controller? The local Fry's has a small line of Arduino boards that are fairly cheap (<$50), but I know nothing about them. I bought a larger STAMP board, but it was $100.
3. The controller I have has 16 I/O pins... any ideas on other gadgets I can run? Was thinking cruise control and possibly RFID keyless entry with an add-on controller.
4. Thoughts?
 
See less See more
#4 ·
Oh yeah, and if you are controlling the hot/cold valve, you might as well thrown in a temperature sensor to give you a thermostat! You could add a button that locks the temperature at what it is at currently, or you could have a switch that makes it so that the potentiometer controls the temperature instead of directly controlling the blower.
 
#5 ·
Slowly been playing with this, and the prototype is basically done. I may have discovered that the servos are not powerful enough and my new math has discovered that the servo horns need to be longer. IIRC these servos are all plastic, and rated at 96 inch-oz (.5 ft-lbs). I thing with all the crap I bought and wasted/redid I'm in it roughly $200. Half of that was the STAMP board which could be replaced with an Arduino for much cheaper but I wanted the future expandability. Here is what I've come up with so far...


This is the controller/servo box, power and resistance value from knob in, two cables out. The power will be a switched 12vdc-6vdc converter located under the dash somewhere. The box is roughly 6"x4"x2.5", I'll most likely velcro it to the carpet behind the center console.


This plate and switch replaces the gear driven arm and cable assembly from the back of the climate control. Factory screw holes and locating holes, plus its much lighter than the stock stuff. The factory knob should be able to be retained with some modification and a small set screw. Three wires to/from the potentiometer; ground, +5vdc, and a return voltage. Pretty simple.


Everything inside of the project box - basically everything was purchased from Fry's. Home Depot had the hardware. The STAMP board has lots of room for added whatever, and coding is easy to update and test. I am using 1 I/O pin and 2 servo headers, so easily 10 I/O pins for whatever in the future. The breadboard looks like crap, I would like to move everything up top when it is up and running.


A lower shot of the servo/cable board. Not quite perfect, but it'll do. Spaced the servos down a bit, then the board up a bunch. Fairly rigid. Note the 4 pin 90 degree molex header... three pins will be soldered/wired to the potentiometer once the length has been determined, completing the RCTime circuit on the breadboard.

Comments?
 
#6 ·
Pretty basic coding, once everything is mounted, I can adjust the cable min/max locations via the servo control, and also scale and offset the servo throws as required with the STAMP editor and a USB cable.

' {$STAMP BS2}
' {$PBASIC 2.5}

water VAR Word
blend VAR Word

DO

HIGH 8 ' charge the cap
PAUSE 1 ' " for 1 ms
RCTIME 8, 1, water ' measure RC discharge time
DEBUG DEC ? water ' display result
blend = water ' set both servos to RCTime value
water = water */ 24 ' water valve scale (rate) higher = faster
blend = blend */ 16 ' blend door scale (rate)
water = water + 500 ' water valve servo offset (center)
blend = blend + 500 ' blend door servo offset (center)
PULSOUT 12,water ' command water valve servo
DEBUG DEC ? water ' display water valve servo position
DEBUG DEC ? blend ' display blend position position
PULSOUT 13,blend ' command blend door servo
DEBUG CLS

LOOP
 
#8 ·
Your temp issues were probably at the valve under the hood. Pretty neat project, I know my old chevy beretta used servos for the hvac. The money you've spent, you could have a new climate control, but I admire what you are doing.
 
#9 ·
I agree, with the money I have spent on this little project I could have purchased another climate control. However, I have had quite a bit of fun with it so far.

I mocked up one cable to a spare water valve, and the servos just don't have enough torque to push/pull the valve closed/open. Will need to upgrade those and find longer servo arms to make sure I have a complete throw of the valve arm. Will update eventually...
 
#11 ·
That's really cool! Once you are done, are you gonna move the circuit from a breadboard to a perfboard? That could make it a lot more compact and reliable.
Right now I am working on putting power windows in my car with capacitive touch sensors in the door panel, so you just touch a spot on the door panel to raise/lower the windows and there's no need to mount buttons. Next I think I might copy your project, and make it so that the hot/cold knob controls the cabin temperature like a thermostat instead of just directly controlling the heater valve.
 
#12 ·
I admire your project. I am working on something similar with my infortainment/carputer setup with a raspberry pi. What you are looking for are either metal gear servos or high torque servos. Those are some places that I trust for RC parts. You will need to use the std full size servos to get proper torque values. I initially tried to use the servos, but did not like the whine that they produce from always being on, plus you can burn them out if they are on constantly without proper cooling.

I am working on using a step motor system (much larger in parts) but have a defined resolution and can hold a position without the whine and some even without power once moved into the proper "position". They are basically like smart servos used in industrial applications and can give feed back on what is going on. You are definitely further along than I am with you project. I cannot wait to see this work.
 
#13 ·
Great Thread ! :)

I've been thinking the same thing .. as a matter of fact i think there is some info on temp controlled circuits at the ServoCity .. ( you can get high torque servos there too )
http://www.servocity.com/html/hitec_tel ... asic_.html

This kit has inputs for temperature sensor that go from -40°F to 392°F

The trick here is to have a servo with "position sensor"
There is the optical position sensor , which reads from a thin disc with a pattern printed on it
( like on the side of a turn table platter for the speed adjustment / strobe )
roboteq has some very robust speed controllers that have the optical position sensor input ..
the JDM aircon has 3 temp sensors: bumper = ambient temp , in climate control = cabin temp , on evaporator = system temp
 
#14 ·
I used to be real big into R/C cars, and I used ServoCity on a few occasions. They've got good prices and fast shipping from what I can recall, and they also sell the stronger servos you would likely need. Hi-Tec servos are what you want, and they make them all the way up to almost 500 oz/in (30ft lbs roughly).

As some other people have already pointed out, the servos may create a lot of noise or get really hot. They're generally silent and don't generate too much heat if they aren't under stress, so the key to getting a reliable system would be to make sure that your servos are only pushing/pulling when you change the climate control settings.

All that said, I am very interested in this. I've been looking for a solution for my climate control that won't ruin the OEM CRX look. I like the kind of retro 80's looking climate controls our cars have, I just don't like how they all break eventually.
 
#17 ·
Well, well...

Been off in la-la land for many months, but finally have returned to this little project. I need to take updated pictures of what version 1.0 is looking like, but it is basically done on the bench. I've learned a bit about this project, and although it isn't installed in the car and operating yet, I am already beginning version 2.0 with a larger scope. I doubt I'll go full on auto air-con, but most everything will be digitized. Collecting parts now...

Learned:
1. The STAMP board was decent for what it is, but will be doing the next one up with an Arduino board. The programming code is much more straightforward I think with C, plus the boards are dirt cheap and have way more community support.
2. You get what you pay for in servos. I've been through three different types; started with a Parallax branded plastic unit which is underpowered for most anything automotive related. Cheap off brand metal geared servos are poorly constructed, and still lacked the power I needed. I ended up buying a $70 Savox servo for the water valve... pricey but it works very well.
3. There is more than one way to skin a cat. After trying to engineer multiple pivots to try and retain the factory cable arm from the back of the stock climate control, I gave up. Since i have the power of 1s and 0s in my favor, I ended up modifying the code and run the two cables independently. Luckily, the blend door doesn't need much power to get it to move, so a cheaper servo i already had will work.

I'll post pictures as I can, I decided to relocate the controller to the rear so i suppose i should finish up the rear spare cover area first. Stay tuned...
 
#18 ·
Good to see life in this project. I have pretty much stalled on all my projects as my wife has had me move my man cave in the double digits since we moved to WA. I have not space and currently all of my stuff is crammed in the garage. You going through the pain may make it easier for me when I finally get the raspberry pi installed in the car and hooked up to the climate control and what not.

Good luck man.
 
#19 ·
Originally I had looked into linear servos to do away with the cables altogether and placing the servo wherever it needed to be, however they were a bit expensive. I tried a few other cable types, including the stock plastic sheathed cable. The type I had hoped would work was not rigid enough for the push operations, and required soldering on threaded ends and using plastic heim joints. These were designed mainly for model aircraft applications

I settled on solid wire with a spiral wrapped sheath that i got from the auto parts store, and forming the ends to work with standard servo arms. There are hundreds of different high performance cables out there, but again are pricey. I had even toyed with the idea of mounting the servos by the spare tire, but the friction losses would be too great and too many bends for the servos to deal with. The brass piece serves two purposes, first as a height adjuster for the servo and arm and second as a holder. Its tapped all the way through; machine screw from the bottom and set screw holding the cable in place from the top. Number size drill bits are a must have! I also found these predone servo holders from someplace, prethreaded for 6-32 screws at the servo box. I think I got these from servocity. The water valve is an aftermarket unit from the auto parts store.







For the servo noise... The potentiometer that dictates what temp I want reports back a value of 1-3100 or so to the controller; I ended up adding a IF statement in the code that would prevent the servos from readjusting if the value had not changed by more than 5 points since the last time through the loop. Without it the servos would move every time through the loop and was quite annoying.

I am torn for version 2.0... Do I retain the entire look and feel of the stock climate control with clicky buttons but digitize all of the outputs? OR... remove the fan speed slider and mechanical buttons in favor of a smaller touch screen and let the controller do all of the work? That may be 3.0 worthy, but i think I'll retain everything for now.

MOSFET blower control is also in the works to get rid of the resistor and add some in-between blower speeds... Stay tuned.
 
#21 ·
i think you're heading in the right direction with this project. You can get a varistor that would work for varying blower speed and would only use one of your analog outputs. You could update the buttons and replace the electrical contacts with transistor easily enough especially if you have 16 i/o.

You can get a barebones arduino for around $5 rather than the $100 you paid for which would help you out. Development is just as easy and only requires ftdi programmer to work.
 
#23 ·
I am doing away with buttons on my HF and going with a 7 inch double din touch screen. My wife has opted for the accord climate control swap. Since I am working on the data logging and infotainment stuff with the rpi, that was the best solution for me. I did not want to have to use a tiny 2 inch screen link on an MPGuino.
 
#24 ·
Finally took some pictures of the rear trunk area, doing the wiring and lid at the same time so there have been a few re-dos to get everything to work out. I'm trying my hardest to keep the area inside of the spare tire free of electronics, i use that area for jumper cables, spare tire tools, and an actual spare tire. Its looking like some control cables will have to route through that area though... Take a peek of the progress.


Power comes to the rear fuse panel via 8awg from the battery, ground from a point behind the right side trunk plastic near the speaker bracket. A power cable runs back forward to the front fuse panel via 10awg. I'm using Blue Sea fuse blocks, the model with integrated ground bus bar. I really like these things, neat and tidy, and cheap too! Three Bosch style relays up in the left corner, one switched 12v, one switched ground and tied to the small strip below, and a spare relay. The yellow wire brings switched 12v to run the relay coil. The grey cable is 24-25C for hopefully all of the control I/O for everything.

More to come...

Close up of the fuse panel. The DC-DC step down converter was stolen from a switchable power supply, and runs the Stamp board in the lower right corner of the trunk lid with 6-9v.


This is the pigtail for the front servos and temperature knob. I bought a bunch of solder cup DB9s... what a PITA. I'll finish the project with crimp terminals and pass through connectors.
 
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top