Does anyone have boost control working?

This is a forum for discussing the development and testing of alpha MS2/Extra code. Documentation
(Runs on MS2 and Microsquirt)

Moderators: jsmcortina, muythaibxr

AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Does anyone have boost control working?

Post by AbeFM »

Could someone please tell me they have boost control working, and how it's set up? I'm not alone in having tried to get it working and seeing nothing happen.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

I guess no one has.

I was going to pull the MS out and put it on the stim, look at the chip outputs and see if ANY of them work. It would be nice if I had a place to start - so I might not.

But if I do, I'll post them here - then anyone who wanted could just read on the internet how to set up a feature in the MegaSquirt, and run that feature on their own car.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

Ok, first bit of information I learned:

1) Boost Output on FIDLE and JS11 works as expected, if you turn off conflicting resources, those will opperate based on the duty cycle map if that's how you set it up.


I'll keep posting as I figure this out. I do seem to remember some of the developers saying they knew what was going on, but never really told me how to make it work or what the problems were.

If I redo my circuits, I could get it working with IAC1 as TACHO-OUT and JS11 as boost control, though it seems pretty silly to redo in solder what is clearly just a software bug. At least I know my output functions, since both circuits work for driving the tach, and at least the low-power circuit I have driving from JS11 runs a light hooked to the boost solenoid.

More to follow.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

Ok, the next thing I've learned:
When the motor isn't running, the boost control doesn't change - it stays at whatever duty cycle it was at when the motor stopped.

I'm not sure durring cranking, though I suppose it doesn't matter much. (Coincidentally, the WBO2 is not read durring cranking, though you can get a raw voltage out of it, which is nice, when running. I'm going to compare the values with it when I get the MS back in the car. Could be a while since I have to make all this up as I go along.)

<edit> It does control boost solenoid durring cranking. Nice.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
Keithg
Super MS/Extra'er
Posts: 2413
Joined: Sun Mar 06, 2005 9:15 am
Location: Chicago, IL, USA
Contact:

Post by Keithg »

Abe,

Chill a bit, please. This is all volunteer stuff and we all have full time jobs. Changing your hardware pin for certain functions is minor deal. Besides, it makes support that much easier as time progresses. The plethora of input and output permutations on MS1/E was challenging to support. Also, keep in mind that this is still Beta stuff and it is not all documented, yet.

My suggestion on boost control would be to review the MS1/E specs on the hardware requirements and software. I do not run boost control, so I do not know any more than that. I do know that if you have gotten it to run under MS1/E you can probably get it working under MS2/E with similar hardware (valve and drive circuit). That you have volunteered to try to get boost control going under MS2/E is commended. Please help to get it documented and running.

Thanks,

Keith
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

Well, it turns out the software seems to work ok. I've spent a long time playing with software settings thinking I had a conflict - so I'd like to state for the record and to save someone else hours of turning their box on and off and off and on and reflashing, etc.... The boost control outputs seem to be correctly mapped.

My issue was my +12V return wasn't the right +12, and burnt out a trace. It was hidden under the MAP sensor so I couldn't see this initially.



So. With that going, I have issues with the boost control tuning. Open loop seems to be predictable (though hard to tune). My attempts at closed loop are sorely wanting. I get this issue where it will open too slow (massive amounts of derivative control really helps here), hits the boost limit, then boost drops to zero and stays there for some time.

I'm not sure how it's doing this, even if I pull the wastegate actuator altogether I can't get boost that low. Is there some other interaction which I haven't seen documentation on - when EBC is enables and you hit overboost? Perhaps it's the knock sensor, I'm not sure.

For now I'm not messing with it while I play with accel enrich settings, but the boost control really seems to be hard to get working. Probably much of the fault is my boost building from light vacuum to 15 psi in well under a second. I was surprised not to see the line ticking a bit as I approach the target - but an LED on the output shows it pretty solid even for quick ramping.

Right now I have P=50, I=8, D=20. It seems fine but again once I hit the boost cut I'm done for quite a while, even across shifts.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
muythaibxr
Site Admin
Posts: 8230
Joined: Thu Oct 14, 2004 12:48 pm

Post by muythaibxr »

You may not even want to use the I term. In my bench testing a high D and high P were good, but any I at all did weird things.

I have not messed with it in a while, so it's possible the code needs a bit of tweaking, but I think you're the first one to try it.

My recommendation is to set a really low boost target, and try to get the code to hold that before going to your max.

Ken
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

Ah, I didn't know I was alpha/beta testing. That changes what I do a lot! Ok, I'll mess with it more, I figured it was just poorly explained in the dialog.

Being lost is one thing I'm good at. Working on something where the answer is withheld I'm not.

In that case, FYI, I was able to EASE it into boost, and it crept up the boost just as I had it set to (100, 150, 175, 200 kpa) and held it well, but as I said, it gets WEIRD if you overshoot to limit. I'll try it again, though it's hard since my boost is barely under control anyway. I'll try shutting off I for now, I don't much need it anyway, a small error is fine.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

Ok then, more news:
Last night I just drove around for half a tank of gas. :-) I turned off the I setting = 0 based on what I saw here, and set the boost target much lower (150 kpa). The motor did a slow climb to 150 (or so) then immediately dropped the boost back down into vacuum, every time.

