Building A Homebrew Diesel ECU


Over the years automobile engines have become increasingly complex, and with this added complexity comes an increased reliance on intricate computer systems to run them. These control systems are typically the fruit of many hours of research and development, carefully protected by the auto makers who create them. Instead of relying on a closed system to power his car, a Finnish hacker that goes by the name [synkooppi] has decided to do away with his diesel engine’s ECU altogether and build one of his own with little more than an Arduino.

As you can see from his web site, [synkooppi] has created his DIY ECU using an Arduino Mega, which is capable of controlling diesel engines that employ a Bosch VP37 or other inline diesel pump. So far he has all of the basic workings in place, which allow him to run and control an Audi diesel motor.

While many details about his homebrew ECU are hard to come by, he does have a series of development videos posted on YouTube which should help satiate inquisitive minds. For those of you with a spare diesel motor laying around, [synkooppi] has made the first release of his code available to try out.

Stick around to see a video of the ECU in action.

[Thanks, perhof]


18 thoughts on “Building A Homebrew Diesel ECU

  1. The Finns do amazing stuff with diesels, particularly Mercedes. Why this is so popular in Finland?

    I’d like to add a little bit more power to my OM606, but Finnish aftermarket parts are pretty expensive.

    1. Common rail and pumpe duese are harder to do (although I’m not who did this project, and I may be glossing over some things, not having actually done any of this before).

      The VP37 pump is a rather primitive device, dating back to 1960. It uses cam plates, plungers, and valves to control the flow of fuel to each injector. The injectors for a VP37 system are also primitive, using spring pressure (two-stages since the mid 1980s, but still) to hold back the flow of fuel until a certain pressure is reached, at which point they pop open.

      The VM, VA, VE, and VP3x family has a fuel quantity rack, that controls the duration of injection, and a timing device (the earlier ones might not have this), that can advance or retard injection (I believe in a range of 18 degrees).

      On the VM, VA, and VE pumps, springs and weights control the fuel rack, in addition to a throttle cable. This effectively sets the rev limit and the idle. This was effective, although it provided poor emissions control, and couldn’t add fuel in response to turbo boost. So, the solution was to add a vacuum or pressure actuated device to either add fuel under boost, or on non-turbo engines, remove fuel in lower atmospheric pressure.

      The VP34 and VP37 instead have a computer driving the fuel rack and timing device, allowing much more control over fueling. But, it’s still indirect control – the ECU looks at how much air is going in, it looks at how the engine is rotating, and it injects. Then, a needle lift sensor in the injector tells the computer when start of injection occurred, so it knows how to twiddle the timing device. And, on some of the newer VP34 and VP37 engines, the ECU can at low RPM detect each combustion event through the crankshaft position sensor, and quickly adjust the quantity adjuster to keep the engine running smoothly.

      This does, however, mean that the pump is still doing quite a lot for you – you’re setting quantity and timing, basically.

      Common rail and pumpe duese use a solenoid or piezo injector. Computer wants fuel, computer energizes the injector, computer gets fuel. Direct control. You control the injection events directly.

      The difference between CR and PD is that CR always has pressure, whereas PD gets pressure generation off of the camshaft, so it can only inject in a certain window. However, that’s usually only relevant for post-injection, which is an emissions-related feature.

      1. I know the main differences between common rail and older diesel engine designs. In addition to controlling the injected amounts you would also have to regulate the rail pressure etc amongst other things. Post injection is also useful for making combustion quieter. IT would be cool to make a universal control system for common rails though :)

      2. Alexander: I was partially responding that verbosely to target the HaD audience, that may not be fully familiar with the technologies in question.

        There are already aftermarket ECUs that are set up for either solenoid or piezo CR, for racing applications, so I wouldn’t be surprised if it’s possible to make a generic one for most solenoid and one for most piezo applications. This would also work for PD, too.

        In any case, it’s pilot injection, not post-injection, that you want to make things quieter. I’d think post-injection would actually make things louder if there aren’t any exhaust traps to regenerate, the only purpose for it that I’m aware of.

  2. I think I would have started with a MegaSquirt 3 (MC9S12XEP100 processor) than start from scratch with an Ardunio Mega. At the very least I’d have waited for the Ardunio Due so I’d have a lot more to play with.

  3. My old Audi with the 1.6L VW diesel engine (reused in a lot of new cars) was purely mechanical. The only remotely electrical thing was a solenoid that kept the fuel line open. Upon removing the contact the engine was deprived of fuel and stopped naturally.
    Of course those things failed sometimes and you had to stop the car by putting it into gear and braking; or parking really close to a wall if the brakes were too weak.
    Probably one of the few engines able to run after a nuclear disaster. Add that to the fact that it is able to run on almost any kind of oil and provides decent horsepower and you have part of your mad max survival kit.

  4. I want to install commonrail system and a turbo on a Perkins diesel 50HP. Who does deliver a whole systen to change from CAV pump system to CDI with turbo.

  5. i have always wondered if it was possible to bypass the main ecu as would like to put either the 1.9 or 2.5 v6 audi diesel engine on my boat my mechanical knowledge is pretty good but my knowledge on ecu and management systems is very limited and could do with an ecu that i can attach to the engine without the need for the one that comes in the car any help would be much appreciated

    many thanks

    1. If you use a mechanical pump from an AAZ, these are just mechanical, as like on the older 1.6. There is no ECU on the engine and fuel amount is decided from throttle cable, boost pressure and so on.

      They run great and are stupidly simple to work on

  6. is this possible with mwm 229 ( 10 series ) ? i’m looking someting to these engine but i have dificult fo find something good and with a good price. i love these project. congratulations

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.