RFI – A racing fuel injection and sparking ignition controller for mono-cylinder engines

Hello,

In this post I will show you some inside information of one of the ScTec/D1-pro most advanced projects: the RFI (Racing Fuel Injection).

The RFI was designed to allow complete control over mono cylinder combustion engines. The project started early 2009, with an initial design based on the Freescale/NXP MC9S08QE128. That first design was used to validade some project concepts and did not include a sparking ignition controller, only a fuel injector controller, a fuel pump controller and sensing inputs (voltage, temperature (air and engine), mixture (lambda) and throttle position (TPS) and crank position). The Manifold Absolute Pressure (MAP) sensor was not included on that design either. The board included a DB25 connector for all engine wiring, a DB9 connector for serial communication with a host computer and three status LEDs.

The first tests were made on a modified Honda CRF230 motorcycle with a special throttle body we built to replace the original carburetor. We also used another D1-pro product: the PSI (Programmable Sparking Ignition) to replace the original CDI. At first the electrical power was sourced exclusively by a 12V battery and later a higher-power charging magnet was added to the engine.

The first design of our fuel injection module
The first design of our fuel injection module

After the initial development and proof of concept, the project had a major turn as Honda released its first low-end fuel-injected motorcycle, the Honda CG150. It was later followed by other models such as the CB250 Twister, XRE300 and also Yamaha’s Fazer and Lander. All these new models made us rethink about the RFI business model: should we continue as a separate stand-alone module or should we focus on making our product compatible with those new models? We opted out for the second choice.

Along with that decision, we needed to choose a connector that would be compatible with either Honda or Yamaha models. We started by buying two brand new motorcycles: a Honda CG150 mix (a gasoline/ethanol fuel injected engine motorcycle) and a Yamaha Lander 250. We realized (with no surprise) that each manufacturer used a different connector for its ECU. After a long research we couldn’t find any of them on any supplier. We thought about making a new one based on one of them, but that would be very expensive. So we choose to use a completely different connector and after a long research we choose a Sicma 24 pin lockable connector.

Aside of the connector crusade, we also started developing in-house tools to help us on designing a complete fuel injection module compatible with both systems (Honda and Yamaha). Each manufacturer used a different crank position (both part of the flywheel), so we bought two flywheels (one from each manufacturer) and built an engine simulator which used an electric motor to turn the flywheel and a sensor mounted the same way as inside the engine detected the pulses and fed our module. The equipment also had a throttle body with all sensors and actuators mounted (fuel injector, TPS, air temperature sensor and a MAP). That simulator allowed us to develop most part of the system without the need for testing on a real engine.

We also bought a chassis dynamometer which was used to help tuning the system, that equipment was also used for helping tuning our sparking ignition product line.

After several meeting, the product was specified with the following features: capable of running Honda and Yamaha engines (or any other similar system) with a single fuel injector, single direct current sparking ignition driver, a stepper and solenoid idle actuator driver, air and engine temperature inputs (compatible with several sensors), TPS input, crank position input, MAP input, lambda input, USB and serial communication, diagnostics system with an external light, a security system to protect data from unauthorized access and an integrated data logger capable or recording several minutes of engine operation.

With all those parameters in mind, we choose the MCF51JM128VLD as the CPU for our module. This is a  44-pin 50.33MHz 32-bit Coldfire v1 device with 128KB of Flash memory, 16KB of RAM, a USB 2.0 interface a 12-bit ADC and two 16-bit timers with a total of 8 channels. We also choose that device because of its backward compatibility with the HCS08 line, which we successfully used on our sparking ignition line and had a lot of software written and proven.

After some 6 months, the new design was completed. The 4-layer PCB is shown below.

RFI final 4-layer board
RFI final 4-layer board

A couple months of hard coding, both on the MCU side and on PC side (for the configuration software) and the RFI was out. The following picture shows the assembled board.

RFI assembled board
RFI assembled board

We opted for using a DB9 connector for three uses: serial communication, USB communication and in-field programming (because the whole board is packed into an epoxy resin for resale).

The next pictures show our PC software (designed by our former employee Edmilson Teixeira).

The ignition timing view
The ignition timing view
Sensors setup page
Sensors setup page
Password locking/unlocking
Password locking/unlocking
Our beautiful real-time monitor
Our beautiful real-time monitor
Diagnostics scree
Diagnostics screen

There are some youtube videos showing the RFI in action (portuguese only):

Leave a Reply