Unlocking Your BMW's MS41 ECU: EPROM & Tuning

19/02/2009

Rating: 4.65 (1742 votes)

The Siemens MS41 Engine Control Unit (ECU) is a common sight in various BMW models, including the popular 3 Series (E36) 2.0i, 2.5i, and 2.8i, the 5 Series (E39) 2.0i and 2.5i, the 7 Series (E38) 2.8i, and even the Z3 Roadster 2.0 and 2.8. Understanding the heart of this ECU, particularly its EPROM, is the first step for anyone looking to delve into performance tuning or diagnostics. This article will guide you through the specifics of the MS41 EPROM, its data extraction methods, and a detailed look at the key maps you can adjust to optimise your engine's performance.

What EPROM is used in a Siemens ms41 ECU?
The Siemens MS41 ECU’s are used in: Series 3 (E36) 2.0i,Series 3 (E36) 2.5i,Series 3 (E36) 2.8i,Series 5 (E39) 2.0i,Series 5 (E39) 2.5i,Series 7 (E38) 2.8i, Z3 Roadster 2.0 and Z3 Roadster 2.8. The eprom inside the ECU is 28F200 with 256KB memory. The content of the eprom can be extracted in two ways.

At the core of every Siemens MS41 ECU lies a critical component: the EPROM. Specifically, these ECUs utilise a 28F200 EPROM, which boasts a memory capacity of 256KB. This EPROM stores the engine's entire operational software, including all the maps and parameters that dictate performance, fuel efficiency, and emissions. Accessing and modifying the content of this EPROM is fundamental for any remapping endeavours.

There are generally two primary methods for extracting the data from the 28F200 EPROM within the MS41 ECU. The first method involves using diagnostic tools such as the KWP2000+ or Galletto 1250/1260. These tools connect to the ECU via the vehicle's diagnostic port, allowing for a partial extraction of the EPROM's content. When using these tools, you will typically obtain a 24KB file. While this file size is sufficient for modifying some common parameters, it does not represent the full 256KB data stored on the EPROM.

The second, and often more comprehensive, method for data extraction involves physically desoldering the EPROM chip from the ECU's circuit board. Once removed, the chip can be read using a dedicated EPROM programmer. This method yields a complete 256KB file, providing access to all the data contained within the EPROM. For in-depth tuning and full control over all engine parameters, obtaining the complete 256KB file is highly recommended. Regardless of the file size obtained, software like WinOLS is commonly used for analysing and modifying these ECU files. A significant advantage of WinOLS is its ability to automatically recognise the file structure upon import, whether it's a 24KB partial dump or a 256KB full dump. It's also important to note that MS41 ECUs are designed with only one software bank, simplifying the tuning process as there's no need to manage multiple software versions within the unit.

Table

Key Maps and Parameters in the Siemens MS41 ECU

Understanding the location and function of various maps within the EPROM data is crucial for effective tuning. Here’s a breakdown of some of the most important maps you’ll encounter:

1. The Rev Limiter

The rev limiter is a critical parameter that prevents the engine from exceeding a safe rotational speed. In the Siemens MS41 ECU, it's surprisingly straightforward to locate. To find it, open your ECU file in text mode within WinOLS, then set the properties to: Columns: 12, Values: 8bit, Number Format: Hexadecimal (Base 16). Search for the hexadecimal values 80 CB or E3 CB. The stock rev limit is typically set at 6512 RPM or 6524 RPM. The exact location of this value depends on the file size: for a 24KB file, it's at offset 001C9, while in a 256KB file, it's found at 141C9. Once located, select and open the map. The calculation method for the stock rev limiter values is as follows: 52096 * 0.75 / 6 = 6512 RPM and 52195 * 0.75 / 6 = 6524 RPM.

2. Injection at Part Throttle (Main Fuel Map)

This map, often referred to as the main fuel map, dictates the injection time in milliseconds based on the engine's RPM and load conditions during part-throttle operation. In essence, it controls how long the fuel injectors remain open to deliver the precise amount of fuel required by the engine at a given RPM and load. The main fuel map is a 12x16 grid, meaning it has 12 rows and 16 columns of data points. For 24KB files, this map is typically found at offset 009F8, while in 256KB files, its location is 149F8.

3. Injection at Wide Open Throttle (WOT)

As its name suggests, this map governs fuel enrichment during acceleration when the accelerator pedal is in the Wide Open Throttle (WOT) position. Similar to the part-throttle map, it specifies the injection time in milliseconds based on RPM and load, ensuring the engine receives sufficient fuel for maximum power output. The Injection at WOT map is a 1x16 map, indicating a single row of 16 data points. In 24KB files, it's located at 00D4E, and in 256KB files, you'll find it at 14D4E.

