M42club.com - Home of the BMW E30/E36 318i/iS
DISCUSSION => Engine management => Topic started by: wazzu70 on October 18, 2011, 09:41:31 PM
-
!!!!WORK IN PROGRESS!!!!
This is how-to is meant to be a guide for setting up a configuration file for the VEMS standalone system (other systems are most likely similar). This is purely covering the configuration side of things, it will not cover how to tune or how to wire the system up. There are simply too many ways to wire in a system to even attempt to cover this area. Tuning is also far too wide and complex of a topic to try and cover in this thread. I am not any kind of an expert so double check things for yourself which may not seem correct. I am simply going through this exercise myself for the first time and making a guide with all the info I wish were easily accessible when I was trying to make heads and tails of everything.
Since I know there will be questions, I'll post this stuff at the beginning and if you are comfortable with this info, move on.
Reading Material:
If you are interested in learning how engine management works fundamentally from the hardware side I found this book to be helpful: How to Tune and Modify Engine Management Systems (http://www.amazon.com/Modify-Management-Systems-Motorbooks-Workshop/dp/0760315825/ref=sr_1_2?ie=UTF8&qid=1316933124&sr=8-2)
I also liked this book for covering how to tune: Engine Management: Advanced Tuning (http://www.amazon.com/Engine-Management-Advanced-Greg-Banish/dp/1932494421/ref=sr_1_1?ie=UTF8&qid=1316933124&sr=8-1)
Also an all around good book on tuning, engine building, and turbo systems: Forced Induction Performance Tuning a Practical Guide to Supercharging and Turbocharging (http://www.amazon.com/Induction-Performance-Practical-Supercharging-Turbocharging/dp/1859606911/ref=sr_1_1?ie=UTF8&qid=1316933394&sr=8-1)
People like this one too, but I think it's not very thorough: Maximum Boost (http://www.amazon.com/Maximum-Boost-Turbocharger-Engineering-Performance/dp/0837601606/ref=sr_1_1?s=books&ie=UTF8&qid=1316933489&sr=1-1)
VEMS Pin Out:
If you are curious how you would go about wiring up a VEMS unit, here is the wiring diagram (http://www.vems.co.uk/VEMSUserManual/ECConnectorsOut.png) for the inputs:
(http://www.vems.co.uk/VEMSUserManual/ECConnectorsOut.png)
VEMS Homepage (Hardware): http://www.vems.hu/
VEMSTune homepage (Software): http://www.vems.hu/vt/
Even if you do not have the hardware you can download the software and experiment with it to see if this is something you are interested in.
VEMSTune Video Tutorials: http://www.vems.hu/vt/video (http://www.vems.hu/vt/video/#Videos/Getting_started/Connecting_device_downloading_installing_drivers_ECU_detection)
Getting Started:
Before plugging in your VEMS ECU verify all grounds work correctly as a safety precaution. To do this, set your volt meter to the diode [insert picture of volt meter set to diode] and touch the ground in your wiring harness to a known good ground. If everything is good you will get a audible beep, or a blink depending on your particular meter. To get a known good ground in my E30 I ran a wire from the negative terminal into the cabin of the car to use as my chassis ground. E36 should be easier due to closer battery location.
This step is essential to make sure you don't fry your new EMS!
Setting up the Config:
Open VEMSTune and open a config file to start with. Start with the one that is the latest software version. You can either do this from the opening page under "Recent Config Files" or under File -> Open Config File
The red box shows where to open a config file from the main screen:
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/VEMSTuneMainScreen.jpg)
Engine Setup:
Once the config file is open go to Base Setup menu in the toolbar and select the first option, Engine Setup. The engine setup dialog box should look like this:
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/EngineSetup.jpg)
If you press F1 for help, you get this nice help screen next to whatever dialog box you are filling out with descriptions of the variables. This is incredibly helpful and I highly recommend having this open until you know what all the inputs are for on every screen. The help is sometimes out of date, or it does not cover everything clearly. It is still an amazing resource. The Engine Setup dialog box with the Help open looks like this:
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/Help-1.jpg)
The help on this screen is pretty good at explaining everything you need to know. Just follow the directions for the most part. To convert lb/hr to cc/min multiply the injector flow rate in lb/hr by 10.5. The M42 came from the factory with 20.35lb/hr injectors * 10.5 = 214cc/min. The formula for Req Fuel is listed in the help. It is Req_fuel = 6.49 * (Engine Displacement in cc / Number of Injectors / Injector Flow Rate in cc/min). The rest of the variables you will have to fill out yourself depending on your setup.
To go to the next dialog box you want to fill out you can select it from the menu bar, or use the handy arrow in the middle of the box at the bottom. Do not hit refresh as that will erase all newly changed variables and revert back to the config as it was opened! Numbers that appear red are variables which have changed since the config was opened (not since last saved unless you close and reopen the config). Remember to SAVE your work regularly!
Alpha-N/Speed Density blending:
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/AlphaN_SpeedDensity-1.jpg)
Most people will have it set up the same as pictured here if you are running a MAP sensor. Remember to enter 0kpa in the switch point variable if you want to read off the MAP exclusively (as you do in an MAP based setup). If you choose to run your engine off the throttle position sensor instead of a MAP sensor at lower pressures then select Alpha-N as your main control strategy and enter the point in which you want the ECU to switch between TPS and MAP for the main load reading. Alpha-N is mostly reserved for an ITB setup.
Primary Trigger Settings:
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/PrimaryTriggerSettings.jpg)
For anyone using the factory 60-2 toothed wheel on the crank you will have a setup similar to mine. Your trigger edge will be rising since it is a VR sensor. You will have a missing tooth wheel and N-2 as the missing tooth type. This also means the number of teeth on the wheel will be 58 (since two are missing) and the angular width of a tooth is 6 degrees (360 degrees/60teeth = 6 degrees/tooth).
To determine what tooth is at the VR sensor at TDC, set your engine to TDC and count how many teeth have passed by the VR sensor to get to that point. I set my engine to TDC and made a mark on the TDC reference tooth with a grease pen. Then I turned the crank so that all the teeth from the gap to the tooth were exposed and counted them. I got tooth 20 to be the TDC tooth.
Here is a picture of marking the tooth (you can see yellow paint on the TDC tooth):
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/VRsensortooth.jpg)
Remember that 0 is the first tooth on the wheel after the gap, so since I counted 20 teeth to TDC, it will show as tooth 19 in the display.
Next, choose a value for First Trigger Tooth (FTT). It took me a bit to understand what exactly this value is for. You can choose any tooth between the gap and the TDC reference, but it is best to choose a low number. The purpose of this tooth is to let the system know when to start charging the coils. If you set this value too large, you will not get adequate charge on the coil. I chose tooth 5 (at random) to be my FTT, but it is shown as tooth 4 in the dialog box since the first tooth on the wheel is number 0.
After you have set your FTT, figure out how many degrees this represents (FTT * Angular width of tooth) = FTT degrees. This needs to be subtracted from the degree representation of the TDC reference (TDC ref * Angular width of tooth) = TDC degrees. Now take TDC Degrees - FTT degrees to get your variable TDC after the trigger.
Using my settings for the M42:
FTT degrees = (5 teeth * 6 degrees) = 30 degrees
TDC degrees = (20 teeth * 6degrees) = 120 degrees
TDC after the trigger = 120 - 30 = 90 degrees.
Next trigger tooth is found by taking two revolutions of the crank (120 teeth) and dividing by the number of cylinders.
For a 4 cylinder this variable will be 30 teeth
Disable all the filtering as you do not need it.
Trigger Settings Visual:
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/TriggerSetting.jpg)
This is a neat feature to help you visualize the layout. Its also a good reality check to make sure your values are correct. Anything you enter in the Primary Trigger Settings dialog box will automatically transfer here, you do not need to enter it twice.
One handy thing I noticed about this box is that the TDC after the trigger values on the slider are color coded. If your value is in the red or yellow, you need to leave more space for your coil to charge. If this is the case, choose a lower number FTT.
-
The next step is to setup your secondary trigger for the cam-sync. Currently I am running my engine wasted spark/batch injection so I have this feature disabled although I will enable it soon. The variables on this page are pretty self explanatory though.
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/SecondaryTriggerSetting.jpg)
Setting up the ignition reference teeth is the next part of the operation. If you need more ignition events than are shown, you need to change the amount of ignition outputs in the "Ignition Settings" dialog box.
The ignition reference dialog box looks simple, but it is a very critical part of the setup. All BMWs that I know of are 60-2 toothed wheels for the crank wheel so always think of this part of the config as a 60 tooth wheel (the two missing are irrelevant since the computer knows there is supposed to be a tooth ever 6º and can figure it out).
A crank has to make two full revolutions to go through the 4 cycles on a cylinder so think of your wheel as a 120 tooth wheel (60 teeth *2 revolutions). Take the 120 teeth and divide by the number of cylinders you have. A 4cyl engine will have 30 teeth per event.
If you are running wasted spark/batch fuel, just think of things in terms of one revolution (as I have in my picture for a 4cyl wasted spark).
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/ReferenceTooth.jpg)
Keep in mind that the events are read from the BOTTOM UP not top down. Another thing to note is that to get things to sync quicker, the 0 tooth event should be at the top. For me personally, I find it easy to list things in order, and then shift them all down one step and move the 0 from the bottom to the top.
Example on a 4cyl sequential:
List the events in order of operation from the bottom up
90
60
30
0 or (120 depending on how you look at it)
Then shift everything down and move the zero to the top.
0
90
60
30
Wasted spark is much easier:
0
30
Hopefully that makes sense. If not, sit down and think about it a little bit and reference the examples. Remember the numbers refer to TEETH not degrees.
If you are using the forward and back arrows at the bottom of the dialog boxes, skip ahead a few screens to the "Ignition Settings" dialog box.
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/IgnitionSettings.jpg)
This is pretty much self explanatory. Dual output mode = wasted spark. If you are not running wasted spark, ignition outputs in use should be the same as the number of cylinders you have. If you are using wasted spark, you should divide the number of cylinders you have in half. If you don't know what wasted spark is, read about it in one of the books mentioned above or online.
The next page is to setup the ignition output so VEMS knows which pins to fire for which ignition event. Again, mine is setup for wasted spark so each event will fire two coils. If you are running sequential ignition you will have one pin per event. An important thing to note here is that you cannot choose which pin sets you want to use completely, you must use the preselected options form the pull down. If you look at the pin out diagram you will notice that my ignition output pins are not paired correctly in relation to the ignition driver label. This is because I could not choose to pair cyls 1 & 4, 3 & 2 like most would as it was not an option. What I did was change the pin in the connector to match the pins that fired with the appropriate coil. Kind of confusing how it works this way, but its what you have to do.
Listed are ignition output 2 & 3 for event 0 (cyls 3 & 4 since 0 is listed as the first output), and ignition output 0 & 1 for event 1 (cyls 1 & 2). The firing order on the M42 is 1 3 4 2 therefore event 1 would be for cyl 3 (30 teeth after TDC is the second cyl in the firing order), then event 0 as cyl 4, event 1 as cyl 2, and event 0 as cyl 1 (remember to read bottom up on the ignition events). This means cyls 2 & 3 should be paired together as well as 1 & 4 which is not the case of the available options. Switch the pins for cyl 2 and cyl 4 in the harness and you should be just fine.
Another way to look at it is like this:
Event: Tooth: Cyl (by firing order from bottom up)
1: 30: 2
0: 0: 4
1: 30: 3
0: 0: 1
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/IgnitionOutputDualOut.jpg)
Ignore the orange ignition outputs, you won't get errors.
The next screen is a visual of what pins you are using for which events:
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/VEMS/VisualIgnitionOutput.jpg)
-
Reserved
-
Reserved 2
-
Reserved 3
-
Some pictures of the VEMS board:
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/M42%20turbo%20project/M42166.jpg)
(http://i750.photobucket.com/albums/xx146/nhertlein/1991%20e30/M42%20turbo%20project/M42167.jpg)
Compare with MS, much less ghetto :)
-
Nice work regardless! Definite sticky material here, methinks.
-
Thanks Dave. Hopefully this helps answer some of your questions about the VEMS system, what its like to get things going, ect.
Hopefully I will have time to finish it up...about half way there now.