Subject: Free EMS EFI
From: rotaryeng
Date: 7/29/2013, 5:48 AM
To: AAA-rotaryeng


http://freeems.org/

They have a very good introduction to EFI.


============================================================================
The Basics Of The EMS World

FreeEMS is an Engine Management System (EMS) with Free (as in freedom
and price) source code and hardware designs. Typically you need an EMS
when you modify a car. The reasons for using an EMS like FreeEMS include
some of the following:

Fuel injection and/or electronic ignition on an old
carburettor/distributor/points engine
Transplant a newer engine into an older car without some things the
original ECU needs
Any power adders, such as turbo, supercharger, nitrous, camshafts, ITBs,
extractors, etc.
Education and learning about EFI and electronic ignition systems on engines
Data-logging and fine tuning
Controlling more solenoids than an OEM (GM/Ford/Toyota/Mazda/etc) ECU can
In the case of FreeEMS, running custom control strategies


If you fall into some (or all!) of these categories, or for any other
reason, carry on reading below, you could be in luck! :-)

What You Need To Know

What type of car/boat/plane/lawnmower/snowblower/etc you have
What type of engine it has (manufacturer, model, cylinder count,
displacement, manifold style, etc)
What type of sensors it has (RPM/Position, temperature, pressure, etc)
What type of control hardware it has (solenoids, coils, injectors, etc)
What power adders it has (camshafts, turbo, supercharger, nitrous oxide,
etc)


What It Means To FreeEMS

The distributor(s) or cam angle sensor(s) or crank angle sensor(s) or
some combination of the above require a piece of software called a
"decoder" to be read and made sense of in the FreeEMS internal software
(firmware from here on). Inside these devices are metal disks, wheels,
cogs, pulleys, etc with physical patterns on them such as this one:

Image

These physical patterns get read by Variable Reluctance, Hall or Optical
sensors and produce a matching electrical signal that is conditioned by
the circuits in a FreeEMS box and then read by the decoder software.

A list of the status of different decoders can be found here:
https://github.com/fredcooke/freeems-va ... /STATUS.md

This is a temporary solution, and a web page will be put up fairly soon
to display this information in a more convenient and clear manner.

Once you're sure that you understand what that means and have determined
whether your RPM/Position sensors are currently supported or not you can
tackle the appropriate next step.

Your RPM/Position Sensor(s) Is/Are Supported

If not, skip this section! If so, fantastic, skip the next section!!! :-)

Your RPM/Position Sensor(s) Is/Are NOT Supported YET

Don't be sad! :-( You have some options! :-) In order of desirability:

Provide information and testing to assist a team member to develop a
decoder for your setup (preferred)
Develop a decoder for your sensor setup yourself (If you have the
skills, please do!)
Retro fit a sensor style that is supported (This shouldn't be necessary,
but isn't difficult)
Use some other system that will work for you (If you need a solution
now, do this, carefully)
Wait quietly for one of the team to develop a decoder for your setup
(You could grow old in the process)


Note, if we don't know that you're interested, we'll likely put
development effort towards features to help someone else. So tell us! :-)

Can FreeEMS Do What You Need

How many coils do you have?
What type are they?
Can they be driven in pairs?
How many injectors do you have?
What type/size are they?
What essential accessories do you have?
How do they work?


The answers to the coil/injector questions can probably help you find
out if FreeEMS can meet your needs here: viewtopic.php?f=54&t=1084

As for the accessories, there is very little accessory specific code
right now, however it should be straight forward to develop it as and
when required. IE, just ask! :-)

When you're sure that you both want to run and can run FreeEMS on your
setup, read this thread: viewtopic.php?f=54&t=1166

Thanks for reading, I hope it was helpful! :-)

Fred.

===========================================================

I intend to do the same thing except using off the shelf small form
factor mother boards. They are cheap, hi tech and highly integrated.
I will also use DOS and QB. Before you turn up you nose at that let me
explain why. It is solid and highly debugged. It is powerful enough to
do the job.

Namely display engine parameters on a note book or net book screen in real time. Notebook and net book screens are very large in terms of number of pixels and cheap.They can display dozens of engine parameter in a relative small space.

20 some odd years ago I wrote a fully functional aviation moving map
program in Quick Basic that ran on DOS driven by a GPS using an RS232
serial interface.Unfortunately RS232 serial interfaces have disappeared
off note book and net book computers. It updated in only one second.

DOS is a close as anyone is going to get for a real time OS. For for my
use it is quite adequate.Running on a modern computer it is lightening
fast bordering on instantaneous.

Everything including a full blown EFI/EFIS can be written in hours using
simple to learn Quick BASIC.Quick BASIC is a compiled language and the
programs are small and lightening fast.QB/DOS can handle real time hard
ware interrupts which were used in my moving map program.The code is
already written to read a USB GPS.

To do an EFI system it is necessary to add hardware of course. I have that designed and tested. An amplifier must be added to control the
injectors.That could is as little as an FET power transistor. The
modern coils can be controlled with a computer level bit.


http://www.rotaryeng.net/web-site-ver.pdf

I'll be revising this as I am waiting for parts on the turbo compound
system. I'll publish all source code.

Paul Lamar

--The Rotary Engine News Letter. Powered by Linux.
ACRE NL web site. http://www.rotaryeng.net
You Tube http://tinyurl.com/beqqxas
Copyright 1998-2013 All world wide rights reserved.