4. Spark Advance at Part Throttle

The spark advance at part throttle map determines the ignition timing based on RPM and engine load during normal driving conditions, including closed throttle. This map is crucial for optimising engine efficiency and responsiveness under everyday driving scenarios. It is structured as a 12x16 map. Its location in a 24KB file is 00D62, and in a 256KB file, it resides at 14D62. When working with this map, while you can technically use a precision of 2 in WinOLS properties, it is often simpler and more practical to work with a precision of 0 for easier value manipulation.

5. Spark Advance at Wide Open Throttle

This map, similar to its part-throttle counterpart, controls the spark advance but specifically when the accelerator pedal is at WOT. Optimal ignition timing at WOT is paramount for achieving peak engine power. This map is also a 12x16 grid. In 24KB files, its offset is 00E26, and in 256KB files, it's at 14E26. As with the part-throttle spark map, using a precision of 0 in WinOLS can make tuning adjustments more straightforward.

6. The Lambda Map

The lambda map plays a vital role in controlling the engine's air-to-fuel ratio (AFR) within a closed-loop system. Lambda correction is primarily used in part-throttle situations where maximum engine power isn't required, and fuel consumption is a priority. A lambda value of 1 (λ = 1 or 14.7:1 AFR) represents the stoichiometric ratio, which is the ideal balance for complete combustion. Values less than 1 indicate an excess of fuel (rich mixture), while values greater than 1 signify a deficiency of fuel (lean mixture). In 24KB files, the lambda map is typically located at 011C8. Tuning this map requires careful consideration and, ideally, real-time AFR measurement with a wideband lambda sensor.

Tuning the Engine: Practical Adjustments

When aiming to extract more power from a stock engine, focusing on the ignition and injection maps for both part throttle and WOT is usually sufficient. Modifying the lambda map is also possible but should only be attempted by experienced tuners with proper AFR monitoring equipment.

a. Adjusting the Rev Limiter

To set a higher rev limiter, you need to reverse the calculation used for the stock limit. For example, if you wish to set the rev limiter at 7000 RPM, the calculation would be: 7000 * 6 / 0.75 = 56000. You would then input this new calculated value into the rev limiter map.

b. Modifying Injection at Part Throttle (Main Fuel Map)

For a stock engine, the main fuel map can often remain as it is. Significant changes here are typically only necessary for heavily modified engines or specific fuel economy objectives.

What EPROM is used in a Siemens ms41 ECU?
The Siemens MS41 ECU’s are used in: Series 3 (E36) 2.0i,Series 3 (E36) 2.5i,Series 3 (E36) 2.8i,Series 5 (E39) 2.0i,Series 5 (E39) 2.5i,Series 7 (E38) 2.8i, Z3 Roadster 2.0 and Z3 Roadster 2.8. The eprom inside the ECU is 28F200 with 256KB memory. The content of the eprom can be extracted in two ways.

c. Tuning Injection at Wide Open Throttle

In this map, you can typically add between 1 and 3 milliseconds of injection duration to enrich the mixture for more power during acceleration. The exact amount added depends on the desired richness. When tuning this map, it’s important to note that WinOLS often only accepts whole values, such as 14, 15, or 17. Decimal values like 14.50 or 15.75 are generally not accepted by the programme.

d. Adjusting Spark Advance at Part Throttle

Since this map also controls spark advance at closed throttle, you might choose to retain the original values for low RPMs (e.g., 500 and 900 RPM). However, from 1300 RPM upwards, you can generally add up to 7 degrees of spark advance when using premium pump fuel. If you're using higher octane fuels, such as LPG (around 110 octane), you can advance the timing even further. Be cautious: advancing timing beyond 7 degrees with pump fuel without knock detection equipment is risky. If you raise the rev limiter by more than 300 RPM, consider adding 8 or 9 degrees of advance in the last cell of the map (at 100% load and 6500 RPM) for premium fuel.

e. Tuning Spark Advance at Wide Open Throttle

Tuning this map follows similar principles to tuning the spark advance at part throttle. Focus on optimising ignition timing for peak power output at high loads and RPMs, always mindful of fuel quality and the risk of knock.

f. Modifying the Lambda Map

Unless you are a professional tuner with a wideband lambda sensor and knock detection equipment, it is strongly advised to leave the lambda map untouched. Incorrect adjustments can lead to engine damage or significantly reduced performance and fuel economy. For those who are proficient, it's possible to implement an 'eco tuning' approach, where the lambda is set close to 1 in the low rev range for fuel saving, and then set below 1 (richer) in the higher rev range to achieve more power. Be aware that any significant changes to the lambda map will necessitate retuning the spark advance maps to maintain optimal engine operation.

Programming New Parameters into the ECU

