This page is a compilation of information I have found regarding the operations of single variable vanos using two solenoids as used by BMW in the S50B30 engine as well as the most comprehensive single file I have found regarding Vanos found online.
To control both intake and exhaust cam with the BMW Vanos mode (not the suzuki-PWM mode) 2 solenoids for each (4 outputs total), 1.1.93 fw required, see [VT help]
- since 6 inj + 6 ign might be used up on a BMW I6, the following seems reasonable:
- 2 injector outputs for intake cam
- see "outputs" below
- 2 ign outputs for exhaust cam
- see "outputs" below
- 2 stepper outputs for BMW double-iac
- 1 stepper output for fuel pump relay
- 1 stepper output for boost solenoid
- it's very common to apply 4*PFETs even if high-side drivers are not needed: to have some extra powerful outputs (eg have spares, not just the absolutely required minimum number of outputs)
A further question on variable vanos. Is there a possibility for a multiplexer that could have more outputs and possibly control QUAD vanos?
- currently quad-vanos (V8, V10 and V12 engines) can be driven with 2 * v3 devices (one v3 controls 2 cams, the other controls other 2 cams).
- After initial config setup, tuning (VE, ign, boost tables) can be done simultaneously (VT sending to RX of both v3, but only receiving from one v3).
- during initial setup (and post-tune config backup), and when fine-tuning Vanos tables (setting variables that is different between the 2 controllers), one VemsTune is connected to exactly one v3 ECU. 2 VT can run from same PC simultanously (to talk to different devices, and log), but from separate VT install directories (even if same VT version), and 2 RS232 ports needed of course.
- instead of the "trigger-input multiplexer", separate device (either another v3, or the ARM based smartbridge - code is being ) is more versatile solution to control quad Vanos, because it extends the number of outputs (and analog inputs, and wideband and EGT inputs; and redundancy) at the same time.
2+2 outputs for the double Vanos
- the resistance of output solenoid is 3.7 Ohm (appr. 4A drive current)
- with internal flyback diode arranged for shared- (not shared+ as usual!)
- some installers remove the flyback diode (molded into the connector, not easy to remove)
- alternatively shared- application: the flyback diodes can stay inside the hydraulic solenoid connector. Than 4 PFET-s (like IRF 5055 DPAK) can be used for "high-side driver" with Rgs=10k, Us=+12V, Ud=output. The gate can be activated by p259 output (which could not directly drive the solenoid because of current limit).
- as improvisation the 4-channel "low-Z extension" board was used (it has 4 PFETS just as needed, and 4 inputs) but the Ud was connected of all 4 channels, had to be separated with tracecut.
Single variable vanos S50B30
- primary trigger : 60-2
- secondary trigger : fixed non adjustable single cam pulse per cycle
- 3d trigger:
- can be connected to [exhaust cam]
- 8 pulses equally spaced used for measurement of the cam movement.
- equally spaced every 90 degrees ? Is that for certain ? Is it not designed properly like the suzuki and subaru where it's also suitable as camsync, and also for camshaft position measurement ?
- if so, than it must be connected to "exhaust cam" input and the "exhaust cam" control must be used (even if it actually controls the intake cam in reality). And exhaust cam output must be set to drive the solenoids.
- Some values like solenoid frequency must be set for the intake cam control, even if the intake output is not connected
This would be the only way currently to monitor this engine without modifying the hardware of the engine.
Triggerlog is needed so we can implement (and test!) it.
- enable secondary trigger
- for BMW double-vanos has 3 VR sensors (VEMS has support for 5 trigger inputs: prim,sectrig,exhaust + 2xwheelspeed as of 1.1.95)
- enable (motorsport / camshaft angle control / ) third trigger input also
- note: Marcell had to disable passwd protection for the v3 (in VemsTune 2011-07-20)
- that should not be needed in future VemsTune versions
- capture triggerlog
- publish it:
- [double-Vanos triggerlog uploaded with sharing], download the zip and see the "other" directory. All 3 triggers are visible: Crank, intake and exhast cam.
To note about the S50B30. The camsync signal occurs around 340-365deg, this signal doesnīt move with vanos but the ecu is reporting it wandering a bit. The VEMS ecu obviously doesnīt like it when the camsync crosses the CONFIGURED "measure-tooth"
- This was solved by implementing a 0-720 camsync location setup: measurement is configurable, see the "measure tooth" variables (separate for sectrig and third trig).
- also, is that 1 pulse per cam rotation ? If more than 1 pulse, easy to filter (choose the pulse we like) with the "secignore" variable.. But the measure tooth is appropriate in any case.
- That didnīt work, when more then 0th tooth was choosed sec trig never seen.
Another suggestion is to be allowed to pin point where in a 0-360 deg window the camsync should be and ignore all other teeth, before and after the camsync window (much like the knock window). This is what the Sectrig min angle and max angles should be doing.
Alpha-N question : I have Alpha-N setup and the Cursor always hovers around 100kpa unless boosting. I thought this would work same way as ign and lambda tables????
Success : The vanos has extremely little lag and follows target very well.
Here is a very comprehensive pdf file I found on some
chinese document website. It contains information on all of the vanos systems bmw offers.
[another insight] into Vanos.
Some pics in german of the operations of the vanos system and the amount of travel on the inlet cam.
I donīt understand german so somebody else will have to make sense of these images and the information.
Some old info: MembersPage/JasonVoytilla/BMW/Vanos
Added link to original bin file from the vanos controller
This is a bin file, map is located at 0x2800
and is 16*16, axis at 0x2810 and 0x2820 However if somebody wants to spend time decompiling this then everything about the control should be optainable.
Code is only about 8k out of the 32kb chip.
It seems that the tooth gears have equally spaced 8 teeth.
which means each tooth and gap make up 45degrees out of 360.
The alteration is max 42degrees of crank angle, while each tooth and gap is therefor 90degrees crank angle.
Iīd imagine the rising edge of one gear(exhaust) to be leading against the adjustable gear (intake). So difference between both cams can be monitored 8times a cycle. I.e measuring the rising edge on the exhaust and note the crank angle, then wait for the intake cam rising edge and note the crank angle.
It seems the solenoids work in simple fashion,
Open Solenoid 1 and the intake advances, Open the other and it retards.
The cam canīt move when both solenoids are closed so it stays in a fixed position.
The engine has 4 sensors
Crank sensor 60-2
Cam sensor TDC , one point (this is then not on the S50B32)
Intake cam sensor ,
Exhaust cam sensor ,
Iīll measure the solenoids resistance and report.
Fero measured 4 Ohm.