Tag Archives: ECU

Arduino Vidor CAN bus support

Arduino have just announced a bunch of new boards, including one with an on board FPGA chip (plus a SAMD21 Cortex-M0+, plus an ESP32 WiFi and Bluetooth Module). A Field Programmable Gate Array (FPGA) chip is possibly the most impressive piece of electronics going. They are essentially a way of creating entirely custom digital electronic circuits (resistors and transistors) all inside a tiny chip, and completely reprogrammable – genius!

See more about the Arduino Vidor CAN bus support after the break.

Continue reading

Arduino ECU By Brenamanf

I was sent a link to this website by the author, who appears to have created an Arduino ECU for spark control. Although the details are a little sparse, It appears that he has developed a lot of the required hardware himself. It looks like the main controller is an Arduino Nano and utilises Manifold Absolute Pressure (MAP) and a knock sensor to determine the ignition timing on a Peugeot 205 Tu9 45Ch. It would appear that the ECU has been developed over a number of revisions and has been in operation for over a year.

http://brenamanf.wordpress.com/page/2/

Video Explanation

I’ve made a video of the whole system explaining all of the sensors, actuators and interfaces, and some of the more advanced indicating equipment that I’m using.

A more detailed explanation of the closed loop ignition timing control is given here: http://scottsnowden.co.uk/?p=341

Closed Loop Ignition Timing Control

I have been busy over the last few weeks with various things, but have now completed most of the practical work on my project and am now at the stage of writing up the report/dissertation. I have successfully managed to achieve closed loop ignition timing control by using the Stellaris Launchpad development board to directly interface with the optical encoder on the engine and the pressure sensor charge amplifier (this replaces the AVL IndiSet 620 in my system).

ECU in black on left, angle of peak pressure and optical encoder interface on right. Connected together via serial

Continue reading

Light Bulb Load

When testing engines, some method to ‘load’ it is required. If the engine crank shaft is not connected to anything, then the engine will just be able to run up to maximum speed very quickly, but will not be producing much torque. If you want to begin testing how the engine performs if you actually want to do some work with it, then you need a way of making the engine produce torque and power.

Light Bulb Load with switches (upside down)

Continue reading

Arduino Controlled Electronic Ignition

Success! I have started and run the engine on my own electronic ignition. The problem was in the end quite simple, it turns out that the missing tooth wheel on the crank was aligned differently to what I expected. I thought that the missing tooth occurred 240 degrees after TDC, but in fact it appears to be aligned almost exactly at TDC. This meant that my spark was happening around Bottom Dead Centre, which is no use at all!

Continue reading

Updates and Ignition problems

From my couple of brief tests, I’ve identified a few problems which are preventing the engine from starting up and running for more than a few seconds.

  • The ignition timing at very low speeds < 500 RPM is very erratic, and not at all on time.
  • Under heavy acceleration the ignition timing is erratic, for example when pull starting the engine
  • There are some occasional misfires
  • The ignition timing is generally not massively stable – sometimes varying as much as 10 degrees(!) Continue reading