russian New Reader
Feb. 19, 2014 7:38 p.m.

DIY as in real Do-It-Yourself from scratch.

I am racing a crapcan Ford Festiva, it used to be 1.3 but we have swapped a 1.8 into it. We are kinda doing fine as is, but for total domination we need a turbo. And a proper turbo build asks for an aftermarket engine control unit. Thing is, in the crapcan series you are supposed to be on budget, so commercial ECU is out of the question. I've checked what open source DIY options are around and they are "kinda blah", and since I am a software developer anyway I've decided to make my own engine control from scratch.

Here is a pic of the crapcan - there was a major bodywork upgrade since but this picture works better for the spirit of GRM :)

ssswitch New Reader
Feb. 19, 2014 7:43 p.m.

What hardware platform are you basing this on? I heard someone was trying to get an Arduino to run a Miata which seems like it'd be an interesting if constrained choice. I'm not sure if they're really built for the vibration/heat environment of a car either.

Either way it's a project I've wanted to do for awhile too, but I only have software skills and no EE skills so I'd probably spend most of my time figuring out how relays work and worrying about fire.

russian New Reader
Feb. 19, 2014 7:43 p.m.

Anyway, back to the ECU.

Arduino is a popular DIY platform but I've chosen stm32f4 because it's 168MHz with floating point unit for around $12 - that's a cheap and powerful chip. It's also available as part of a handy stm32f4discovery evaluation board which works great for my prototyping.

Couple of guys have helped me with the electronics and as of today I actually have a running prototype - it's ugly as hell, but it's a standalone engine control unit for under $100 in parts.

Here it is - it's actually called rusEfi:

I've mentioned the name because this project has a website - http://rusefi.com/ - but anyway, I will track my progress here.

russian New Reader
Feb. 19, 2014 7:50 p.m.

This board sure looks scary, but it does the job: it controls a 4 cylinder engine in sequential mode. Here's a proof: http://www.youtube.com/watch?v=M-qqHQ-quFg

This board sure looks scary, so now we have a better revision - it's again just a prototype, but you would see some progress between what we have now and what we are hoping to get from China maybe within a couple of weeks:

This board is still a 'shield', meaning it requires stm32f4discovery board for the main brain board. This is on the edge of evaluation license, so we are now finishing our own brain board, too:

That's the current state of rusEfi ECU. I am pretty excited about this project, I sure do not have the problem of free time anymore and probably would not have this problem for the next couple of years

ssswitch New Reader
Feb. 19, 2014 7:58 p.m.

I went for a poke through the source code - it's pretty modular and I like that you can register callbacks for the crank position sensor events which should keep things clean.

Not sure why the Audi AAN engine def says that it has only 4 cylinders though but it looks like a bunch of those files are stubs anyway so I'll just chalk it up to that.

Way cool! I think I'll learn more about EFI from reading your code than I ever did at many attempts to throw myself into the MegaManual.

russian New Reader
Feb. 19, 2014 8:05 p.m.

In reply to ssswitch:

Back in Soviet Russia, they cut the fifth cylinder away to stay in line with the party line...

WOW, you got to the code pretty fast! What did your say your software skills were, because we can use a developer or two. Or three :)

fujioko Reader
Feb. 20, 2014 6:22 a.m.

This is awesome!

I noticed you were using an Aspire as a test vehicle. Are you using the secondary chopper wheel in the distributor for the sequential?

I megasquirted a Festiva engine about a year ago. I still haven't solved the cold start (below 20F) issue. It takes forever to start the engine.

russian New Reader
Feb. 20, 2014 6:25 a.m.

Yes :) Yes, this is not ready for the racing Festiva yet.

Yes, I use both wheels in the dizzy. Technically I suspect Aspire also has a crankshaft position sensor unlike the Festiva? I need to look into that one day.

Same here - I still haven't solved the cold start issue :( I've decided to wait for two weeks and solve it next year :)

fujioko Reader
Feb. 20, 2014 7:20 a.m.

The Festiva injectors batch fire while the Aspire uses the rudimentary crank position sensor for sequential.

I'm not an EFI expert but the Apsire crank sensor is sort of unique and I'm not aware of of anything else like it.

From what I have read, the benefits of sequential are seen under lighter loads and slower engine speed. For racing, batch fire may be the simple answer.

