Roadmap to BETA (Progress checklist + Useful info)

Defining BETA Criteria (2020)

What to expect from NanoEFI at BETA.

:white_check_mark: = Done, Ready
:fire: = Actively in progress
:clock10: = Planned in later software update.

Engine Modes

  • Single Cylinder :white_check_mark:
  • Dual Cylinder V-Twin, 90° :white_check_mark:
  • Dual Cylinder Straight Twin, 360° :fire:

Supported Trigger Sources (Crankshaft RPM / Position)

  • Single-pulse Inductive Trigger :white_check_mark:
  • Sensorless Raw Magneto Killwire (Single; 90° Twin) :white_check_mark:
  • N-2 Pattern :fire:

Injection Capability

  • Single-cylinder Timed/720° Injection Scheduling (with positive phase sync) :white_check_mark:
  • Fallback Single-cylinder Split/360° Injection Scheduling (if no means of phasing is available)
  • Dual-cylinder Sequential Port Injection Scheduling
  • Dual-cylinder TBI (Shared Injector) Scheduling :white_check_mark:
  • External Wideband O2 Mode :fire:
  • Narrowband O2 Mode :fire:
  • Speed-density Mode :fire:
  • Basic Self-learning / Autotune :fire:

Ignition Capability

  • Timed Ignition, 720° adjustment (Single Cylinder)
  • Wasted spark, 360° adjustment (Dual Cylinder)
  • External CDI Driver :white_check_mark:

System Precision and Accuracy

  • RPM Resolution: 1RPM :white_check_mark:
  • RPM Accuracy: ±1RPM typical, ≤10RPM in specific conditions :white_check_mark:
  • Injection pulse resolution: TBD
  • Table value resolution: 0.4% (8-bit, 256 increments) :white_check_mark:

Analog Input

  • 8 Analog Sensor Channels (SN1 to SN8, all 10-bit resolution) :white_check_mark:
  • SN4 and SN6 Channels have 1K pull-up resistors (for 2-wire temperature sensors) :white_check_mark:
    (Alternatively, 4 and 6 can be used for TWI / I2C external serial communication at a later time)
  • Over and under voltage protection :white_check_mark:
  • ESD Protection
  • Battery Voltmeter (Dedicated channel “SN9”, Reads 0v to 22v max) :white_check_mark:
  • SN5 can optionally be used to drive an external tachometer :white_check_mark:

Sensor Support

  • Direct Analog (0v - 5v): MAP, TPS :white_check_mark:
  • Ratiometric (0.5v to 4.5v): Fuel or Oil pressure transducers :white_check_mark:
  • NTC Thermisters (1K pullups/dividers on SN4 and SN6): CLT, IAT :white_check_mark:
  • Oxygen: One-wire Direct Narrowband O2, External Wideband O2 Controller :white_check_mark:
  • Switches: Manual toggles (polled, not interrupt-driven) :white_check_mark:

HICO/Injector Drivers (High Current Output)

  • HICO1 and HICO2: Saturation mode :white_check_mark:
  • HICO1 Only: Peak-and-hold mode
  • Flyback protected :white_check_mark:
  • Opto-isolated :white_check_mark:
  • Relay, solenoid, fan compatible (Max 6a per channel) :white_check_mark:

Quick guide to common inductive loads (and testing of each):

  • High-Z Injectors (11 to 16 ohms): 1a to 1.5a :white_check_mark:
  • Low-Z Injectors (down to 3 ohms): ~5a peak :white_check_mark:
  • Heated O2 sensors: 1a - 3a :white_check_mark:
  • Standard 43psi fuel pumps: 5a :white_check_mark:
  • Relays: 0.2a each (can be run in parallel) :white_check_mark:

Other Features

  • 4-stroke phase detection
  • Returnless fuel pressure regulation (PWM-based)
  • Reverse polarity protection :white_check_mark:


  • Secure SSL/TLS v1.2 :white_check_mark:
  • Secure Websockets :white_check_mark:
  • Wireless Cloud Tuning (Requires an internet connection) :white_check_mark:
  • Hotspot Mobile Tuning :clock10:
  • Data logging :clock10:
  • Engine profiles and tunes stored in the cloud :clock10:
  • Real-time Streaming Data View :white_check_mark:
  • Gauges and Graphs :white_check_mark:
  • Connect from remote location :white_check_mark:
  • Multiple ECU devices registered per account :white_check_mark:
  • Instant switching between devices/machines in live view :white_check_mark:

Physical Construction

  • Sealed ECU Enclosure :white_check_mark:
  • American-made automotive cross-link wire (meeting SAE J1128 standards) :white_check_mark:
  • Build LitePlacer machine for PCB assembly
  • ECU assembly process + potting and related fixtures
  • 28mm / 34mm Throttle Body :white_check_mark:


  • Boxing
  • In-box Instructions

Useful Information

Trigger Input
NanoEFI’s trigger input channel is designed for sensors/signals in the +5v to +12v range. The ECU can accept signals higher than ±12v peak voltage, by use of an external resistor-diode pair (ask me about this if you think you need it). Up to ±250v has been successfully live tested with the 10 cent resistor/diode pair.

