[help needed] VVT Debug fail

It's all about the code!
Post Reply
stefanst
contributor
contributor
Posts: 703
Joined: Wed Feb 17, 2016 12:24 am
Location: USA 08530

VVT Debug fail

Post by stefanst »

I was trying to log exactly how well VVT is working on the '91 Miata with the VVT engine. But it looks like the debug setting 8 doesn't do anything anymore. I may be doing something wrong of course, but nothing shows up in my log. Other debugs seem to work just fine if that helps with finding the problem. Tune is attached.
Attachments

[The extension msq has been deactivated and can no longer be displayed.]

User avatar
AndreyB
Site Admin
Posts: 14334
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: VVT Debug fail

Post by AndreyB »

Looks like that's intended behaviour

Code: Select all

	/**
	 * VVT valve control often uses AUX pid #1
	 */
	DBG_AUX_PID_1 = 7,
	/**
	 * VVT position debugging - not VVT valve control. See AUX pid #1 debug for valve position.
	 */
	DBG_VVT = 8,
See also https://rusefi.com/wiki/index.php?title=Manual:Debug_fields which has some info on which output is what. You want to look at aux pid #1
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14334
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: VVT Debug fail

Post by AndreyB »

PS: just realized that field value label was misleading. Changing from "VVT PID" to "VVT Input"

https://github.com/rusefi/rusefi/commit/da8195fc2a74dd1f1d18ac8e6b137acf6ed5d20e
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
stefanst
contributor
contributor
Posts: 703
Joined: Wed Feb 17, 2016 12:24 am
Location: USA 08530

Re: VVT Debug fail

Post by stefanst »

Not sure that's all the problem there is.
With debug set to 8, none of my debug fields in the log recorded anything. All fields (f1-f7, i1-i3) have 0s all day long. According to the Wiki, at least i1 should contain a VVT event counter, whatever this may be.

I'm also half-certain I tried debug setting 7 and didn't get anything. Not 100% though, so I'll report back later today/tonight.
User avatar
AndreyB
Site Admin
Posts: 14334
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: VVT Debug fail

Post by AndreyB »

And you are right again - it was not counting in NB2 vvt mode. Now it does

https://github.com/rusefi/rusefi/commit/6a9c92c7bb470b0df4f9d029e9f42f3e539afe54
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
stefanst
contributor
contributor
Posts: 703
Joined: Wed Feb 17, 2016 12:24 am
Location: USA 08530

Re: VVT Debug fail

Post by stefanst »

And yes. I can confirm that "AUX PID 1" does indeed debug the VVT control. Now I just need better PID parameters than what I'm using.
VVT Oscillations
VVT Oscillations
vvt oscillation.png (34.56 KiB) Viewed 7045 times
We have crazy oscillations.
P-I-D
2.000 - 0.005 - 0.000

Any prior art we can look at? Unfortunately I lost my old '03 tune.
User avatar
AndreyB
Site Admin
Posts: 14334
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: VVT Debug fail

Post by AndreyB »

https://github.com/rusefi/rusefi/blob/master/firmware/config/engines/mazda_miata_vvt.cpp shows mine as

Code: Select all

engineConfiguration->auxPid[0].pFactor = 2;
	engineConfiguration->auxPid[0].iFactor = 0.005;
	engineConfiguration->auxPid[0].dFactor = 0;
	engineConfiguration->auxPid[0].offset = 33;
	engineConfiguration->auxPid[0].minValue = 24;
	engineConfiguration->auxPid[0].maxValue = 44;
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14334
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: VVT Debug fail

Post by AndreyB »

if you have crazy oscilations how is your VVT position calibration? with VVT plug disconnected what does your VVT position gauge says?

I was suprised to see a huge variabtion in VVT zero position between green and red cars.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
stefanst
contributor
contributor
Posts: 703
Joined: Wed Feb 17, 2016 12:24 am
Location: USA 08530

Re: VVT Debug fail

Post by stefanst »

VVT without actuator is just around zero. Also, offset shouldn't really make a difference with a forward-nothing-backup control.
Looks like yesterday I had more stable VVT position. The only change that could possibly have an impact that I can think of is the analog sensor smoothing factor. I sharpened it up- less smoothing. Does that get applied to VVT position?
User avatar
AndreyB
Site Admin
Posts: 14334
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: VVT Debug fail

Post by AndreyB »

Nope, VVT position is not affected by analog anything.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
stefanst
contributor
contributor
Posts: 703
Joined: Wed Feb 17, 2016 12:24 am
Location: USA 08530

Re: VVT Debug fail

Post by stefanst »

More "D" improved the oscillations a lot, especially on a warm engine. The "P" term is still going a bit crazy, essentially dithering around the target, but since our control is fairly slow to react, this seems to work quite well, especially at higher rpms.

One thing I noticed, running the board on the JIMSTIM, the "I"-term is still trying to run away. Meaning if we command a value that can't be reached, it just keeps running into infinity- positive or negative. We need to control this somehow. This is the same problem we are also still seeing with idle control. Maybe just add 2 more fields: "I-term min, max"? We can't use the same min/max as for the absolute output, since we need to be at least able to get to "0" and beyond.
Post Reply