Last fall I built a wasted spark ignition for an Aspire. I used an early model Miata CAS and had to add an additional sensor to keep the sequential happy. Overall the project worked out great but it was too much effort for an Aspire.

GameboyRMH MegaDork
Feb. 20, 2014 7:50 a.m.

Wow very impressive! I'll be watching this.

russian New Reader
Feb. 24, 2014 6:30 p.m.
russian New Reader
Feb. 26, 2014 9:28 p.m.

https://www.youtube.com/watch?v=lCAD1xQHs3o

alfadriver PowerDork
Feb. 27, 2014 6:57 a.m.

For the colder temps, can I suggest that you change your injection mode a little?

While SEFI inejction can be used really well for nominal cranking, couple of problems happen as it gets colder. first the colder engine means slower cranking- which means that the sensors that detect movement don't work as effectively. Since you are probably taking data at a high rate during crank, I'm sure you may already know that by now.

But what's more is that it takes a whole lot more fuel to start a cold engine- mostly due to the crappy evaporation of the fuel at that cold temp. So instead of doing SEFI, I would suggest starting with batch firing, and then transition to SEFI after the engine is running. On that note, I would even suggest running all of the injectors on each cyl's cycle a little bit- that will build up the fuel little by little ( or alot by a lot) and get it to fire.

moparman76_69 SuperDork
Feb. 27, 2014 7:17 a.m.

so is this a full ems or just efi?

GameboyRMH MegaDork
Feb. 27, 2014 8:47 a.m.
alfadriver wrote: For the colder temps, can I suggest that you change your injection mode a little? While SEFI inejction can be used really well for nominal cranking, couple of problems happen as it gets colder. first the colder engine means slower cranking- which means that the sensors that detect movement don't work as effectively. Since you are probably taking data at a high rate during crank, I'm sure you may already know that by now. But what's more is that it takes a whole lot more fuel to start a cold engine- mostly due to the crappy evaporation of the fuel at that cold temp. So instead of doing SEFI, I would suggest starting with batch firing, and then transition to SEFI after the engine is running. On that note, I would even suggest running all of the injectors on each cyl's cycle a little bit- that will build up the fuel little by little ( or alot by a lot) and get it to fire.

Sounds like setting the engine to only use sequential injection above a certain temp (maybe 1/2 way to full op. temp?) would be a good fix.

alfadriver PowerDork
Feb. 27, 2014 9:41 a.m.

In reply to GameboyRMH:

It would- but you can go full SEFI at 40F. that's when the fuel's are change from winter to summer, and where you see the biggest change in cold fuel properties.

For you, you can run SEFI all the time, unless you are planning on parking your car in a refridgerator....

GameboyRMH MegaDork
Feb. 27, 2014 9:46 a.m.

40F intake temp or coolant temp? Should you run batch mode always below a certain intake temp?

alfadriver PowerDork
Feb. 27, 2014 9:51 a.m.

In reply to GameboyRMH:

Coolant- it's much closer to the fuel temp, and has much more a bearing of what happens in the intake for the fuel than the intake air does.

Really- you only need to batch file the cranking fuel, and transition immediately to sequential- it's more about delivering enough fuel to get it to fire the first time- which takes a lot of fuel. After that, it's not a big deal.

russian New Reader
Feb. 27, 2014 1:52 p.m.

In reply to alfadriver:

What you are describing is exactly the logic of my OEM ECU uses - it is running all the injectors on each cyl's cycle while cranking (something like below 550RPM), and then it switches to SEFI. And that's exactly the logic I've implemented :)

russian New Reader
Feb. 27, 2014 1:54 p.m.

In reply to moparman76_69:

That's a full standalone EMS. Too late to change the name though.

alfadriver PowerDork
Feb. 27, 2014 2:16 p.m.
russian wrote: In reply to alfadriver: What you are describing is exactly the logic of my OEM ECU uses - it is running all the injectors on each cyl's cycle while cranking (something like below 550RPM), and then it switches to SEFI. And that's exactly the logic I've implemented :)

So you are injecting fuel every cycle or once per rev?

We've found that once for each cyl's cycle, the fuel will puddle up reliably to start reasonably quickly at colder temps.

If it eventually starts, then add more fuel. If it never starts, then take some out.

