A custom piggyback module was developed to extend the injector closing time on an EFI engine, ensuring compatibility with the increased cylinder capacity following the installation of a big bore kit.
// Percentage of additional fuel injection at low RPM
const int LOW_RPM_PERCENTAGE_LEVEL = 1;
// Percentage of additional fuel injection at middle RPM
const int MIDDLE_RPM_PERCENTAGE_LEVEL = 15;
// Percentage of additional fuel injection at high RPM
const int HIGH_RPM_PERCENTAGE_LEVEL = 20;This is a DIY piggyback solution for single-injector EFI engines that operate with the stock ECU but with an increase engine displacement/cylinder.
Open source project: https://github.com/popradu10/pop-radu-diy-injector-ecu-piggyback
Web page: https://diy-efi-piggyback.infinityfreeapp.com
- Taking the injector input from the ECU using a EV1 male and female connector and a PC817 Optocoupler
- Monitoring the opening and closing of the injector using Arduino Micro Pro board
- Delay opening the injector, the delay is computed proportional using Arduino Micro Pro and the arduino code from here. using the TimerOne library v1.1 for counting microseconds.
- The injector is then closed and open using IRF520 Mosfet Driver Module that can react very quickly to changes.
- We can set the delay percentage in the arduino code.
- Increase engine capacity. For e.g. increase 139fmb engine from 50cc to 72cc.
- Upgrade your exhaust. For e.g. remove the catalytic converter from the exhaust.
- Unlocked your ECU engine controller. For e.g. get a ECU without rev limitation for Barton Volcano Euro 5.
- Upgrade front pinion teeth count.
Based on circuit file circuit_oct_2025.cddx using Circuit Diagram online editor.
Diagram file diy-injector-ecu-piggyback.drawio.xml using Draw IO online editor.
Based on the data collected while riding.
Using a PC817 2-Channel Optocoupler Isolation Board you are able to capture the 12v that comes to the injector
Details:
- Driving Port Signal Voltage: 3.6-24V
- Output Port Voltage Port: 3.6-30V
The Arduino Micro is a microcontroller board based on the ATmega32U4 microcontroller. It is compact and designed for embedded projects where small size is critical.
Specifications:
- Clock Speed: 16 MHz
- RAM: 2.5 KB
- Flash Memory: 32 KB
- Operating Voltage: 5V
The IRF520 MOSFET Driver Module is a simple and widely used electronic component for switching high-power loads using a microcontroller or other low-voltage control systems. This module utilizes the IRF520 N-channel MOSFET, which can be controlled via a low-voltage signal to switch higher voltage and current loads.
Specifications:
- Input Voltage (V): the module is designed to accept control signals from 3.3V or 5V logic, making it compatible with a wide range of microcontrollers like Arduino, Raspberry Pi, and other development boards.
- Output Voltage(V): typically up to 24V DC
The IRF520 MOSFET Driver Module is a useful tool for controlling high-power DC loads using a simple, low-power control signal. However, for more efficient or advanced applications, especially with logic-level microcontrollers, consider using MOSFETs better suited for low-voltage gate control.
A flyback diode is crucial when you're using a MOSFET (like the IRF520) to control inductive loads, such as an injector.
This diode protects the MOSFET from the high voltage spikes generated by the collapsing magnetic field when the inductive load is suddenly switched off.
Without a flyback diode:
With the flyback diode:
Type of Diode:
- Schottky diodes are preferred for flyback protection because they have a fast switching speed and a low forward voltage drop (usually between 0.2V and 0.4V).
- Standard rectifier diodes (e.g., 1N4007) can also be used but are slower and have a higher forward voltage drop (~0.7V). They are, however, acceptable for slower, low-frequency switching.
Increasing the cylinder capacity of a 139FMB engine from its stock displacement (typically 50cc) to 72cc involves using a big bore kit.
Components of a Big Bore Kit:
- Cylinder: A larger diameter cylinder to accommodate the increased bore.
- Piston: A piston that matches the new cylinder bore size.
- Piston Rings: Corresponding rings for the new piston.
- Gaskets: New head and base gaskets to ensure a proper seal.
Upgrading your exhaust system to one without a catalytic converter can have several implications, in terms of performance.
Performance Benefits:
- Increased Power. Removing the catalytic converter reduces back pressure, allowing exhaust gases to flow more freely. This can lead to a noticeable increase in horsepower and torque.
- Improved Throttle Response. The engine can expel exhaust gases more efficiently, improving throttle response and acceleration.
- Enhanced Sound. The exhaust note is typically louder and more aggressive without a catalytic converter.
Unlocking an ECU (Engine Control Unit) typically refers to modifying or reprogramming it to remove restrictions placed by the manufacturer.
Ensure your vehicle’s ECU can be unlocked and that there are compatible tuning solutions available. Regularly monitor engine parameters to prevent overheating, detonation, or other issues.
Upgrading the front sprocket (also known as the front pin or front chainring) from a 12-tooth (12T) to a 14-tooth (14T) on a motorcycle will affect several aspects of the bike's performance:
- Top Speed Increase: A larger front sprocket will result in a higher top speed. This is because each rotation of the front sprocket will move the chain further, resulting in more wheel rotations per engine rotation.
- Acceleration Decrease: Conversely, with a larger front sprocket, the motorcycle will have a slower acceleration. The engine will need to work harder to turn the wheel, reducing the bike's ability to accelerate quickly.
- Engine RPM: At any given speed, the engine RPM will be lower with a larger front sprocket. This can reduce engine wear and improve fuel efficiency.
- Torque: The torque at the rear wheel will decrease, as the mechanical advantage is reduced with a larger front sprocket.
Set up the Arduino IDE with the TimerOne library version 1.1.1:
You should have the Arduino IDE set up with the TimerOne library version 1.1.1 successfully. Writing the code to your Arduino Micro Pro Board parameters:
- Port: Select the COM port to which your Arduino Micro Pro Board is connected.























