When you click on links to various merchants on this site and make a purchase, this can result in this site earning a commission. Affiliate programs and affiliations include, but are not limited to, the eBay Partner Network.
So I went through 2 blower motor switches and realized that the harness end had a lot of buildup and the resistance between the rest of it was fine but the ends were toast. I thought, "maybe I replace the switch but and end connectors but it'll happen again someday." it seemed to me that basically the switch was turning itself into a giant fuse the way it was getting roasted. The aftermarket switch I found had very little pressure on the spring and ball inside and made very poor contact, it lasted a few months before it also burned up.
I figured enough was enough so I decided to get out my soldering iron, an arduino, some wiring and some spst relays and redo it.
The way I did it was basically to use some basic 5v signal controlled relays which would turn the spst relays on or off. Sounds redundant, but dealing with having to do a bunch of extra wiring and components to just do that with spst relays seemed overly complex. Granted, this solution is of course more complex than just replacing your switch, but since the relays take the brunt of the draw instead of a switch with tiny contacts, it seemed like it'd be a better longterm solution.
Used a 12v to 5v converter with power on to turn it on.
Had a relay when the power was on which switched the 12v power to the relay board for the NC controlled relays.
Then, I also had the 12v power to from the harness going to a bus bar, with each leg off the bus bar going to the individual relays that then ran to the individual speeds for low, medium, high.
I made sure that by default, as soon as the arduino booted up, all individually controlled relays are "off" so they aren't randomly. The upside to this is that it was easier than trying to store what was on prior, though one /could/ do that if they wanted separately. But the downside is if you wanted to leave it on a specific speed, you just have to push the button when you turn the 4runner back on.
So I 3d printed the housings I made in rhino, wired them up with cat5 cable because it's small, and easy to run. And then used 14 gauge wire for everything else.
I made the switch panel so it could insert into one of the stock toyota switch inserts, and just threw it on the center console so it was down back behind the shifter and within hand reach. Downside to that is that you can't easily see it, and I did not design a backlight for it (hindsight is 20/20 right?) but it's easy enough to find.
If one wanted to go the extra mile and do your own breadboard or custom board you could probably cut and made a very tiny panel to fit near the stock location and insert it into the original climate control cover. I thought about doing that but really just wanted working climate controls.
I'm not sure if anyone wants to go through all the trouble, but if you get bored and you're tired of it, it is a decent undertaking but it's worked reliably with zero issues for me thus far. https://github.com/TheJalpa/yoter-ar...rols/tree/main
I suppose this would work for anyone using those though I do not know what the wiring looks like on the harnesses year to year. I designed it for extra buttons but ended up disabling one button as I didn't need it, perhaps thinking, "i might use it for an accessory later".
Last edited by TotallyYotallyDude; Jan 4, 2026 at 03:32 PM.