Oh, one more trick- since you are writing your own code- add in the feature that if you go wide open throttle that it turns the fuel off during crank. That way you can do a clean out if you need to.

Only for crank.

russian New Reader
Feb. 27, 2014 2:27 p.m.

In reply to alfadriver:

Cranking - four squirts per camshaft revolution. Running - one squirt per camshaft revolution.

About the WOT cranking trick - that's interesting! Another trick I was once told is to pre-inject some fuel into the cylinders before cranking if the temperature is really low, I can add a curve so that the duration of that pre-injection depends on the CLT reading.

alfadriver PowerDork
Feb. 27, 2014 2:31 p.m.
russian wrote: In reply to alfadriver: Cranking - four squirts per camshaft revolution. Running - one squirt per camshaft revolution. About the WOT cranking trick - that's interesting! Another trick I was once told is to pre-inject some fuel into the cylinders before cranking if the temperature is really low, I can add a curve so that the duration of that pre-injection depends on the CLT reading.

I'm not a big fan of injecting fuel on a non moving engine. It's an easy mistake away from hydrolocking on crank. Most injectors are not big enough to make that happen even if they are full on during craking- so just fuelling when the engine is spinning is a whole lot safer.

The WOT trick is an old carb trick that all OEM's use for fuel injection.

In terms of your trickling of fuel- if you are a 4 cyl, that should be 4 pulses per cycle, which is 720 degrees, or 2 pulses per rev. That way the timing is the same as you would during sefi, just all injectors instead of 1.

russian New Reader
Feb. 27, 2014 2:31 p.m.

I've actually created two tickets so that these suggestions are not forgotten: https://sourceforge.net/p/rusefi/tickets/51/ https://sourceforge.net/p/rusefi/tickets/52/

tpwalsh Reader
Feb. 27, 2014 2:46 p.m.

The WOT== Flood Clear trick is an OLD one in the megasquirt world. Props for starting from scratch, it's seriously impressive. But why competely reengineer from scratch, when even a MS1 on a custom board would save hundreds of hours and fit in budget? http://www.diyautotune.com/catalog/cpu-megasquirti-cpu-p-105.html

Also, how are you valuing this whole project in the crapcan world? This seems to me like it screams for penalty laps.

1 2 3 4 5 6

You'll need to log in to post.

Also on Grassroots Motorsports

MX-5 Cup Racing: Live on Your Screen This Friday and Saturday

18 hours ago in News

Catch all the action of the Global MX-5 Cup race at Road America live this weekend.

How to Run Compressed Air at Home

20 hours ago in Articles

A guide for installing an air compressor and air tools in your home garage.

2017 Volkswagen Golf SportWagen TSI 4Motion

20 hours ago in New Car Reviews

Say hello to the Volkswagen Golf SportWagen TSI S with 4Motion. It comes with a turbocharged 1.8-liter engine that is ...

You Need This: $1600 Street Racer Ford Festiva

20 hours ago in News

It already has a GRM sticker and everything.

Get Your Subscription Combo Deals!

21 hours ago in News

Get both our magazines for the price of one!

Your Projects: smokindav’s VW GTI Project

22 hours ago in News

Love a good MK5 GTI? You might enjoy this build thread.

Wing It: Simple Talk on the Complex Subject of Aerodynamics

1 day ago in Articles

Whether sleek, boxy or somewhere in between, all cars interact with the air while racing down the track.

2018 Acura TLX V6 A-Spec

1 day ago in New Car Reviews

Acura is introducing something new for the 2018 model year: the Acura TLX V6 A-Spec. It's the highest trim level ...

You Need This: 1989 Suzuki Swift GTi

1 day ago in News

For sale: one of Suzuki's under-appreciated hot hatches.

Buyer's Guide: Chevy Cobalt SS

1 day ago in Articles

All the information you'll need on GM’s entry in the sport compact wars.

Wednesday Night GRM Live: Are You Using the Right Chemicals for the Job?

2 days ago in News

What do all these cans even do!?!?

Project SVT Focus Gets Caught Up on Maintenance

2 days ago in Project Cars

Once again, some off-road action sent our project focus under the knife.

OUR SPONSORS

Grassroots Motorsports Magazine

Subscribe Today

Also get your instant access to the digital edition of Grassroots Motorsports Magazine!

Learn More
8Npx5ZMIfTBSphCeTe6VGfBC6dcSqnai