Latest Update
Wow, its been four years..started a family, etc....life gets in the way of playing with cars ;)
Anyway, I bought a v3.6 GenBoard for my latest project; a 302 CI Small Block Ford, EFI and Whipple Twin Screw Supercharger.
Everything works great except I have a VR Primary Trigger noise problem when coils are firing. Grounds are good, cable is shielded with MSD part # 8862, route is low on the block and along the brake lines with no electrics in path, polarity is correct, etc.
Are you sure it is VR sensor?
- for magnets, usually (3-wire) HALL sensor is applied
- [8640_add.pdf] suggests 2 wires, which is VR
- verify: measure resistance: if same resistance between 2 pins in both directions, (usually between 300-1400 Ohm) than it's VR
Logs here: http://vems.hu/files/PatrickB/PriTrigProblem/ (rename triggerlog*.txt to triggerlog*.triggerlog to view in VemsTune
They show that the signals are always clean and correct when coils are not powered (+12 relay removed).
However, the log gets 2 "Too Many Pri Trig" (MISSINGTOOTH errors?) per cycle when coils are powered. But, there are no missing teeth on wheel: http://www.msdignition.com/Products/Crank_Triggers/Crank_Triggers/8640_-_Ford_Small_Block_Crank_Trigger_Kit.aspx
It's just four flying magnets, one pulse per 90 degrees, hence the 8+1 config.
This problem manifests in sounding like it wants to start but then misfires/backfires.
My conclusion is that I have to live with this noise and filter it out in firmware.
The problem is I have tried all filtering options to no avail.
- can you capture (and publish) a scopeshot of the ANALOG (VR) signal when it's noisy ?
- amplitude is usually >1V (2V peak to peak) even during cranking
- If the sensor is 0.08" away from the wheel, try to move it closer (0.03") to improve signal/noise ratio
I am now ready to write filtering code unless someone has other suggestions.
- would be possible for a high-toothcount wheel (60-2, 36-1 or 36-2 or possibly even a 12-2) but not feasible for the 1 pulse every 90 crankdegrees (imagine the noise is close to the real signal: no way to decide which is the wicked one)
- if you capture analog signal and publish or link-from here, we can either have some good suggestion or send you [HALL sensor] for no charge (checkout with IBAN, order comment ...URL of this page...) for the experiments.
Latest Primary Trigger issue
I recorded the signal into the line level audio input on my laptop. A bit crude but the signal looks to be VR, about 1.2 volts with a 0.02 variance. It is clean during coil firing and not firing.
Here's the signal images:
So, if the VR signal is clean, then the problem I think is either incorrect config or spark energy getting back into Genboard and causing to malfunction and report erroneous trigger errors. The injector harness and one or two sensor wires are very close to the coils, is that bad?
Any other ideas?
Old SVN stuff
You already got svn acc, if you cannot access for some reason, this is not something that can be resolved publically (for obvious reasons).
Old Trigger Problem with v3.1
Got the engine ready to go together and into the car so I've set up the GenBoard on my test engine but I have not yet been able to get a successful trigger config.
I am using a MSD Flying Magnet Crank Trigger http://www.msdignition.com/mag_1.htm
Describe the trigger PATTERN
I have the following config with v1.1.27:
primary_trigger=FE
tooth_wheel=4
tooth_wheel_twidth1=68
tooth_wheel_twidth2=00
trigger_tooth=0
This does not trigger at all.
- I have logged trigger output but it doesn't look right either
- the triggerlog must be good even if the config is bad. The triggerlog is just the timestamp of events.
- => not ready for investigating code. Measure and fix the trigger HW first. There is simply nothing to investigate in trigger config (or sourcecode) at this point.
Can someone tell me what is wrong with this config?
The problem is that the most basic things that need to be checked for any VR trigger are not all checked:
- What's the trigger pattern ?
- What is the polarity ? Is it OK for falling edge ? The link you provided suggests rising edge (not good)
- what is the measured sensor resistance ?
- What is the DC voltage bias ?
Background
I'm building a roots supercharged 347ci small block Ford (actually a stroked 302 Windsor) on which I wish to run an ion sensing ignition, so I'm looking at the GenBoard/VerThree (which is not yet implemented with IonSense, it needs some DCDC extensions even for simple CDI, but work is ongoing).
Goals
After spending a number of months researching ignition systems, i've decided that I want to use a non-commercial, ion sensing type ignition system for my current and likely future engine development projects. This is for a few reasons:
- All commercial ignition systems are completely proprietary, providing no options for third party software or hardware interfacing, thus having limited extensibility.
- I see ion sensing as a superior method for ignition monitoring and control.
- A system that I can build myself or build in collaboration, will be more cost effective.
Other functionality I want is:
- WBO2.
- Data logging.
- Supercharger efficiency monitoring.
- DetonationDetection.
- Both intelligent/dynamic or "dumb"/lookup table types of ignition control data.
- Loosely coupled hardware and I/O interfacing.
- 8ch EGT
Points 5 & 6 stem from racing regulations i.e. some racing classes do not permit the use of reactive electronics (computer control) but do permit other non-reactive electronics such as data logging, pre-programmed ignition curve, etc.
What's Next
OK, 4ch DIS off GenBoard is easy so it's all requirments met and I'm sold!
Now to start cutting some code...IonSense and/or JTune code.
Currently you can only play with IonSense sample-data on PC, as we don't have the LPC2119 playground yet (GenBoard/VerFour).
I added a MembersPage/PatrickB/Notes page for temp storage of thoughts, etc.
I've come up with a PPP detection algorithm that I've documented on the IonSense page. There's also a few other of my thoughts and comments on there.
I'm looking now to setup my own Ion Sensing test environment where I can collect more data to fine tune the algorithm then port it to ARM. Hopefully Jorgen is going to help me with a schematic for this.
I have my ADC/software ready for Ion Sense data collection and a chassis dyno to run on where I'll be able to run a number of conditions and collect a lot of data to use for fine tuning the algorithms. I plan to run idle, wot, detonation, accelerating, decelerating, highway crusing, etc. My friend should soon finish the hardware (current mirror, etc)...Stay tuned.
I've been hell busy at work and my friend has been sick for a couple of weeks but he should have the Ion Sensing test hardware completed by Sept. That'll tie in nicely with things cooling down at work, so expect Ion Sense to be cranked back into gear then!
BTW, got my v3.1 Just need the time now to put it together..another job for September.
My friend just sent me some CRO traces from his newly completed test ion sense circuit and they look very promising. :)
I'll arrange with him soon to take my car & DAQ along with his circuit to my friends chassis dyno where we'll run a number of tests and collect a lot of ion sense test data.
Went to my friends house and we hooked up the IonSense test circuit to my car and DAQ. We had some clipping problems so we had to play with the component values to get the right range (-5V to +5V), which we eventually did.
Collected a lot of data along the way but none of it is of any use yet, as we seem to be intermittently losing the ion current and this results in random chunks of waveform missing.
We think that this is perhaps due to the ion voltage being too low (it's about 300V) so we're going to setup another power supply of 400V and try that.
Digested the data collected in the last session and we've decided that the current in the current mirror test circuit is so low that the transistors may not be functioning correctly. My mate Gary is going to design a simple resistor based circuit as an alternative to the current mirror.
Here's a photo of my engine:
It's nearly ready for final assembly....and a Genboard sticker ;
I've had some more ideas, I'd like to make this code run time conditional (as opposed to compile time conditional) based on a jumper setting perhaps, i.e. jumper on = race code, jumper off = standard/full featured code.
I also want to add to the race code:
- Upper rev limiting (set max revs via config, etc).
- Addtional 2 stage rev limiting (via config, etc) triggered by a single flip-floping momentary contact input, low-high = limit 1, low-high = limit 2, low-high = no limit (upper limit), low-high = limit 1, etc. Also needs corresponding output to led or similar to indicate current limit (upper only, 1 or 2).
- Shift point output for shift solenoid and/or shift light with configurable number of shift points.
Anyone know any theory/algorithms around ignition only rev limitng?
Well, it's been 18 months since I worked on this, during which time I was busy buying a house, etc. My car is not ready for the engine (and GenBoard) yet, but I worked on the IonSense project yesterday with my friend Gary.
We managed to record some IonSense signals!!! However, they have a lot of distortion from the ripple effect of the power supply. We are going to build a new low noise power supply to resolve that.
- The spark signal is apparently up to 50 times the magnitude of the pressure signal.
We are using an inductive ignition for testing at the moment, hence the need for clipping.
After we sort these problems, we will collect more data and design a circuit suitable for genboard interfacing.
GenBoard v3.1 Build
Started building my GenBoard....
- Added Power Supply,
- Tested Comms: OK.
- Added 4 IGBT for DummyIgnition - ordered MSD coils today, thanks for the help folks :)
- Added WBSensor (2 channels) - need to fully test.
- Added most of ExhaustGasTemp (2 channels). Check GenBoard/Manual/ExhaustGasTemp . 0..10 ohm is fine onto L4 pads (would be nice in RescueKit). AD597 GND to V- decoupling hint: 0..510 Ohm seems right (try 270 Ohm first).
- Finished EGT. I could not get a 10uH L4 in SMD so I used a full sized choke. Tested the board again and the trouble started....the current overloaded my multimeter and it read 0 so I hooked the board up direct (this was a very rude step!)....fizz and smoke, fried the choke!
- Finished the Knock circuit.
- HW finished!!
- Compiled and uploaded firmware. Tweaked the code beforehand as the LCD preprocessor directive did not work (I have no LCD).
Thanks,
Patrick B.