I did a bit of playing, but couldn't get any other behavior, it seems something is going negative and staying that way. The switch is pretty instant, it just turns back around.

I don't have any of the development stuff set up yet - but if you get a version which logs duty cycle to me I'd be happy to record some logs for you. The logs from last night I have.

<edit> The open loop settings seemed to work well, but of course there's slow boost building that way.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
6040solder
Experienced MS/Extra'er
Posts: 307
Joined: Mon Oct 22, 2007 7:15 am
Location: Auckland, New Zealand

Post by 6040solder »

Firstly, what is your gate base boost pressure? whatever that is, no boost controller can get you less.
AbeFM wrote:<edit> The open loop settings seemed to work well, but of course there's slow boost building that way.
It doesn't have to be. You set it to hold the gate closed (no boost to the gate) until a particular rpm, then taper the duty away to maintain the boost you want through the rev range.
Last edited by 6040solder on Sun Jul 29, 2012 7:25 pm, edited 1 time in total.
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

So you're at an RPM where you could have boost but are throttled back, then you get into it and build boost slow because the can is seeing pressure.

And what about 5th gear overboosting at low RPM, but 2nd gear you go through there so quick you're again hurting spool up?

Not to mention it's environmentally sensitive...
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
6040solder
Experienced MS/Extra'er
Posts: 307
Joined: Mon Oct 22, 2007 7:15 am
Location: Auckland, New Zealand

Post by 6040solder »

Offline we have determined that the gate has about a 5psi spring/diaphragm/flapper combo in it, was sold as a 9psi setup and that with the gate arm disconnected and wide open, he sees 12 - 14psi by redline. This leads to way slower spool and way more correction range required by the control setup.

A good gate is one that is set to the minimum pressure that you ever run, and does not creep at all by redline when plumbed normally to just in front of the throttle.

Running a softer gate spring than your lowest boost allows pressure pulses in front of the turbo to "push" it open and increase spool up time and lag by bypassing needed gases earlier than it should.

Because the ratio of diaphragm to valve/flapper size is usually fairly one sided, this doesn't present much of a problem until spring pressures are particularly low. 5psi is particularly low when you run 12+ all the time.
AbeFM wrote:So you're at an RPM where you could have boost but are throttled back, then you get into it and build boost slow because the can is seeing pressure.
For a start, the can does not see any pressure until there is pressure...

Secondly, your gate should not pass any ex gases until it is close (maybe 2/3 the way) to full boost. If it is, it's very soft indeed.

Taken to extremes, if you use a 5psi gate with a 6:1 ratio and the hose disconnected, you'll see about 30psi manifold pressure max. reality will be a bit lower because when its not quite open, each high pressure pulse pushes the gate out of the way and goes sailing by. Also, because of those pressure pulses opening the door themselves, spool would suck anyway.
And what about 5th gear overboosting at low RPM, but 2nd gear you go through there so quick you're again hurting spool up?
This is indeed the price to fixed open loop control without gear reference.
Not to mention it's environmentally sensitive...
True, and ditto my last comment.

There are heaps more factors involved of course, but the first thing to do IMO is get a gate that matches the flow requirements generated by you turbine housing and engine demand/output. Second thing is up-rate the spring to something close to what you want to run. These will bring massive improvements all by themselves without fancy closed loop stuff :-)
Last edited by 6040solder on Sun Jul 29, 2012 7:25 pm, edited 1 time in total.
turbo355
Master MS/Extra'er
Posts: 826
Joined: Tue Feb 21, 2006 11:32 pm

Post by turbo355 »

What kind of gate setup are you running a internal or external gate?
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

Sure sure, but the issue is the EBC closed loop code is completely broken, as best I can tell. I'd be happy to discuss semantics, but right now I want to not cloud the issue with discussions of the ideal system and get the basic code in place. I can replace hardware as needed once the computer doesn't pull all boost as soon as I hit my target.


