Drive By Wire

Drive By Wire (DBW).  I think this is the post that a lot of people were waiting for.  This is something I’ve wanted to do for a long time and thought this was the perfect opportunity. 

Why DBW? 

If you’ve tuned a DSM on large injectors, lightweight flywheel, etc, etc, etc, you know that they can be a pain to get to idle.  If you have the stock throttle body, you’re limited by a fairly basic ISC motor with a limited range of adjustment.  If you have an aftermarket throttle body and stock ECU (like DSMLink for example), you are even more limited in ISC options, basically only making an inline adapter for a stock ISC, or run no ISC like most of us.  With no ISC, it seems like your options are usually requiring a little throttle to keep the car running during warm up and then a reasonable idle once warmed up or a reasonable idle during warmup and a high idle once warmed up.  I’ve messed with timing, fuel, all sorts of settings to get some cars to warm up and idle decent and sometimes there’s just nothing you can do without changing airflow. 

In comes the DBW throttle body.  The ECU can now open or close the throttle body as much as it needs to get the car to the target idle.  This is far more advanced and customizable than a 30-year-old ISC motor. 

In addition, now that the computer has control of the throttle body, you can do some other cool things.  You can have the computer anticipate the throttle opening and inject fuel at the proper time for that accelerator squirt rather than in a conventional cable system being reactionary to the throttle blade opening.  This is done because the input is from your foot to a sensor on the gas pedal, this tells the computer to open throttle body, so it now knows this event is coming and can squirt in extra fuel at the same time. 

Another benefit is that I can add built cruise control.  All this requires is another input into the ECU to set the cruise control and then instead of that huge box under the hood that we all ditch, it just opens and closes the throttle body as necessary. 

The final benefit that I’ll mention here advanced traction control/launch control.  You can use the throttle body to limit power based on tire slippage or other parameters you setup. 

I’m sure there are other benefits that I’m not thinking of now, if you know of something, please post it. 

Since this event is primarily street driving, I wanted the ultimate in drivability so this seemed like a no brainer. 

To do this on a DSM, it first and foremost requires an aftermarket ECU (Such as the Haltech Elite 2500 I’m using). 

Next you need a throttle pedal and a throttle body.  I chose the GM throttle pedal (I think from a Camaro?) and a Bosch throttle body.  I believe the throttle body is used on Porsche’s and BMW’s and is right around 90mm. 

I already had a DVDT Fabrications sheet metal intake setup for a Q45 throttle body and I absolutely love the way it performs so I didn’t want to get a whole new intake.  I designed up an adapter for the Bosch DBW throttle body and then 3D printed it to verify fitment. 

I actually found a slight interference with one of the screws and the back of the throttle body thanks to this mockup so I modified the design slightly and then sent it off to Albert at DVDT Fab to make it out of aluminum.  His work always looks incredible. 

Here are some pics of the adapters and then installation of the throttle body.

Next was the gas pedal.  You can see its not THAT different from the stock 2G pedal.  I was actually able to use one stock stud on the firewall for it I believe. 

I made an aluminum adapter bracket for it that picks up some stock studs/holes in the firewall and then mounts the pedal.  I had to angle the bottom out more than the 2G pedal to get the full range of motion.  When I have more time, I might look into moving the whole assembly out further rather than angling it in the future if this turns out to not be super comfortable.  Sorry for the bad picture, not a ton of light in the car.  The adapter isn’t my best work either but I was running out of time at this point.

So now its all installed in the car, the next thing is to wire it up to the Haltech Elite 2500.  It was a bit of a pain to find the correct connectors for the Bosch throttle body.  I’m sure many people will just grab junk yard parts and pigtails but I wanted to use brand new connectors.  I had to pay $18 for the throttle body connector and pins and I was able to get the gas pedal GM one for just a couple dollars. 

Now its onto setup.  Haltech makes it super easy.  I did have one glitch during setup.  One of my sensor inputs for the gas pedal had the pull up resistor enabled and I had to scroll over on my screen to see that.  The throttle pedal worked for one opening before going into limp mode and closing before I found that error.  Setup is literally just assign the inputs and outputs in the Haltech software then follow the on-screen instructions.  0% throttle, hit okay, 100% throttle, hit okay, then let it drive the throttle blade through its range of motion and its calibrated.  Once its setup, you can then enable idle control and any other DBW functions you want. 

So how this works:

There are two throttle pedal position sensors in the throttle pedal that use independent inputs to the ECU.  Then there are two throttle plate position sensors in the throttle body that also use independent inputs to the ECU.  Finally there are two stepper motor outputs from the Haltech to the throttle body that drive it to the desired position. 

Haltech I believe uses two different processors to handle the two inputs from the throttle pedal and throttle body.  It’s constantly verifying that the two match.  If it detects a discrepancy between say one throttle pedal sensor and the other throttle pedal sensor, it will immediately send the DBW system into limp mode and close the throttle blade.  This should never be possible as long as both sensors are working properly so its just a fail safe in case one sensor does fail. 

Since I already spilled the beans and told everyone that the car runs and drives and broke already, I will say that this system works great.  I’ll post some videos of it soon also.  With idle control enabled, the car fires right up and sits there and idles.  I didn’t spend any time tuning it at all yet but I seemed to be able to get a fairly nice idle at around 1000 RPM’s with virtually no effort.  I want to add a transmission gear input so that the ECU knows when the car is in gear vs not and I can have two different idle maps.

And I know I’m beating a dead horse but please help out these people who helped me make a build like this possible.  These companies are all AMAZING to deal with and make amazing products or else I wouldn’t put their products in my car or recommend them.