Quick Steer Kit and SWPS, AH Problems (Experts Needed)
Wow. Just wow.
At least read the first post.
BTW, it would a lot less shitty if it didn't actively fight trail braking.
A long time ago I was including a SPI-based SD card reader/writer in the hardware, but the standard Arduino libraries for it require a lot of program space and/or memory (I forget which) because of the way SD cards data is read/written. There are, of course, plenty of other microcontrollers (even Arduino-based) which have lots more space but many/most aren't 5V. I have been actively avoiding level shifting, haha.
Last edited by MetalMan2; May 5, 2024 at 08:30 PM.
This revised code would include the new LCD screen library and some other tweaks, and would shave ~1 second off the current boot time... probably good enough to ensure the EBCM won't throw any faults. I should have @jonofmac test out this code before flashing the new bootloader!
- "bootloader overwritten" occurs when programming the Arduino with a separate programmer, and the bootloader gets overwritten during this process
- "with full bootloader" means that programming happened via USB, so bootloader remains intact
- the Arduino Nano boards I've been using include the "old" bootloader
- "new" Nano bootloader I guess just isn't the old one? Genuine Nano boards have probably shipped with this one for at least 5 years.
1.56 seconds boot-up isn't horrible and might be enough for @jonofmac 's C5Z to not freak out. I think simply flashing the latest code on his existing bootloader (via USB) is worth a shot!
On my own car I'll be running the "new" stock bootloader, and thinking this should be the way to go.
- Wanted to measure boot-up speed on the "Pro Micro" Arduino board, which uses ATMEGA32u4 microcontroller instead of the ATMEGA328P on the Arduino Nano.
- Couldn't be easy of course; the library I use for the MCP4922 DAC needed some values changed to suit the ATMEGA32u4. Had to figure all that out to make the DAC functional.
- Measured 188 milliseconds boot-up time. Pretty good! This is on-par with the fastest boot I was getting on the Arduino Nano boards (180ms). This is with the Pro Micro's stock bootloader.
- Been working on the CAD model for the new assembly and tying that in to the PCB layout. PCB layout is definitely not done but the images below give an idea.
- The 6 pads on the right ("SWPS IN") are for soldering on little sockets/receptacles that interface to the SWPS pins.
- Similarly there are 6 holes ("SWPS OUT") for pins that will interface to the car's SWPS connector.
- There will be changes to space things out better, just haven't dialed that in yet.
- The Pro Micro will be removable, and will sit on some nice (but inexpensive) low-profile (0.165" tall) socket/receptacle headers.
- Also working on the code side of things:
- V1.0 code (Arduino Nano) and V1.5 code (Pro Micro), both of which use the LCD screen, have been dialed in pretty well.
- Unfortunately V2.0 code for the Pro Micro with OLED screen is too big...
- I'm using Adafruit's OLED library, which is quite nice, but bloated for the purpose of text only. As a result I'm now evaluating other lighter-weight OLED libraries.
Last edited by MetalMan2; May 13, 2024 at 04:17 PM.
I've got the instructions from Metal man and the flasher to rewrite the firmware. So here's to hoping It fixes it

Some bonus footage from the Saturday event of the main reason i want to keep the ABS module while drifting: Look at the data I can grab
This car does it all: Track driving, drifting, cruising.Turns out there's some plenty of room for improvement with regards to the Manipulator determining "correct" steering wheel (SW) center when it powers up. This is related to the SW's position when the car was last parked / turned off.
Bear with me as I try to describe what's going on:
- When Manipulator powers up (i.e. key-on), for SW angles closer to center (about -135 to 135 degrees), the Manipulator correctly determines center.
- Recently I found that when the Manipulator powers up with SW at less than -135 degrees, it incorrectly thinks SW is near-center. For example, when powering up with SW @ -180 deg., Manipulator thinks SW is @ 0 deg.
- Then when I turn SW clockwise back toward center, the Manipulator errors out (recently I incorporated error detection improvements, hence why I caught this issue at all).
- My intent was that it would be okay for the Manipulator to incorrectly determine center, such that it would be wrong by a full 360 deg. Subsequently during driving it could detect this situation (when it sees SW angle beyond +/- 480 deg.), and correct for it by shifting its "zero" position by 360 deg... and also do so hopefully without the EBCM throwing a SWPS fault.
- However, center-detection correction does not work if it's off by only 180 deg. like I've found.. gotta fix this!
Now, going back a couple years... I see the problem.
The graph shown in that post displays the "Zones" of SWPS travel which I've used to track SW angle.
At power-up with SW at, say, -180deg. angle, the Manipulator sees Phase A voltage of 2.5V and based on that alone it thinks it's in Zone 0... when it's actually in Zone -2.
Then when I turn SW clockwise to -135deg, it expects to be entering Zone 1 (where Phase B should be 1.25V), but in reality it's entering Zone -1 (Phase B is 3.75V). Seeing wrong Phase B voltage is causing the error I mentioned above.
This got me thinking... at power-up I need to be using BOTH Phase A & Phase B voltages to determine Zone.
The picture below shows a map of the SWPS through its 360 deg. of rotation.
In my prior example of SW @ -180 deg., I would see that Phase A is 2.5V, but I also need to recognize that Phase B is greater than 3.75V, and therefore is in Zone 2. Of course, -180 deg. should be Zone -2... but that's the separate issue of center correction (which the EBCM also deals with, hence why sometimes the car says "ACTIVE HANDLING WARMING UP").
To correct the center position where Manipulator incorrectly thinks -180deg. is Zone 2:
While driving, eventually I would turn the car right sharp enough, that the Manipulator will read a SWPS angle greater than +480 deg. At that point it would subtract 360 deg. as part of its "center correction" strategy. This means what was Zone 2, is now Zone -2, so SW @ -180 deg. will be reported properly.
Way back when, @lionelhutz shared his disagreement with using only a single phase at a time like I've been doing for years now... and although the Manipulator has (for the most part) been working well, he is right.
But I'm now yet again running into the same problem of not knowing how to use both phases simultaneously.
With my thoughts above on using both phases at startup, I've realized that solution can be further expanded into using both phases ALL the time. Well, all the time except when either phase is near 0V or 5V due to non-linearities that are described here.
Onwards...
Last edited by MetalMan2; Jun 5, 2024 at 02:42 PM.
The Best of Corvette for Corvette Enthusiasts
BUT: once the code changes are complete/tested, it is my intention to make them available to others like yourself
do you have any of these currently setup up for (I won't say sell because of forum rules) test out for you?
08 c6. the mini mantis it on the mild setting. no drifting but 2 track days and setup
for mountain runs. the kit helps so much, I wasn't even confident enough to run with everything fully off before it, the slow ratio made it really hard to catch any slides. now with the increased ratio big for me slides are no big deal to gather back up. the self steer feed back helps too. only thing I don't like is holding the button all the time and that the Ackerman isn't completely correct for grip driving. they have the kit with Ackermann adjustments, but you gotta cut the arm off the knuckle. which I'm reluctant to do without the active handling stuff handled.
these c6 have this very bad problem with their steering position sensor, where the telescoping steering wheel messed up the plug, it makes intermittent contact over time and when it happens randomly trys to crash you, or throw you off a mountain. there's whole ntsb reports on it, 500 page thread. a so-called fix from gm, which my car had but still failed. so the only 2 real fixes are pull the plug, leave you with the check engine light on, but tc still works and is switchable which I actually like the idea of if I could keep the fault light off. or solder the wires straight to the swps. that's what I did before I put the angle kit on. so now I kinda wish I hadn't.
your box feels like the proper way to fix it, but I would even be happy with something that could just simulate holding the button down for 5sec every key on to turn ah/tc off. there's one for the c5 but they say it doesn't work for the c6
half way thru I also couldn't help but think that you guys are way smart and could have probably unlocked the bcm and or ebcm, made the code changes using open source tuner pro to make the adjustments in the module itself. it's way above my head, but I skim thru the PCM hacking board from time to time, and a few German cars like the vw gti and stuff now have full tuner access to their ebcm and suspension modules. they can adjust abs setting and how the cars use the brakes on the open diff cars to keep the inside wheel from spinning off corners. not to say anything negative about your approach. Just random thinking while reading thru.
for parking without the wheels straight, could you wire on 12v constant power to avoid that? if it's low draw we all have to keep these things on chargers anyways. that or a 3v battery cell?
I wrote a lot of the code for PCM Hammer, and I took apart a 2002 EBCM in hopes of figuring out how to tune those too... but unfortunately there are no part numbers on the chips. I don't think it would have been possible to create PCM Hammer without datasheets for some of the chips on the PCM - the CPU, the flash memory, and the VPW interface chip in particular. But the first step to finding a datasheet is figure out what chip you're dealing with.
I haven't looked inside the BCM, or any other modules, but if somebody wants to open one up I'd be happy to look at what's inside.
I haven't looked inside the BCM, or any other modules, but if somebody wants to open one up I'd be happy to look at what's inside.
that you looked at the ebcm is very nice to know someone tried. I don't pretend to know anything more than trying to follow along threads.
c5 or c6 bcm? do you know if you can openu them without destroying them?
off to ebay to see what they cost lol.
I appreciate the offer of a C6 unit, but I don't even have the time/energy to finish my own projects right now.
I've alway said if I ever hit the lotto, I've hire a few guys to access and map our some different modules lol.
/off topic.
definitely like to try one of these. if it works, I'd almost like to upgrade to one of those 09 and up racks that get faster ratio as you turn them too.
Also, I think '05-'08 models use the same SWPS connector as C5 which should allow the hardware to be compatible. It's likely that a different "manipulation factor" would be needed, though, which isn't overly difficult to measure/determine.
for mountain runs. the kit helps so much, I wasn't even confident enough to run with everything fully off before it, the slow ratio made it really hard to catch any slides. now with the increased ratio big for me slides are no big deal to gather back up. the self steer feed back helps too.
Thanks for thinking so, obviously with all the effort put in this project I think so too.
However, it wouldn't quite be a plug-and-play solution since doing so would require additional wiring. A big goal of my project is to be plug-and-play, especially with the next hardware version.
Also, I think '05-'08 models use the same SWPS connector as C5 which should allow the hardware to be compatible. It's likely that a different "manipulation factor" would be needed, though, which isn't overly difficult to measure/determine.
Totally understand, these cars are much nicer to drive without the slow factory steering. Even just for daily driving like in my case.
I seem to recall that some C6s have an extra "backup" for the SWPS connector, is that at all related to the issue you're describing?
Thanks for thinking so, obviously with all the effort put in this project I think so too.
This sure seems like an easy thing to put together!
This would absolutely be one way to accomplish the goal. I'm not sure what the Manipulator's current power consumption is, but during normal operation with screen off it's probably <30mA. Additionally, when the car is off there could be an option for a shutdown/standby condition which would draw maybe just a few mA (or even less with more effort put in to hardware design and code).
However, it wouldn't quite be a plug-and-play solution since doing so would require additional wiring. A big goal of my project is to be plug-and-play, especially with the next hardware version.
That's entirely possible. @jonofmac has a C6 Grand Sport rack in his C5, and we worked together to take measurements and add a "manipulation factor" to the Manipulator for C6 GS rack, as well as C6 GS rack with the Tomlin angle kit he's using.
this or even one that auto sets the car to comp mode or all off mode at key on. there might be a market for one that auto turns off everything for the non angle kit drag race guys too, nothing more embarrassing than forgetting. as well as track guys that run in comp mode. Just something that you could flip a switch to select what the default is.
as far as wiring goes, I fully understand making it plug and play. but if someone is willing to bolt on a angle kit, as long as it's a simple fuse tap to the inside fuse box type of hook up, I think running 2 wires isn't to much to ask. but totally your call. Just throwing it out.
before measurements would be a bit harder to get for me, since I already have the kit installed and aligned. but I can remove it if needed. since his 12gs rack sounds like it should have a much different curve at each end of the curve than my 08 rack. which possibly is the same as your c5 rack ratio wise.
interesting stuff.
in 09 they made a whole new rack. it's 17:1 in the center few inches, but then the gears are cut to give you a faster ratio near the ends. sounds kinda weird, but everyone says it feels better.












