Hi and welcome to Jonas Andersson's VEMS member page.
If you edit and comment anything on this page, please state your name after your text. Please.
Latest news:
2005-01-09:
The car started immediately when filled with normal 95octane fuel. I now cold start the car with motor starter gas. As soon as the engine starts to fire, it gets hot enough to run on ethanol. I've also noticed an increased fuel consumption when the air intake temp is too low (below +5?), probably due to bad vapourization of the ethanol.
I did some resistive measurements on the intake air sensor in the Bosch air flow meter: Between terminal F and 9:
+2 deg 76ohm
+22 deg 47ohm
+55 deg 23.5ohm
+85 deg 12.5ohm
Connecting this sensor to the MAT input on a genboard2.2 will be no good. Any suggestions are very welcome. Please add your name to your comment!
2004-11-07: The car has been running all summer on E85 without any serious problems. I haven't spent too much time on this car, all free time has been focused on Mickes Audi. Now when the temp is below +5 (sometimes below 0) I have cold start problems. I decreased my aggressive ignition (not genboard controlled, just a turned distributor) but it still won't start. Tomorrow I'll fill the tank with ~20 litre of normal unleaded fuel instead of the ethanol to be able to tune the cold start values a bit better.
History:
I got my Peugeot 309 gti '87 up and running on msavr genboard2.2 at 20.00, 2004-03-07.
Started at first crank. Well, at least when all problems were fixed!
I replaced the stock TPS (idle and WOT switch) with a potentiometer TPS from an opel and reused the wiring. Made an adapter from genboard db37 to Bosch AMP 25 pin connector by stripping a Bosch ecotronic box.
When I replaced the exhaust pipe, I mounted a lambda bung
even though my engine's original ECU does not have a lambda sensor.
I hang around the #avrboard irc channel as "kakmnstr". If you have any questions, just ask me there.
Comments on setup:
Trigging on Coil-.
No PWM, high impedance stock injectors.
Problems and solutions so far in MSAVR'ing the Peugeot with genboard 2.2:
Problem #1.
No power to the ECU without engine running. There is a "tachymetric relay" on the peugeot that does not power the ECU+fuel pump if the engine is not rotating. I don't know if it works fine to let the genboard get powered up when the engine starts turning but for diagnostics (running genboard without engine running) I steal some power from the cigarette lighter for now. Yes, I never tend to do permanent installations! :/
Note that this differs from what people refer to as "cranking power problem" which means that you don't have any ECU power while cranking. I don't have any power until engine is rotating but as soon as it starts to turn (driven by the starter) I get power to the ECU. If the engine starts I will keep power but if it never fires I will loose ECU power when I stop the cranking. Get it?
Problem #2.
Stock TPS sensor is just a switch. Thanks to whoever pointed that out. (please edit this page and accept credit!)
Solution: Mounted a sensor from an opel.
Problem #3.
A bad soldering ruined the IRZF34 INJ1. Solution: Check your solderings. Try driving a brake lightbulb or similar on bench before firing real injectors. When my FET got damaged it could still drive a 470 ohms resistor, but not a load of 5 ohms.
When I connected the brake lightbulb to my bench setup I found the problem.
Lesson learned: Test on bench with real load if you don't have your own (heated) garage! (winters are cold in sweden and I'm a thin guy without any heating body fat!)
Problem #4.
I had no idea what size my stock injectors were so I tried to calc a reqfuel value from some info on the net. Bad idea, I guessed wrong with a factor 3! The engine just got flooded.
However, I brought an oscilloscope to a parking house with power
and took this nice (and now smaller) picture:
X Scale is 2ms/div, Y Scale is 20V/div.
Sorry for the trigging, you see two pulses on top of each other.
The purpose of the pic was to see overshot on injector release, a spike up to ~65V, but it is hard to see on the picture.
(Ouch, I'd consider a faster diode to protect the FETs, maybe BY399 or a transient protection like the 1k5... whatever on v3 supply, see GenBoard/PowerSwitcher and FlyBack )
I'll check into this as soon as I've done some more measurements.
Note the "PWM", the stock ECU (a bosch L-jetronic box without any kind of CPU) releases the injectors to ~5V from 0V after a millisecond of opening current.
Simply after entering reqfuel from the scope pic (I know, it is close to cheating!) it started at first attempt.
Problem #5.
Does not show "accel" or "decel" in megatune.
Solution: It turned out that the "calibrate TPS" function in megaview2.20 did not send the data to the genboard software,
it was just a function for the graphical gauge in megatune. After setting the parameters tps_low and tps_high in the config.txt it made a lot more sense.
Problem #6
Drowns on accel.
Solution: Decrease accel enrichment from Mik's setting "2.0" to "0.1".
Problem #7
False rpm trigg at above 4500rpm. (we saw something similar when we trigged from the wrong edge of the coil signal. The RPMjump did not appear on LCD, but the dot in megatune showed it, and the engine also).
Solution: this false triggering is very common when you use signal from a coil primary, and you choose the falling edge instead of the rising edge. (there are 2 falling edges in a period: a small 12V falling edge and a big, appr. 200V one ! There is only one rising edge, appr. 212V so triggering on that will work)
Problem #8
No stock lambda.
Solution: The whole exhaust pipe did not survive the winter
very well. 3 holes (how does it sound?). I bought a new pipe including mounting kit at Mekonomen and a lambda bung. Drilled a hole and MIG welded the bung. Narrow band lambda sensor for now. Thanks to Fredde for all welding and exhaust pipe mounting help!
The car now runs on 100% E85, which is a swedish ethanol biofuel made by SEKAB. http://www.sekab.se/etamaxB.cfm
Next step is to control ignition from genboard and move trigger from coil- to hall.
No further plans. The car is not in too good condition (some parking damages and rust) but has served me well for more than 50000km now. A perfect test bench for engine management hobby!
Pictures, config files and tables:
http://sdf.nu/~kakmnstr/msavr/
Notes from the IRC:
VE learning (autotune)
19:16 < mik> ve-learn: well... erhmmm... ohhh... :)
19:17 < mik> I will recommend _not_ to use the 2x2 mode
19:21 < mik> because the 2x2 mode changes ve-entries which might not need to be changed
19:22 < mik> when not using 2x2 mode, only the nearest ve-entry is changed
19:24 < mik> in 2x2 mode it will never stabilize. Changing one ve-entry in the correct direction might result in three other
entries to be adjusted in the wrong direction
19:26 < mik> the scale-parameters sets how much the rpm/kpa/ego are allowed to change in a sampling period.
19:26 < mik> if they change much, then only small VE-changes are performed
19:27 < mik> higher scale value ==> rpm/kpa/ego must be more stable in order to do any changes
19:29 < mik> it is some time since I used the ve-learn, but the values in my config can be used as a starting point (I hope!)
19:46 < mik> if (distance(current VE entry - nearest VE entry) < distance) { then do some adjustments }, ve_min_weight sets
the distance
- ve learn is being tested at the moment...
ve_learn_max_power=ff
ve_learn_rpm_scale=28
ve_learn_kpa_scale=28
ve_learn_ego_scale=50
ve_learn_speed=E0 #80
ve_learn_limit=ff #30
ve_learn_min_weight=50
ve_learn_conf=00
Flyback
11:40 < mcell> you can bypass the BD244 with 0..22 Ohm resistor (to protect the FETs more: actually there is a 47 Ohm bypass already, but that is a bit high ohmage and low wattage for real protection if the PNP circuit fails for some reason) and bypass the 1N4004 with a faster diode if you see flyback pulses >50V measured with scope on the injector signal.
Note the R=0 is also valid in DR low voltage FlyBack, but you will need to make smaller injopen setting in that case (cause injector closing will take longer)
Alien ign logging
11:47 < mik_> emil_, code must be compiled without LOG_ADVANCE_CHEAT in my_make, but with SEND_DWELL_NOT_IAC defined!
11:48 < mik_> then configure secondary_trigger edge, enable & filtering
11:49 < mik_> finally you can log the advance with megatun*. Dwell/advance are sent in the megatun* 'A' command (see comm.c)