E.M. based on a Parallax Propeller micro controller

Free and Open Source Engine Management discussions excluding more specific things on this board.
thebigmacd
LQFP112 - Up with the play
Posts: 205
Joined: Thu Apr 10, 2008 5:51 pm

Re: E.M. based on a Parallax Propeller micro controller

Post by thebigmacd »

A couple of years ago I has aspirations of creating a propeller-based ECU

I abandoned it long ago, but I have left everything online. Warning: there are lots of broken links/redundant pages.
http://spindrive.sourceforge.net/

This sub-page has some good tables on it, but that's as far as I got
http://spindrive.sourceforge.net/arch.php
Keith MacDonald
Control Engineering (Systems) Technologist
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: E.M. based on a Parallax Propeller micro controller

Post by Fred »

Fred wrote:There is a guy on here who was planning a propeller based EFI system, but dropped it when he found another existing one out there.
There he is! :-)

I knew you'd see this and show up. Care to link that other one here too? I can't recall where to find it.

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
thebigmacd
LQFP112 - Up with the play
Posts: 205
Joined: Thu Apr 10, 2008 5:51 pm

Re: E.M. based on a Parallax Propeller micro controller

Post by thebigmacd »

Actually my reason for abandoning it had nothing to do with the presence of another project, just the fact that I gave up :D

This is the functioning EFI system you allude to...
http://forums.parallax.com/showthread.p ... management
Keith MacDonald
Control Engineering (Systems) Technologist
Peter
LQFP144 - On Top Of The Game
Posts: 268
Joined: Tue Dec 27, 2011 5:37 am

Re: E.M. based on a Parallax Propeller micro controller

Post by Peter »

Sorry I've been offline for so long, but I was trying to visit as many Breweries as possible while I was in Vermont, and I don't have a laptop that works without overheating regularly. My new favorite beers; Shed Mountain Ale which is brewed by Otter Creek Brewing, and Belgo Sutra from Magic Hat Brewing. Anybody in the Burlington, VT area should try them out. Now that I'm done advertising (which might be against the rules, I didn't read them), I suppose I could talk about cars. Github is setup properly now? Maybe. I don't really understand what the commands I'm typing into the terminal window do yet, but in time I might.

I've seen that Volvo project before, but he wants to sell the setup? I think. At any rate I've started doing it myself so that's the plan right now.

I hadn't seen bigmac's website, but it looks like his plan of attack is far to high structured for my small brain. My theory is to figure out what I need as I need it, and then try to find the simplest solution possible. Then if the K.I.S.S. method doesn't work I'll work on a more complicated solution. I was playing around with the idea of using master and slave processors, but I didn't like the time it took for them to communicate with each other with the method I was using. Plus I already have lots of free pins and a few free cores.
Fred wrote:
I don't understand what you mean by cutoff, however if your input signal is per engine cycle, you should only do sequential, and if your input signal is per revolution, you should only do semi sequential, and if it's a dizzy input, then you can take your pick between uneven fueling and inaccurate fueling. However, that all applies to port injection, TBI you might be best off with a per cylinder pulse injection, and if the throttle is staged, so should the injection be, I guess. You should probably set up the injection on two maps, with a threshold system to disable one in certain load/rpm ranges and just tune it to how it runs best rather than hard coding in the logic. You could use the table itself to be the switch, ie, if not zero, use it, if zero do nothing. If you setup the comms to match FreeEMS exactly (fake being FreeEMS) then you can use MTX. I don't mind adding a second fuel table to MTX for you, you can just implement the subset that is required. I think the interrogation is pretty lax so if you have key elements it'll work OK.
You've thought and researched this a lot more than I have, because I don't know what most of that is. I'll start google-ing and reading tonight so that I have a better idea of what past injection theories are. The cutoff is where I'm thinking the pulses are too short for the injectors work properly. Maybe I just need some better injectors, but they're peak and hold injectors so I think they should work with this setup. It looked like they were giving me really non-atomized? injections when it was setup with "short" bursts. My original plan was to do three injections per revolution, but now I have it doing one injection for multiple revolutions at idle, and one injection per revolution at higher loads.

I've been looking at the MTX, and it doesn't look like it would be very hard to get it to fake a freeEMS.

I have a RC time function in the most current setup, but I think a bridge would work better now that I have thought about it. It would free one of the processors cores up for something else and I already have two free ADC pins.

Currently I'm trying to figure out how I'm going to setup the arrays in spin so that I can "manually" change the cells for different loads and RPMs. I'm thinking I'm I want to base the fuel on a -100 to 0 to 100 scale with negative numbers subtracting fuel, 0 being no fuel, and 100 being 85% duty cycle. Maybe have it calculate the base fuel map with the PV=mRT equation and then add it to a user adjustable table to fine tune it. At least to start with.
:-p
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: E.M. based on a Parallax Propeller micro controller

Post by Fred »

OK, I see what you mean by "cutoff" now! You need to parameterise your setup a bit more. Injectors take time to open. Roughly speaking, that time is dependent on voltage (a curve, not a line) so you need to do this:

measure battery supply voltage
lookup a table to see how long they take to open
add that value to your fueling pulsewidth
use the result to turn on the injector

That will get you very close :-)

As for your table plans, I would strongly recommend that you used a VE approach and used 0 - 128 or 0 - 256 scale. I use the former and ensure that all other aspects of the system are accurate such that it shouldn't ever rail out. If you want to integrate AFR/Lambda into the VE, then choose the latter as you'll need a lot more range, otherwise use a separate table for that.

I'm planning to restructure the way I use tables soonish, but if I do, and you've implemented something else, you can just stay on an old version of mtx, or update your firmware to match, no big deal. You could also do something different and adjust MTX to match, though that's not fun if you want to track changes to mtx.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
Peter
LQFP144 - On Top Of The Game
Posts: 268
Joined: Tue Dec 27, 2011 5:37 am

Re: E.M. based on a Parallax Propeller micro controller

Post by Peter »

Well I should be tuning my Honda, but I find working with my hands more enjoyable than working with a computer.

A 36-1 setup on my Ford pickups' distributor. I can remove all of the mechanical and vacuum advance, so I think it should work alright. Now I need to figure out how I'm going to shelter it from the elements.
Image
:-p
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: E.M. based on a Parallax Propeller micro controller

Post by Fred »

You'll want the tolerance on that to be very close because the peaks are very small. Looks like about an eighth (3mm) in there right now?
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
Peter
LQFP144 - On Top Of The Game
Posts: 268
Joined: Tue Dec 27, 2011 5:37 am

Re: E.M. based on a Parallax Propeller micro controller

Post by Peter »

Ya, I didn't know how close to make it. I bent the bracket a little since that picture, but it's probably still 2mm away. How tight do you think it needs to be?
:-p
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: E.M. based on a Parallax Propeller micro controller

Post by Fred »

They should always be as tight as you can reliably make them. At low RPM the voltage will be minimal and hard to read. Also the noise immunity falls away with distance. Tighten it up as much as you can. If you had some adjustability in your bracket it would be better too, but if not, try it, I guess. You can always pull it and improve later if it gives trouble.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
Post Reply