LS1 Boost OS - Development
Re: LS1 Boost OS - Development
I got back into it today and I think it's working.
The part I'm not sure about is the circuit/wiring. I wired one side of an evap solenoid to my power supply (~13.0 Volts) and the other side to C2 - Pin 3 which based on the wiring diagram below it should ground the solenoid. The EVAP solenoid was pulsing like I would expect, but I've never created a circuit like this before. I'm hoping that it looks like a good signal as I don't really know what I'm looking for. I modified the OS to control the fuel pump output in place of the EGR output. So I was able to command an EGR position to turn on the solenoid. Attached is a picture of my scope screen showing a 15 Hz signal, but I also tested 50 Hz and it looked similar so anything in-between should work. I connected the scope probe to the PCM side of the solenoid and the low reference to the power supply negative. A quick google shows me that for Part# 35A-AAA-DDBA-1BA its 5.4 Watts @ 12 Volts therefore:
I = P / V
5.4 Watts / 12 Volts = 0.450 Amps
R = V / I
12 Volts / 0.450 Amps = 26.67Ω
So having a 22 Ohm Evap solenoid on the bench should be a fairly close stand in.
The part I'm not sure about is the circuit/wiring. I wired one side of an evap solenoid to my power supply (~13.0 Volts) and the other side to C2 - Pin 3 which based on the wiring diagram below it should ground the solenoid. The EVAP solenoid was pulsing like I would expect, but I've never created a circuit like this before. I'm hoping that it looks like a good signal as I don't really know what I'm looking for. I modified the OS to control the fuel pump output in place of the EGR output. So I was able to command an EGR position to turn on the solenoid. Attached is a picture of my scope screen showing a 15 Hz signal, but I also tested 50 Hz and it looked similar so anything in-between should work. I connected the scope probe to the PCM side of the solenoid and the low reference to the power supply negative. A quick google shows me that for Part# 35A-AAA-DDBA-1BA its 5.4 Watts @ 12 Volts therefore:
I = P / V
5.4 Watts / 12 Volts = 0.450 Amps
R = V / I
12 Volts / 0.450 Amps = 26.67Ω
So having a 22 Ohm Evap solenoid on the bench should be a fairly close stand in.
LS1 Boost OS Version 5 Available Here. For feature suggestions post in here Development Thread.
Re: LS1 Boost OS - Development
I'm not sure I follow... You tweaked the EGR code so that it ends up toggling the fuel pump relay control line instead of the EGR line - is that right?
Does the duty cycle vary with the commanded EGR position?
It looks like there's a PID loop (or at least a PI loop) in the existing EGR code. If so, then it might be possible to leverage that for boost control. You "just" have to get it to look at current MAP and desired MAP instead of current EGR valve position and desired EGR valve position. Not sure how hard/easy that would be, but it's worth investigating. If it's just a matter of pointing the existing code at two different locations in RAM, that would be amazing.
Does the duty cycle vary with the commanded EGR position?
It looks like there's a PID loop (or at least a PI loop) in the existing EGR code. If so, then it might be possible to leverage that for boost control. You "just" have to get it to look at current MAP and desired MAP instead of current EGR valve position and desired EGR valve position. Not sure how hard/easy that would be, but it's worth investigating. If it's just a matter of pointing the existing code at two different locations in RAM, that would be amazing.
Please don't PM me with technical questions - start a thread instead, and send me a link to it. That way I can answer in public, and help other people who have the same question. Thanks!
-
- Posts: 81
- Joined: Sun May 11, 2014 6:36 pm
- cars: Z06
Re: LS1 Boost OS - Development
This looks like amazing work.
Re: LS1 Boost OS - Development
Yes, that's exactly what I did.NSFW wrote:I'm not sure I follow... You tweaked the EGR code so that it ends up toggling the fuel pump relay control line instead of the EGR line - is that right?
Yes there is a loop. I was just adjusting EGR position to get the duty cycle to vary. This was all just for bench testing so I didn't have to write code to see if it worked. I have thought about reusing the PID loop code from the EGR, but that would be a ton of work and maybe more than writing one from scratch. I may take a deeper look at it before deciding.NSFW wrote: Does the duty cycle vary with the commanded EGR position?
It looks like there's a PID loop (or at least a PI loop) in the existing EGR code. If so, then it might be possible to leverage that for boost control. You "just" have to get it to look at current MAP and desired MAP instead of current EGR valve position and desired EGR valve position. Not sure how hard/easy that would be, but it's worth investigating. If it's just a matter of pointing the existing code at two different locations in RAM, that would be amazing.
LS1 Boost OS Version 5 Available Here. For feature suggestions post in here Development Thread.
Re: LS1 Boost OS - Development
Thanks!Highlander wrote:This looks like amazing work.
LS1 Boost OS Version 5 Available Here. For feature suggestions post in here Development Thread.
- codemanrose
- Posts: 16
- Joined: Tue Oct 08, 2019 12:02 am
- cars: 1992 Corvette
2014 Silverado
2015 Traverse
Re: LS1 Boost OS - Development
Awesome stuff indeed!!!
So in theory, you should be able to rate PWM from 15 hz to whatever using that output and base it on KPA at the moment. Is that correct and does that make sense on how I'm saying it? That way it would pulse at a given range (I have one of those 3 port MACs on my test bench as well). And was going to just used an Arduino to read KPA and control it. But hell if the EGR output can potential do the screw that, way easier, lol.
Just not sure how to relate given KPA to the EGR solenoid (mac) in programming....if it's even possible. That portion is WAY out of my knowledge base.
I know after like 70 hz or around there the MAC closes. It has a low range of operation.
So in theory, you should be able to rate PWM from 15 hz to whatever using that output and base it on KPA at the moment. Is that correct and does that make sense on how I'm saying it? That way it would pulse at a given range (I have one of those 3 port MACs on my test bench as well). And was going to just used an Arduino to read KPA and control it. But hell if the EGR output can potential do the screw that, way easier, lol.
Just not sure how to relate given KPA to the EGR solenoid (mac) in programming....if it's even possible. That portion is WAY out of my knowledge base.
I know after like 70 hz or around there the MAC closes. It has a low range of operation.
Re: LS1 Boost OS - Development
I wouldn't vary the Frequency, that would be a constant. I would read back further in the thread to see what the frequency does. And my recent testing was using the secondary fuel pump output.
I think an open loop control would be fairly easy to get working and someone suggested a table lookup based on RPM vs. TPS which is possible, but I haven't done a custom 3D table lookup yet. I know there are functions that do the lookup for you, but I would have to figure out which one or make my own which could be difficult.
Thinking out loud I would really like to do a boost vs time and/or boost vs speed. And then do a multiplier 0-100% based on TPS.
For the boost vs. time I'm not sure how I would handle just driving around when it's not during a drag launch. Maybe I can implement both and just have a flag to enabled boost vs. time during a drag launch. Then you can have your pick for drag racing and the people that choose boost vs. time would have a boost vs. speed table for street driving etc.
I think an open loop control would be fairly easy to get working and someone suggested a table lookup based on RPM vs. TPS which is possible, but I haven't done a custom 3D table lookup yet. I know there are functions that do the lookup for you, but I would have to figure out which one or make my own which could be difficult.
Thinking out loud I would really like to do a boost vs time and/or boost vs speed. And then do a multiplier 0-100% based on TPS.
For the boost vs. time I'm not sure how I would handle just driving around when it's not during a drag launch. Maybe I can implement both and just have a flag to enabled boost vs. time during a drag launch. Then you can have your pick for drag racing and the people that choose boost vs. time would have a boost vs. speed table for street driving etc.
LS1 Boost OS Version 5 Available Here. For feature suggestions post in here Development Thread.
- codemanrose
- Posts: 16
- Joined: Tue Oct 08, 2019 12:02 am
- cars: 1992 Corvette
2014 Silverado
2015 Traverse
Re: LS1 Boost OS - Development
Sorry! I just skimmed a bit and should have dug deeper tonight before asking.
Most seem to only care about boost/speed, boost/rpm, and boost/gear.
To me boost/gear would be the easiest as you can just go based on what the PCM is commanding and adjust DC on the mac valve. Obviously delay the signal a half second or second as the transmission of course isn't instant. That way it's not ramping in power while making the shift. This would be for automatic cars anyways.
Boost/Speed of course would be speed and maybe dual enabled by both TPS and say like tow haul mode or anything the pcm can be switched to go? If that makes sense? So say you have to meet TPS of at least 50% and tow/haul mode on before it will begin controlling valve and from 50%-100% it would work within its range. Anything outside of there it's off.
Then Boost by RPM would be mapped based on RPM itself and maybe gear. That way you are not blowing the tires off with a linear map of like 2500-7500rpm. DC of the valve based on gear and current RPM based on that. Of course 3D map would be best here because if you are say 20% throttle you don't want it trying to ramp in any boost even if it's barely working the turbo. Again, automatic cars. Manual cars something else.
I'm just puking out ideas that I have been thinking of with the piggyback system I have been doing a terrible job on. This is what I keep thinking about trying to just do boost control with an Arduino and reading the info directly from the PCM itself.
Most seem to only care about boost/speed, boost/rpm, and boost/gear.
To me boost/gear would be the easiest as you can just go based on what the PCM is commanding and adjust DC on the mac valve. Obviously delay the signal a half second or second as the transmission of course isn't instant. That way it's not ramping in power while making the shift. This would be for automatic cars anyways.
Boost/Speed of course would be speed and maybe dual enabled by both TPS and say like tow haul mode or anything the pcm can be switched to go? If that makes sense? So say you have to meet TPS of at least 50% and tow/haul mode on before it will begin controlling valve and from 50%-100% it would work within its range. Anything outside of there it's off.
Then Boost by RPM would be mapped based on RPM itself and maybe gear. That way you are not blowing the tires off with a linear map of like 2500-7500rpm. DC of the valve based on gear and current RPM based on that. Of course 3D map would be best here because if you are say 20% throttle you don't want it trying to ramp in any boost even if it's barely working the turbo. Again, automatic cars. Manual cars something else.
I'm just puking out ideas that I have been thinking of with the piggyback system I have been doing a terrible job on. This is what I keep thinking about trying to just do boost control with an Arduino and reading the info directly from the PCM itself.
- ShorTuning
- Posts: 56
- Joined: Thu Dec 13, 2018 4:42 pm
- cars: 2002 Camaro
2002 Formula - Location: On the Dyno
- Contact:
Re: LS1 Boost OS - Development
Since you are already using a variable to control the duty output you could also use the EGR position input connected to a rotary trim knob so that you could have different boost settings so you don't have to reflash the PCM anytime you want to change boost levels.
And/or use that input connected to a dome pressure sensor for closed loop feedback.
So many paths/options of attack. Iirc there is also a current gear calculation even for manual transmission vehicles. It uses gear ratios and current engine speed to determine gear. That could also be used for boost vs gear.
And/or use that input connected to a dome pressure sensor for closed loop feedback.
So many paths/options of attack. Iirc there is also a current gear calculation even for manual transmission vehicles. It uses gear ratios and current engine speed to determine gear. That could also be used for boost vs gear.
Re: LS1 Boost OS - Development
I'm biased, but I think I'm going to keep the EGR input for future wideband input features.
I spent a little time trying to figure out if the narrowband O2 inputs could be modified to be 0-5 volts instead of 0-1.1 volts, but the circuit got too difficult to trace. A few more inputs would be awesome and allow for all kinds of fun features.
I spent a little time trying to figure out if the narrowband O2 inputs could be modified to be 0-5 volts instead of 0-1.1 volts, but the circuit got too difficult to trace. A few more inputs would be awesome and allow for all kinds of fun features.
LS1 Boost OS Version 5 Available Here. For feature suggestions post in here Development Thread.