Deviant trigger signals - higher amplitude at the missing tooth
This only happens with multitooth triggers with missing teeth instead of missing gaps.
The standard Bosch 60-2 wheel has similar amplitude at the missing teeth (because of the height-profile used) as for normal teeth, so it is not effected.
Note that v3.3 was modified to push adaptive threshold down as in the solution below with R181 (and R182 for secondary trigger VR circuit).
- R181=100k..180k, as shipped from factory, makes it possible to run deviant VR signals like the one below. On v3.0 .. v3.2 a small tracecut had to be done to solder the resistor (usually 150k in series with C38) that pushes down adaptive threshold
- R181=0k pushes adaptive threshold up to maximum, as the original behaviour. This should not be needed, unless VR signal is noisy like trash but otherwise not deviant at the missing tooth like the one below.
Problem
Deviant multitooth VR signal
- There is a HIGH peak at the amplitude around the missing tooth. This causes the peak detector cap to charge to a high level
- Otherwise correct polarity: lm1815 triggers on negative going zero crossing, there is a good illustration [here on page 8].
TODO: Could someone record or make a wav so we could play with it on table ?
We noticed that (with deviant trigger, and original high-adaptive threshold setup) some multitooth triggers will miss trigg at high (?? not low?) RPM, genboard shuts down inj and ign until the trigger signal is stable again.
Note: input protection cause all triggs to be cut to 5v, this also prevent the arming threshold from rising above this level (so at high RPM there shouldn't be any problem! Only at low-RPM could there be problem, right?)
The arming threshold is meant to prevent any (noise) signal lower the 80-90% of the main pulse train from trigging the circuit.
Solution
I guess that running the lm1815 in mode 2(pin5 to VCC). Would solve the problem. But I want to run the lm1815 in adaptive mode. So I solved the problem by connecting a 100k resistor in series with the Peak detector cap, C38. This resistors serves 2 purposes:
- It acts as a voltage divider, thus reducing the arming threshold by 10%
- It also reduces the charging current so that one single peak doesn't charge the peak cap to much.
Installed onboard in factory since v3.3 (slightly different configuration, but same effect)
VR HW testing - also useful for testing firmware behaviour with noisy signals
Thinking about a small C program that mixes and plays A.wav and B.wav, fading from: 1:0 => 0:1
Uses a normal signal and the deviant (see above) signal.
I found a codelet (from a lightweight fullduplex karaoke program I wrote for my father years ago) that is suitable to mix 2 trigger signals.
Commited to SubVersionSvn https://svn.x-dsl.hu/svn/firmware/testing/signalgenerator
- dsp_rec.c was used to full-duplex play and record wav files
- add.c was used to mix 2 files (run as a batch-process)
- we want to merge the 2 programs so 2 files are read from disc, added and played again and again, with fading from A.wav to B.wav happening at a specified rate
- alternatively, some offtheshelf mixing program might be suitable (audacity?)
Usage examples
- if A.wav and B.wav are a normal and a peaky-at-the-missing-tooth VR but otherwised syncronized, we can test the adaptive threshold of a particular LM1815 chip and R181 resistor (100 .. 180k)
- we can mix noise to a signal and see how it is tolerated (VR HW and firmware)
- if B.wav is silence, we can fade the signal to see the smallest detected signal
- other applications