I'm going to help in conversion from B&G MS to VEMS in friend's n/a Jetta 16v.

Shopping list:

Information hunting

Let's assume one who never before has browsed through wiki has just got his V3.2 order. He might end up wondering what to do next? Does he need to solder something by hand? A little searching brings following pages:

So there is something to start. Maybe a proper step-by-step guid is needed, I'll try collecting the issues to a separate page from this exercise.


Idle is now close to perfect with cold and half-warm engine. Also previous RPM undershooting (RPM falls down to ~500rpm when releasing throttle rapidly from high RPM) problems are gone. The trick was to set IAC ref position table a few steps over needed values and limiting iac_integral_limit_dec to very small value.

With warm engine there is still a problem with rapidly falling RPM. Ref position table ends to 77C, does this affect to all temperatures above 77C?


CLT and MAP readings are incorrectly, at +7C outside temp after night CLT says -16C MAT -6C. Incs are generated using EasyTherm using 2k7 bias resistor and following measured values:

100C, 350ohm

23C, 5400ohm

0C, 16000ohm


100C, 343ohm

6.4C, 12600ohm

-16C, 37300ohm

Note that resistance is appr. double compared to standard GM sensor. This is not a problem, just good to know.

Generated is [here]

Verify that inc file has following "firmware_temp_value" at given "adc" indexes:

These were made with firmware/bin/ (in CVS head).

(TODO: complete it to make complete inc files, and publish some inc files with different resistor values).

If the AVR AREF reference voltage and the pullup voltage are significantly different (they should be roughly the same, appr. 4.86V .. 5.05V. Easy to measure with just endplate off) that would explain things and would be easy to make an inc for.


With updated ini (r017) and small kpa formula fix also idle is functional and possible to tune with MegaTune.


Victory in tuning battle! Car runs now pretty well with firmware v12. Almost only thing we missed was idle, because of some bugs in MT profile (r016):


Severe problems keeping the engine running nicely. Tried STABLE1_0 with config below, engine hardly runs. Same SW & config with older compiler and car runs almost nicely, but ign advance is for some reason limited to ~24degrees and changes in ve table doesn't seem to affect AFR at all..

Please publish

Earlier test were done with release v11 and gcc3.4.1/libc1.0.4 (WinAVR 20040720 distribution). Updated to firmware v12 release and compiled with gcc3.4.3/libc1.2.3 (latest WinAVR) and problems are gone.


Car is now running, both fuel and ignition (dummy with distributor). Latest config dumps from board with STABLE1_0 firmware (20.05.2005)


It's alive. Engine was running yesterday, board was only delivering fuel. Latest config files:


Problem below was solved by updating a perl. With perl v5.8.6 works smoothly.

Yesterday we made some initial tests in the car. MT configuration started to look somehow acceptable after a couple of hours, basically using old configuration from B&G MS. However TPS readings were not ok, values were either 16% at idle or by adding some throttle value jumped directly to 100%. In the LCD TPS values were ok.


Some problems with perl. I use a activestate perl under Win: This is perl, v5.6.1 built for MSWin32-x86-multi-thread

When trying to run perl bin\ global.h doc\megatune\config.xml doc\megatune\vemsv3.ini I get an error message

"strict" is not defined in %XML::Simple::EXPORT_TAGS at C:/APPS/Perl/lib/Exporter/ line 75
        Exporter::heavy_export('XML::Simple', 'main', ':strict') called at C:/APPS/Perl/lib/ line 45
        Exporter::import('XML::Simple', ':strict') called at bin\ line 10
        main::BEGIN() called at C:/APPS/Perl/site/lib/XML/ line 10
        eval {...} called at C:/APPS/Perl/site/lib/XML/ line 10
Can't continue after import errors at bin\ line 10
BEGIN failed--compilation aborted at bin\ line 10.

I tried to download XML-Simple from activestate and installed it ppm install XML-Simple.ppd without any warnings etc. but obviously something is still wrong. Any hints?


Board/case assembly is now mostly completed after some not-so-active period.


Completing of the controller begins.

Although board has a most of the parts already soldered on it, a few components still needs to soldered by hand.

There are also several items to check before even thinking to plug the board to the car.


Ordered items arrived

more details will follow..