C7 Tech/Performance Corvette Technical Info, Internal Engine, External Engine, Tech Topics, Basic Tech, Maintenance, How to Remove & Replace
Sponsored by:
Sponsored by:

NPP retrofit

Thread Tools
 
Search this Thread
 
Old Jun 16, 2020 | 11:10 AM
  #1  
CityOf9Gates's Avatar
CityOf9Gates
Thread Starter
Instructor
 
Joined: Jun 2017
Posts: 125
Likes: 7
Default NPP retrofit

I'd like to share my solution for controlling the npp valve actuators on a non NPP car. I need to give credit to the original work on this carried out by Theta as he did all the necessary voltage and pwm measurements for this solution.

I have put together a very simple circuit that allows the npp valves to be open and closed (with a wireless switch at this time). I take no responsibility for any results good or bad for anyone who tries this on their own. I'm happy to try and answer questions and help where I can though this solution is intended to be DIY and it does require some computer work as well as some electronics component soldering.

Now to the solution.

The npp valves require a very specific kind of signal to get them to work. Much of this is explained in the incredibly detailed post here https://www.corvetteforum.com/forums...-retrofit.html. I won't attempt to re-explain any of the inner working of the actuators. The circuits that were produced in the original solution were fairly complicated and some had heat issues that my solution hopes to avoid. The central component of my solution is an arduino microcontroller.

