Ignition at part-load, RON98 (16x20) Airflow -vs- Engine speed (kf_zw_roz98_vanos_tl_n_lm) is the main table in use with a healthy engine, with no VANOS fault codes at normal warmed up operating temperature running 98 RON/93 PON gasoline. If you happen to have stuttering or unclean combustion when stepping on the gas, rescale the cylinder rewetting tables as well: The engine will probaply run just fine only with T_TI_AS adjusted but to get fueling dialed in you need to fine tune other fuel maps: The following scalars need to be adjusted accordingly:ĭepending on the injectors you will have to finetune the injector latency compensation (injector dead times) as well:īut adjusting the scalars will only get you to rough ballpark. You will have to calculate the difference in percentage of volume flow between stock and your new injectors. Under VANOS fault conditions, Basic Injection Time IP_TIB is used.įull load enrichment IP_TI_VL is a multiplier of the part load calculations and added to them.īlending between cold and warm injection maps is done by weighing factor kf_fak_vanos_tl_tkw_tkw_st for partload and kf_fak_vanos_ll_tkw_tkw_st for idlespeedĬhanging the fuel injectors may be needed when charging your engine and therefore some constants and maps need to be tweaked. I or II are for the two halves of the straight six engine. When there is no VANOS fault, the engine interpolates between Injection time at part-load, cold engine, Vanos I or II and Injection time at part-load, warm engine, Vanos I or II.
#Bmw ms42 immo off full
Learned trims do affect full throttle fuelling as well, but area learned from closed loop areas. The lambda sensors for closed loop control are narrowband. Injection maps are based around engine load vs engine speed. Set Byte at 0x5002C to 0xA8 Fueling Basic Fuel Maps To disable the CRC16 calibration checksum do the following. The checksums are located at the following addresses: The checksums are used to verify that the data written to the ROM has not become corrupt. The MS42 uses three CRC16 checksums that covers the boot, program and calibration sections. The calibration data section is 32kByte in size and contains all constants and tables.
#Bmw ms42 immo off code
The program code section is divided into two 192kByte large sections with the calibration data in between. Note: The newest version of immobilizer and checksum delete will not need bootmode flashing. Unlimited write access to the bootloader section can only be archieved through JMGarage Flasher and is ONLY needed for virginizing the ECU to pair it with a different EWS module or to alter the UIF without increasing the flashcounter. That means once a byte has been changed from FF to another value, it is not changeable again. The significant difference between the bootloader section and the others is, that it's only one time programmable under normal operation. This section is 64 kByte in size and contains the interrupt setups, input and output initializations, as well as immobilizer information and the UIF (user information fields). The bootloader code section is the most important section of the MS42 and doesnt have to be touched for at least 99% of all use cases. The MS42 can be seperated into three major sections, the bootloader, the program code, and the calibration data.