FYI, with my manual boost controller, I get full boost from 0 psi in WELL under a second.
Firstly, what is your gate base boost pressure? whatever that is, no boost controller can get you less.
What's happening is it's closing the loop from the turbine outlet pressure source to the wastegate, opening it up full while I'm at part throttle, so yes, I get less than can pressure as there's a significant pressure differential across the throttle plate.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
muythaibxr
Site Admin
Posts: 8230
Joined: Thu Oct 14, 2004 12:48 pm

Post by muythaibxr »

I don't think the code is broken, as I'm not seeing it do anything like what you're seeing when I test on the bench.

I think it's more than likely a tuning issue, and you have to play with the P and D numbers, the open and close numbers, etc...

Post the latest msq you're using and I'll put it on the bench and see if I can make any suggestions.

Tuning this PID loop is going to be very similar to tuning the idle PID loop numbers.

Use a lot of P to get to to the target quick, and some D to make it slow down the correction as it gets close to the target. "I" can take care of small deviations from the target boost if necessary. I can't think of any reason why it would go back into vacuum due to code.

I'll build you a test binary based on rc1c to output boost duty to the istatus5 variable so you can watch it on the screen, but get me an up-to-date msq so I can see if I can duplicate what you're seeing.

Ken
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

Ah, ok, if you think the open/close numbers might be causing this, then it's certainly a place to start. I fudged the numbers back and forth a few times, so I'm not sure they are in my msq (I have the laptop but not the MS handy).

Settings are as follows:
Boost control: On
Sol Frq: 39 hz
Cont Int. 10 ms

Boost Cont. Pin: IAC pin A
Output Pol: Normal
Closed Duty: 0
Open Duty: 100

Algo: Closed-Loop
Proportional: 80
Intgeral: 0
Diff: 20

My targets have been in several places, but lately it's been 150 everywhere but the bottom throttle row, with a 5 psi spring.

Hopefully this is just a settings issue. Any logging of the solenoid should hopefully help!
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

AbeFM wrote: Settings are as follows:
Boost control: On
Sol Frq: 39 hz
Cont Int. 10 ms

Boost Cont. Pin: IAC pin A
Output Pol: Normal
Closed Duty: 0
Open Duty: 100

Algo: Closed-Loop
Proportional: 80
Intgeral: 0
Diff: 20
FYI, I've also tried 15/85 for open-closed duty, but was having overshoot issues so I widened it up. I'd had P: 40, I: 20, D:20 and go huge overshoot, then this dwindle down to zero boost, and also I tried P:50, I:0, and D: 35 with the same effect, but not nearly the same overshoot.

It seems to work, is damps nicely coming in, but as soon as it overshoots it acts as if the solenoid goes full closed and boost drops off to zero and stays there. Lower solenoid rates definitely didn't help. Inverted output would not build boost, as expected. I didn't change the cycle time, since 10 ms already seems pretty fast, so I raised P instead.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
6040solder
Experienced MS/Extra'er
Posts: 307
Joined: Mon Oct 22, 2007 7:15 am
Location: Auckland, New Zealand

Post by 6040solder »

AbeFM wrote:and boost drops off to zero and stays there.
I assume you mean at part throttle. It might pay to start by getting WOT boost control working right first?
Last edited by 6040solder on Sun Jul 29, 2012 7:24 pm, edited 1 time in total.
AbeFM
Super MS/Extra'er
Posts: 875
Joined: Wed Dec 05, 2007 1:40 pm
Location: San Diego, CA
Contact:

Post by AbeFM »

I was getting overshoot, and then this drop to zero after bouncing off my overboost protection.

I wanted to seperate the variables and see if the strange behavior was due to some undocumented relation between overboost and EBC, so I gave the computer something I was sure it could handle: Slowly building boost with a well defined boost target which could be easily controlled.

I don't see the problem with testing at part throttle - the PID looks at MAP, compares to a 2d table of RPM and TPS, and pulses a solenoid based on this target. Sure, I could give it a much harder job to do, but I wanted to make sure the 30 hz wasn't overburdened trying to deal with a MAP signal raising at 400 kpa/sec. My part throttle test allowed for ~25 kpa/sec, though I ran it at several different TP positions, and even would increase throttle after the boost started falling to no avail.
2000 VVT Miata turbo, MS3Pro

Contact me if interested in a MS-II 2nd gen NB Miata PnP board.
muythaibxr
Site Admin
Posts: 8230
Joined: Thu Oct 14, 2004 12:48 pm

Post by muythaibxr »

I'll try testing your specific settings on the bench this weekend.

If I find any bugs, I'll fix them and they'll go into the next RC, otherwise I'll try to figure out what settings are causing your problem.

Ken
Post Reply