I purchased all the components through amazon, but many other (maybe cheaper) options are available.
Here are the necessary parts (note, the links that I have attached show what I purchased, but on most things I purchased more than needed so I included the necessary quantity on each line item):
1. Arduino UNO(a nano will work also, and some creative form factors could be implemented with both a nano and uno. I cheaped out and used a knock off nano) x 1 (
https://www.amazon.com/LAFVIN-Board-ATmega328P-Micro-Controller-Arduino/dp/B07G99NNXL/ref=sr_1_3?dchild=1&keywords=arduino+nano&qid=1592317725&sr=8-3 https://www.amazon.com/LAFVIN-Board-ATmega328P-Micro-Controller-Arduino/dp/B07G99NNXL/ref=sr_1_3?dchild=1&keywords=arduino+nano&qid=1592317725&sr=8-3
)
2. 12v voltage regualtor (IC 7812) x 1 (
https://www.amazon.com/BOJACK-Regulator-Integrated-Circuits-Regulators/dp/B07XTDB7LJ/ref=sr_1_2?dchild=1&keywords=ic+7812&qid=1592317766&sr=8-2 https://www.amazon.com/BOJACK-Regulator-Integrated-Circuits-Regulators/dp/B07XTDB7LJ/ref=sr_1_2?dchild=1&keywords=ic+7812&qid=1592317766&sr=8-2
)
3. Npn transistor (BC637) x 1 (
https://www.amazon.com/Tech-Express-10Pcs-Current-Transistor/dp/B07MNQQ2XB/ref=sr_1_1?dchild=1&keywords=bc637&qid=1592317808&sr=8-1 https://www.amazon.com/Tech-Express-10Pcs-Current-Transistor/dp/B07MNQQ2XB/ref=sr_1_1?dchild=1&keywords=bc637&qid=1592317808&sr=8-1
)
4. Various resistors (10k ohm x 2, 1.5k ohm x 1, 1k ohm x 1) (
https://www.amazon.com/BOJACK-Resistor-Ohm-5-6M-Resistors-Assortment/dp/B07P3MFG5D/ref=sr_1_2?crid=3VZB2WYTL53TZ&dchild=1&keywords=bojack+1350+pcs+50+values+resistor+kit&qid=1592318031&sprefix=bojack+1350%2Caps%2C210&sr=8-2 https://www.amazon.com/BOJACK-Resistor-Ohm-5-6M-Resistors-Assortment/dp/B07P3MFG5D/ref=sr_1_2?crid=3VZB2WYTL53TZ&dchild=1&keywords=bojack+1350+pcs+50+values+resistor+kit&qid=1592318031&sprefix=bojack+1350%2Caps%2C210&sr=8-2
)
5. Wireless rf remote control switch (though you could replace this with a wired momentary button if you so desire). x 1 (
Amazon Amazon
)
6. Male/Female single row pin header connectors (this is optional as you can solder the nano directly to your circuit if you choose to do so) (
https://www.amazon.com/Headers-Arduino-Connector-Prototype-DEPEPE/dp/B07B2T3J1Y/ref=sr_1_5?dchild=1&keywords=male+female+single+row+headers&qid=1592317899&sr=8-5 https://www.amazon.com/Headers-Arduino-Connector-Prototype-DEPEPE/dp/B07B2T3J1Y/ref=sr_1_5?dchild=1&keywords=male+female+single+row+headers&qid=1592317899&sr=8-5
)
7. Prototyping perf board (
https://www.amazon.com/ELEGOO-Prototype-Soldering-Compatible-Arduino/dp/B072Z7Y19F/ref=sr_1_2?crid=HHO60URBNFKW&dchild=1&keywords=elegoo+perfboard&qid=1592317867&sprefix=elegoo+perf%2Caps%2C221&sr=8-2 https://www.amazon.com/ELEGOO-Prototype-Soldering-Compatible-Arduino/dp/B072Z7Y19F/ref=sr_1_2?crid=HHO60URBNFKW&dchild=1&keywords=elegoo+perfboard&qid=1592317867&sprefix=elegoo+perf%2Caps%2C221&sr=8-2
)
8. Actuator plugs x 2 (https://www.mouser.com/ProductDetail...FW4V%2Fg%3D%3D) (for these, you'll also need to buy the appropriate pins for these connectors)
9. Solder, wire, etc.
10. Optional (but recommended) Prototyping Breadboard (it'll make your life easier if you mock this and test it on a breadboard first so that you don't waste time and components soldering until you have everything worked out)
11. Some kind of project box to put your circuit board in inside the hatch of the car (depending on the form factor you come up with).




there are 2 parts to this solution, one is laying out the circuit, the second is uploading the following code to your arduino. I won't give you a tutorial on arduino programming and the arduino ide, I will link to a how to that will explain the basics to you https://www.arduino.cc/en/Guide/HomePage.

I'll paste in the code here for the arduino and I'll just say that this is not as complicated as it all looks. Once the ide is installed on your computer and you've done some basic arduino interfacing (uploading code to your arduino, etc) you'll want to upload the following code to your arduino: (note, you'll need to add the pwm library google add library as zip to arduino and add the library from here https://code.google.com/archive/p/ar...rary/downloads)

#include <PWM.h> // pwm-frequency-library
#include <EEPROM.h>

const int _pwmPin = 9; //pin9 on arduino board
const int _buttonPin = 7; // pin7 on board
bool _isRunning = true;

bool ReadValveState()
{
int valveSt = EEPROM.read(0); //read the last valve state from memory
if (valveSt == 1)
{
return true;
}
else
{
return false;
}
}

void DoOpenValves()//sends a pwm signal to valves causing them to open
{
pwmWrite(_pwmPin, 203);
}

void DoCloseValves()//sends a pwm signal to valves causing them to close
{
pwmWrite(_pwmPin, 51);
}

void setup() {
InitTimersSafe();
SetPinFrequencySafe(_pwmPin, 200); //sets the pwm pin frequency to 200 Hz
pinMode(_pwmPin, OUTPUT); // sets the pwm pin as an output pin
pinMode(_buttonPin, INPUT_PULLUP); //sets the input pin for the button
pinMode(LED_BUILTIN, OUTPUT);

if (ReadValveState() == true) //initialize the valves to the last state (if the valves were open when the car was turned off, the valves will be open when the car is turned on, etc
{
DoCloseValves();
}
else
{
DoOpenValves();
}
_isRunning = false;
}

void loop() //the main body of our arduino code, this is run over and over as long as there is power
{
if (_isRunning == false) //this is to prevent repeated button presses
{

if (digitalRead(_buttonPin) == LOW) //check the state of the button if it's pressed
{
_isRunning == true;
if (ReadValveState() == true) //if the valves are closed,
{
EEPROM.write(0, 0); //set the new valve state and open the valves
DoOpenValves();
}
else //the must be opened
{
EEPROM.write(0, 1); //set the new valve state and close the valves
DoCloseValves();
}

FlashBuiltInLED(); // this will give a delay of 1 seconds this helps in debugging to know if your circuit is working when not connected to a valve. If your button is pressed and you see a flashing, then the button is triggering the open/close of the the valve pwm
_isRunning == false;
}
}
}

void FlashBuiltInLED() {
for (int i = 0; i <= 10; i++) {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on
delay(100); // wait for tenth a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off
delay(100); // wait for tenth a second
}
}





Once the above code is uploaded, you should be able to test this on your car. Connect via and add a fuse (I used a 10 amp fuse) and ground and you should be ready to go. I have intentionally not described how all the components of the circuitry and the microcontroller code work as I don't know if anyone really cares. I'd be happy to elaborate on individual components as necessary, but I don't want to spend time doing so if people really just want to build the circuit and don't care how it works. Hopefully this helps some people who'd like to add npp to their non npp car.

Last edited by CityOf9Gates; Aug 11, 2020 at 11:09 AM. Reason: Revised to show better layout with larger UNO
Reply
Old Jun 16, 2020 | 04:43 PM
  #2  
Dcasole's Avatar
Dcasole
Le Mans Master
10 Year Member
Community Builder
Liked
Loved
 
Joined: Oct 2014
Posts: 8,672
Likes: 2,726
From: Atlanta GA
Default

You should build them to sell , I bet just like the C6 NPP in a box. It would sell well ....lot of people do not have NPP and wish they did

Dave
Reply
Old Jun 26, 2020 | 11:33 AM
  #3  
Derdingle's Avatar
Derdingle
Advanced
 
Joined: Aug 2017
Posts: 53
Likes: 4
From: Albuquerque, NM
Default

Thank you so much for this information. I am buying the parts now to try this out.
The mufflers are going in my 69 GTO as I love them on my 12 Grand Sport, so figured why not.
Reply
Old Jun 26, 2020 | 01:53 PM
  #4  
CityOf9Gates's Avatar
CityOf9Gates
Thread Starter
Instructor
 
Joined: Jun 2017
Posts: 125
Likes: 7
Default

Great. The system works flawlessly for me. Let me know how it turns out for you.
Reply
Old Jul 8, 2020 | 12:11 PM
  #5  
ncnmra's Avatar
ncnmra
Racer
All Eyes On Me
Liked
Loved
Top Answer: 1
 
Joined: Jun 2020
Posts: 261
Likes: 28
From: Ontario, Canada
Default

I'm in the process of putting on Z06 NPP mufflers on my base C6. I'm looking for a solution to control the valves and not a fan of the NPP-in-a-box solution due to cost. I was considering controlling the valves using an electronic servo. Has anyone ever considered that solution? I have a high-torque servo, and I think it would be a way cleaner solution.

EDIT: Ack! Sorry, I didn't realize this was the C7 forum. So does this mean that the C7s use electronic actuators for their NPP instead of vacuum solenoids as in the C6?

Last edited by ncnmra; Jul 8, 2020 at 12:15 PM.
Reply
Old Jul 8, 2020 | 01:19 PM
  #6  
Derdingle's Avatar
Derdingle
Advanced
 
Joined: Aug 2017
Posts: 53
Likes: 4
From: Albuquerque, NM
Default

Correct, the C7 uses electronic actuators whereas the C6 uses vacuum actuators.
Reply
Old Jul 8, 2020 | 01:27 PM
  #7  
ncnmra's Avatar
ncnmra
Racer
All Eyes On Me
Liked
Loved
Top Answer: 1
 
Joined: Jun 2020
Posts: 261
Likes: 28
From: Ontario, Canada
Default

Originally Posted by Derdingle
Correct, the C7 uses electronic actuators whereas the C6 uses vacuum actuators.
hmmmmmm..... that is interesting. I'm considering fashioning something electronic for the C6, I'm wondering if I can make use of the C7 ones?? Can you buy the separately?
Reply
Old Jul 8, 2020 | 01:35 PM
  #8  
Derdingle's Avatar
Derdingle
Advanced
 
Joined: Aug 2017
Posts: 53
Likes: 4
From: Albuquerque, NM
Default

The electronic actuators for a C7 are about $137 each. Whether they fit is another story.
2017 Actuator
Reply
Corvette Stories

The Best of Corvette for Corvette Enthusiasts

story-0

10 Reasons the C6 Z06 is Still A Performance Benchmark After 20 Years

 Joe Kucinski
story-1

How Much Horsepower Every Corvette Engine "LOST" in 1972

 Joe Kucinski
story-2

Top 10 DOs and DON'Ts for Protecting Your Convertible Top!

 Michael S. Palmer
story-3

Top 10 Most Explosive Corvettes Ever Made: Power-to-Weight Ratio Ranked!

 Joe Kucinski
story-4

150 hp to 1,250 hp: Every Corvette Generation Compared by the Specs That Matter

 Joe Kucinski
story-5

8 Coolest Corvette Pace Cars (and Replicas) of All Time

 Verdad Gallardo
story-6

Top 10 Corvette Engines RANKED by Peak Torque (70+ Years of Muscle!)

 Joe Kucinski
story-7

Corvette ZR1X Will Be Pacing the Indy 500, And Could Probably Race, Too!

 Verdad Gallardo
story-8

Top 10 Corvettes Coming to Mecum Indy 2026!

 Brett Foote
story-9

Top 10 C9 Corvette MUST-HAVES to Fix These C8 Generation Flaws!

 Michael S. Palmer
Old Jul 8, 2020 | 02:34 PM
  #9  
ncnmra's Avatar
ncnmra
Racer
All Eyes On Me
Liked
Loved
Top Answer: 1
 
Joined: Jun 2020
Posts: 261
Likes: 28
From: Ontario, Canada
Default

Yikes! Let me ask this: are the casings made out of metal or plastic? I found some high-torque electronic servos that I'm considering using for my C6, but I'm wary of the heat. I would likely mount them in place of the vacuum solenoids, right above the butterfly valve. I know that the surface of the exhaust is quite hot, but a few inches away may be tolerable, especially considering that the plastic bumper isn't much further away?
Reply
Old Jul 8, 2020 | 02:54 PM
  #10  
Derdingle's Avatar
Derdingle
Advanced
 
Joined: Aug 2017
Posts: 53
Likes: 4
From: Albuquerque, NM
Default

They are made of plastic.
Reply
Old Jul 21, 2020 | 11:37 PM
  #11  
Argentimage's Avatar
Argentimage
Drifting
15 Year Member
Active Streak: 30 Days
Active Streak: 60 Days
Photogenic
 
Joined: Sep 2009
Posts: 1,800
Likes: 212
From: Metro MI too close to the D
Default

If you have a Mild to Wild switch, where does that get soldered in as it not clear where the wireless gets connected...
Reply
Old Jul 23, 2020 | 03:23 AM
  #12  
Argentimage's Avatar
Argentimage
Drifting
15 Year Member
Active Streak: 30 Days
Active Streak: 60 Days
Photogenic
 
Joined: Sep 2009
Posts: 1,800
Likes: 212
From: Metro MI too close to the D
Default

Do you have a link to the sources for jumper wires and the 12v input socket plug?
Reply
Old Jul 23, 2020 | 08:05 AM
  #13  
CityOf9Gates's Avatar
CityOf9Gates
Thread Starter
Instructor
 
Joined: Jun 2017
Posts: 125
Likes: 7
Default

On the c7 you can pull powers directly from a switched fuse in the hatch area of the car (under the carpet) using an fuse tap so I didn't use a plug.

Here is a link to the fuse tap.
Amazon Amazon

As for jumper wires, just make sure you use something with solid core wire like
Amazon Amazon
Reply
Old Jul 25, 2020 | 07:31 PM
  #14  
ttk53's Avatar
ttk53
Heel & Toe
 
Joined: Jan 2011
Posts: 16
Likes: 1
From: Pittsburgh PA
Default

I bought the parts for this from amazon and sold.car before getting around to building one. I have 3 sets of everything except the wireless remote if anyone wants to save a few bucks on the parts.
Reply
Old Jul 25, 2020 | 09:06 PM
  #15  
Argentimage's Avatar
Argentimage
Drifting
15 Year Member
Active Streak: 30 Days
Active Streak: 60 Days
Photogenic
 
Joined: Sep 2009
Posts: 1,800
Likes: 212
From: Metro MI too close to the D
Default

Send details on what you have please
Reply
Old Aug 4, 2020 | 04:39 PM
  #16  
Argentimage's Avatar
Argentimage
Drifting
15 Year Member
Active Streak: 30 Days
Active Streak: 60 Days
Photogenic
 
Joined: Sep 2009
Posts: 1,800
Likes: 212
From: Metro MI too close to the D
Default

heads up - the google code for PWM is bad - outdated - it fails - it does not work, its buggy & won't load.

who has an accurate PWM file
Reply
Old Aug 4, 2020 | 05:25 PM
  #17  
CityOf9Gates's Avatar
CityOf9Gates
Thread Starter
Instructor
 
Joined: Jun 2017
Posts: 125
Likes: 7
Default

What code are you referring to? the pmw library file?
Reply

Get notified of new replies

To NPP retrofit

Old Aug 4, 2020 | 08:07 PM
  #18  
Argentimage's Avatar
Argentimage
Drifting
15 Year Member
Active Streak: 30 Days
Active Streak: 60 Days
Photogenic
 
Joined: Sep 2009
Posts: 1,800
Likes: 212
From: Metro MI too close to the D
Default

Exactly
Reply
Old Aug 4, 2020 | 08:16 PM
  #19  
CityOf9Gates's Avatar
CityOf9Gates
Thread Starter
Instructor
 
Joined: Jun 2017
Posts: 125
Likes: 7
Default

That is the exact library I am using. You need to add the library as a zip file to your Arduino ide like described here https://www.arduino.cc/en/guide/libr...nd%20open%20it

Then you select your board in the board manager in Arduino ide (probably a nano if your following my write up) and select the USB port on your PC that the board is connected to in the connection manager. Then paste the code that I supplied in this thread into the editor window of the ide and select compile. It should compile correctly as that link is the exact library file that I used. Once you have verified that it compiles successfully, just upload it to your Arduino using the upload menu option (it'll recompile it too) and then at that point your Arduino is provisioned correctly
​​​
Reply
Old Aug 5, 2020 | 01:46 AM
  #20  
Argentimage's Avatar
Argentimage
Drifting
15 Year Member
Active Streak: 30 Days
Active Streak: 60 Days
Photogenic
 
Joined: Sep 2009
Posts: 1,800
Likes: 212
From: Metro MI too close to the D
Default

that may be issue i have uno's and those were recommended by someone here how does the uno differentiations in connecting this?
Reply



All times are GMT -4. The time now is 09:30 AM.

story-0
10 Reasons the C6 Z06 is Still A Performance Benchmark After 20 Years

Slideshow: 10 reasons why the C6 Z06 is still a performance benchmark after 20 years.

By Joe Kucinski | 2026-05-27 17:20:09


VIEW MORE
story-1
How Much Horsepower Every Corvette Engine "LOST" in 1972

Slideshow: How much horsepower every Corvette engine lost in 1972.

By Joe Kucinski | 2026-05-27 16:54:53


VIEW MORE
story-2
Top 10 DOs and DON'Ts for Protecting Your Convertible Top!

Slideshow: How to Protect A Convertible Top: 10 DOs & DON'Ts

By Michael S. Palmer | 2026-04-03 00:00:00


VIEW MORE
story-3
Top 10 Most Explosive Corvettes Ever Made: Power-to-Weight Ratio Ranked!

Slideshow: The 10 most explosive Corvettes ever built based on power-to-weight ratio.

By Joe Kucinski | 2026-05-20 07:23:03


VIEW MORE
story-4
150 hp to 1,250 hp: Every Corvette Generation Compared by the Specs That Matter

Slideshow: From C1 to C8 we compare every Corvette generation by the numbers.

By Joe Kucinski | 2026-05-12 16:54:12


VIEW MORE
story-5
8 Coolest Corvette Pace Cars (and Replicas) of All Time

Slideshow: Some Corvette pace cars became collectible legends, while others perfectly captured the look and attitude of their era.

By Verdad Gallardo | 2026-05-11 09:50:51


VIEW MORE
story-6
Top 10 Corvette Engines RANKED by Peak Torque (70+ Years of Muscle!)

Slideshow: Ranking the top 10 Corvette engines by torque output.

By Joe Kucinski | 2026-05-05 11:58:09


VIEW MORE
story-7
Corvette ZR1X Will Be Pacing the Indy 500, And Could Probably Race, Too!

Slideshow: A Corvette pace car nearly matching IndyCar speeds sounds exaggerated, until you look at the numbers.

By Verdad Gallardo | 2026-05-04 20:03:36


VIEW MORE
story-8
Top 10 Corvettes Coming to Mecum Indy 2026!

Among a rather large group of them.

By Brett Foote | 2026-05-04 13:56:44


VIEW MORE
story-9
Top 10 C9 Corvette MUST-HAVES to Fix These C8 Generation Flaws!

Slideshow: the top 10 things Corvette owners want in the C9 Corvette

By Michael S. Palmer | 2026-04-30 12:41:15


VIEW MORE