High Idle
Ever since I learned about the factory high idle capability with the automatic, I've been searching for a way to get electronically controlled high idle with the manual. It seems most people just use a thumb throttle with a lock. This just wasn't good enough for me.
I looked at tapping an unused vacuum port on the intake manifold which did raise the throttle just about right, but that didn't work because air was getting in unmetered so the computer would idle it back down after a second or two. After thinking about it some more, I realized I'll have to come up with a compromise -- mechanically open the throttle valve using electronics.
First, I bought an Arduino Nano Every and soldered some pins on it.
Then I wrote the small program that simply moves a servo arm to a defined position when there is a voltage detected on one of the pins and moves the servo arm back to the predefined starting point if there is no voltage detected on the pin.
Next, I built some wiring harnesses (used a buck converter to step down the 12V to 5V to power the Arduino and servo), bought a bicycle brake cable and high torque servo, and 3D-printed a box and small part. The wiring harness to the box contains power and ground for the Arduino and servo when the ignition is ON and power from the high idle switch.
I took the gas pedal lever off and drilled a hole and then slid the brake cable and 3D printed part through it.
The gas pedal got remounted and the servo box was mounted to a factory bracket using factory holes. The brake cable was cut to length and secured to the servo arm.
After some tests, I needed to print a new box that was taller and had an extra leg.
So, when the switch is is turned on, the Arduino moves the servo arm which pulls the throttle lever a bit just like if your foot pushed on the pedal. Now I can idle around 1,200 RPM whenever necessary (winching, jump starting another vehicle, charging my discharged battery, etc.). I think v2 will contain a GPS module so the Arduino will only move the servo arm if the vehicle is stationary.