Once you've made your desired modifications, programming the new parameters back into the ECU is the final step. Using an EPROM programmer to write directly to a desoldered chip is generally straightforward. However, flashing the BMW Siemens MS41 ECU via the 20-pin BMW round diagnostic connector can sometimes present challenges. A common issue is that the flashing tool indicates a successful write, but upon re-verification, the memory appears not to have been updated.

This problem often stems from the power and communication lines within the 20-pin round connector. For a successful flash, specific pins need to receive constant 12V power. Here's a breakdown of the relevant connections:

  • ECU Pins 26 and 49 are connected to Pin 14 of the 20-pin round connector, which supplies +12V battery power.
  • ECU Pin 88 is connected to Pins 17 and 20 of the 20-pin round connector, which are part of the K-Line communication.
  • ECU Pin 28 is connected to Pin 19 of the 20-pin round connector, which serves as ground.
  • Crucially, ECU Pin 60 is connected to Pin 18 of the 20-pin round connector, designated as the Programming Line.

For the ECU to be successfully reprogrammed, Pin 18 of the 20-pin connector must receive a constant +12V supply. Sometimes, the flashing tool's internal wiring may not connect anything to Pin 18, leading to the flashing failure. The effective solution to this issue is to bridge Pin 14 (constant +12V) and Pin 18 (programming line) directly within the flasher's connector or adapter. This ensures the programming line receives the necessary voltage for a successful write operation.

Common Questions Regarding Siemens MS41 ECU Tuning

What is an EPROM and why is it important for ECU tuning?

An EPROM, or Erasable Programmable Read-Only Memory, is a type of memory chip that stores data persistently, even without power. In an ECU, the EPROM holds the vehicle's engine control software and calibration maps. It's crucial for tuning because modifying the data on this chip allows tuners to alter engine parameters like fuel delivery, ignition timing, and rev limits, thereby changing the engine's behaviour and performance characteristics.

Can I tune my Siemens MS41 ECU myself without professional help?

While it is technically possible to tune your MS41 ECU yourself, it carries significant risks. It requires a deep understanding of engine mechanics, ECU software, and the specific functions of each map. Improper adjustments can lead to severe engine damage, reduced performance, or increased fuel consumption. For beginners, it's highly recommended to seek guidance from experienced tuners or to start with less critical adjustments and thorough research.

What's the difference between a 24KB and 256KB ECU file when tuning?

The 24KB file is a partial dump of the EPROM's data, typically obtained via OBD-II diagnostic tools. It contains the most commonly adjusted maps. The 256KB file, obtained by desoldering and directly reading the EPROM, is a complete dump of all data. The full 256KB file offers comprehensive access to all parameters and maps, allowing for more in-depth and precise tuning, whereas the 24KB file limits the scope of modifications.

What risks are involved in tuning an MS41 ECU?

The risks include engine damage (e.g., piston damage from incorrect ignition timing or lean mixtures), reduced engine longevity, increased emissions, and potential voiding of vehicle warranties. Incorrectly flashed ECUs can also render the vehicle inoperable. It's essential to understand that all tuning activities carry inherent risks and should be approached with caution and appropriate knowledge.

What type of fuel should I use after tuning my ECU?

The required fuel type depends entirely on the tuning adjustments made. If spark advance maps are significantly altered to extract more power, especially with increased boost (if applicable) or compression, premium high-octane fuel (e.g., 98 RON in the UK) is usually mandatory to prevent engine knock and damage. If only minor adjustments for efficiency are made, the original fuel type might still be suitable. Always consult your tuner or ensure you understand the fuel requirements of your new map.

Map Location Summary

For quick reference, here's a table summarising the typical locations of key maps within both 24KB and 256KB Siemens MS41 ECU files:

Map Name24KB File Location256KB File Location
Rev Limiter001C9141C9
Injection at Part Throttle009F8149F8
Injection at Wide Open Throttle00D4E14D4E
Spark Advance at Part Throttle00D6214D62
Spark Advance at Wide Open Throttle00E2614E26
Lambda Map011C8N/A (Typically found in 24KB dumps)

In conclusion, working with the Siemens MS41 ECU and its 28F200 EPROM offers a fascinating avenue for automotive enthusiasts to enhance their BMW's performance. While the process of extracting, modifying, and programming the EPROM data can be intricate, armed with the correct tools and a thorough understanding of the key engine maps, you can unlock significant potential. Always remember that any modifications to your ECU are undertaken at your own risk, and careful, informed decisions are paramount to ensuring the longevity and reliability of your vehicle. Happy tuning!

If you want to read more articles similar to Unlocking Your BMW's MS41 ECU: EPROM & Tuning, you can visit the Automotive category.

Go up