The signal should ideally be square. However, noisy signals directly from inductive sources (like your magneto’s kill wire) are acceptable due to some pretty neat signal filtering in nEFI’s software. Even with multiple rising edges per pulse, nEFI can accurately filter out the false edges and sync properly. This was a bit out of the way to develop, but pays off by keeping installation simple. Especially on smaller mass-produced engines with electrical systems which often aren’t made the best, or with any kind of electrical fidelity in mind.

So even if signals are a bit sloppy from the best trigger source on your engine, in many cases you won’t have to hassle with drilling or hacking in a dedicated crankshaft sensor/ring pair. Plus, you won’t need to pay extra for a sensor either, or have it fail on you. Cool, huh?

Signals which peak below +4v will not reliably work. Any negative component of the signal is blocked and not useful.

Using the injector drivers for other purposes
The two injector circuits are capable of driving devices other than injectors. This may be useful to you if only a single injector is needed for your project. In that case, the other driver can be used for all sorts of other inductive loads. Since they can serve purposes other than just running injectors, these two channels have been given a more generic label: “HICO”, short for High Current Output.

Each injector channel (two total) are designed to drive up to 6a @ 12v (72w) continuously. As of writing this, I still have more testing to do to confirm the max rating.

NanoEFI has a single ignition channel. It cannot drive a coil directly, instead it is intended to trigger/manipulate an external CDI. In many cases, the stock CDI from the machine is suitable.

Analog Input
By default, analog channels are read one-at-a-time on a set schedule, every 2.5ms, in round-robin fashion. If all 8 channels are used (default behavior), the read rate for any individual channel would be 50hz (50 reads per second). This is fast enough for most uses. Conversely, if only one channel is used, the read rate would be 400 per second. This may or may not be important to your specific application.

Scheduling of sensor reads at specific crankshaft angles per combustion cycle will be supported. I’ll follow up regarding the characteristics (or any limitations) of scheduled reads as the feature is implemented.

The read rate of sensors has no effect on live view in Airtune, even at 50hz it is much faster than live view. The refresh rate of data streamed in live view is determined by your ping/latency to the NanoEFI server, which is typically between 50ms to 100ms on a good connection (10 to 20 times per second).


Great to see this overview of progress!
I see that it is almost done and ready for the alpha-test phase on an engine.

I got a few questions:

  • Is it possible to set some kind of speed limiter with the NanoEFI (RPM limiter, late ignition)? this because of the law in my country.
  • Will it work on a Kymco Agility 50 Euro3 (engine model KG10) out of the box or does it need some modifictions?
  • Does the auto-tune uses the CPU of the NanoEFI? If yes, does it effects the performance? Or is it possible to use the connected device to do the tuning?
  • I would split the ‘enigne profiles and tunes’ to local storage first ,and later (or optional) to the cloud storage (G-drive, onedrive etc.).
  • Are all the staded sensors included in the kit?
  • Are the software/firmware updates for the NanoEFI OTA of manualy by USB?(E.G. a new version of the software is out and it needs to flashed by OTA or plugging a USB in a PC)
  • (OFFTOPIC!) are there any plans to upgrade it with the hardware of the teeny 4.0(ARM Cortex-M7 processor @ 600 MHz, with a NXP iMXRT1062 chip)?
    better CPU means more and faster processing of things. But first this project needs to get out of the alpha-stage.
  • What about a knocksensor? Do you think it is nessesary to include them on a GY6 engine?

These are all the questions that I came up with.

Thank you for doing this project

1 Like

Welcome to the new forum.
Travis has been busy over the last couple of years, and it seems especially so in the last few months as the nano efi project nears beta testing.
We are all looking forward to it, suggestions like a speed limiter maybe an easy add-on, I suggested a volt meter for the app, done.
Anyway, enjoy the forum.

1 Like

Thank you for your reply,
I know that it is very hard to build something from scratch.
The questions I asked where just from curiostity.
Maybe something to think about in the far or near future ¯_(ツ)_/¯

Hey @It.s-A-Lex, welcome! Thanks for asking, and your patience :sweat_smile: … Just a quick heads up that I’m dropping a somewhat lengthy Q&A update over in the Regular Updates section today using your questions :boom:

I’m interested in doing weekly Q&A updates, so y’all feel free to keep Q’s coming. Anything you’re curious about related to the project. It’s a good way to get smaller chunks of information out that don’t necessarily fit into their own updates.


2 posts were split to a new topic: I would like to get involved for a beta unit

Hi, I submitted a handful of words in General Topic but I would like to be considered for a Beta position. If you read my blurb in General Topics you will get a feel for what I could contribute.

I am a retired degree mechanical engineer with 40+ years in underground coal mining - That should start some of the Green people jumping up and down!!! Seriously in Australia there are stringent rules relating to what happens U/G and this makes for a very controlled environment to carry out what would be normal engineering practices on the surface.