GenBoard/Manual/DigitalOut/Table (2006-03-05 17:38:40)

This page list the outputs that can be used for GenBoard/Manual/DigitalOut configuration and testing.

Injector drivers are primarily used for driving injectors, but any (otherwise) free channel can be configured for any output. The same goes for all the drivers, including ignition and idle solenoid outputs.


For inductive loads

it must be verified that the chosen driver handles flyback.

No flyback on

so be extremely careful with these. It is easy to apply a simple diode onboard or in the harness to provide flyback if needed, but without it the FET dies (and maybe other things too) when inductive load is switched with it.

Note: the IDL output is only ment to be used with the ON/OFF type solenoids, driving the relay (max 350mA) that drives the valve. If you want to drive a PWM controlled idle valve directly it's best to use one of the free INJ outputs they can handle much more current (max 10A) and are equipped with flyback.


FamilyNumbermdh ON/OFFsame in decimalPinNameMax LoadComments
SPECFET081/011EC18 pin 12Drive A7 AMisc driver
SPECFET191/1117EC18 pin 6Drive B7 AMisc driver
I259082/022EC36 pin 35Drive 007 AIgnition Driver
I259192/1218EC36 pin 33Drive 017 AIgnition Driver
I2592A2/2234EC36 pin 34Drive 027 AIgnition Driver
I2593B2/3250EC36 pin 36Drive 037 AIgnition Driver
I2594C2/4266EC36 pin 11Drive 047 AIgnition Driver
I2595D2/5282EC36 pin 12Drive 057 AIgnition Driver
I2596E2/6298EC36 pin 24Drive 067 AIgnition Driver
I2597F2/72114EC36 pin 10Drive 077 AIgnition Driver
S259086/066 N/A lcd_rsN/AUsed internally
S259196/1622 (Onboard) S259 Out1logicHas to be soldered
S2592A6/2638 (Onboard) S259 Out2logicCheck board layout
S2593B6/3654 EC18 pin 4Step A1ACan be used for stepper
S2594C6/4670EC18 pin 10 Step B1AOr as separate drivers with
S2595D6/5686EC18 pin 5 Step C1Astepper chip populated
S2596E6/66102EC18 pin 11Step D1Aotherwise, internal logic level
S2597F6/76118 N/A EN_abN/Aused internally
P259087/077EC36 pin 4Drive 08350mAFree for any usage
P259197/1723EC36 pin 16Drive 09350mAFree for any usage
P2592A7/2739(Onboard) CL LED350mAOnboard, LED1
P2593B7/3755(Onboard) MISC LED350mAOnboard, LED2
P2594C7/4771EC36 pin 3IDL350mAIdle solenoid relay
P2595D7/5787EC36 pin 15FP350mAFuel pump relay
P2596E7/67103EC36 pin 31Drive 10350mAFree for any usage
P2597F7/77119EC36 pin 30Drive 11350mAFree for any usage

Notes:


Summary for mdh.. testing

Above you've seen examples for ("." = hexadecimal character from 0..f)

but the most interesting and flexible

is yet to be seen. Read on.

Mapping guideline - how to map outputs to functions


Several injector outputs can be switched simultaneously - mdh.0

This is a very nice and often useful feature.

There is no direct connection between an mdh.0 command (replace '.' with 0..9,a..f) and injector FET. Only the h[0] table-line makes the connection. This very important. Don't fool yourself by forgetting this.

Let's assume (just for the example) that tables.txt has:\nÿ1ÿ

It is very important to note the difference compared to other outputs.

While configuring ...channel=47 means the P259 output 4 (labelled idle solenoid relay, EC36 pin 3) is used (which is direct mapping), configuring 70 will not necessarily mean INJ H (because of the indirect "lookup").

instructs the controller to look up the 7th (that is last, since it's 0 based) element from the h[0] line. The value is set to 60 (Mask 40+20) in the above example, so INJ G (mask=40) and INJ F (mask=20) channels will be used. mdh70 will turn these off, mdhf0 will turn these on.
FamilyNumberh[0] maskPinNameMax LoadComments
INJFET001/1EC36 pin 7Inj A10 AInjector driver
INJFET102/2EC36 pin 19Inj B10 AInjector driver
INJFET204/4EC36 pin 8Inj C10 AInjector driver
INJFET308/8EC36 pin 20Inj D10 AInjector driver
INJFET410/16EC36 pin 9Inj E10 AInjector driver
INJFET520/32EC36 pin 18Inj F10 AInjector driver
INJFET640/64EC36 pin 6Inj G10 AInjector driver
INJFET780/128EC36 pin 17Inj H10 AInjector driver

h[0] mask is written in hex / decimal, as megatune wants the injector output table in decimal values.

In general it doesn't make sense to control the same injector channel from several h[0] elements (countrary to the above made-up example). Also, it doesn't make sense to assign the same output for different config..._channel. The result will be undefined (and hard to track down). Assign config..._channel=FF for unused functions, that means "disable".

We found a strange behavior (that we first thought is a firmware bug) in a firmware compiled by Gabor's winavr. Reproduced on several boards, first on v3.1 serialNo=86: the outputs in h[0] first element (mask) just flashes a tiny while (30msec ? no exact measurement) when mdh80 is issued (independent of the configured mask). All other elements ( mdh90 .. mdhf0 ) light the outputs (we used LEDs) given in the mask that is in element 0 of h[0] => work as expected. All ..._channel=FF was maintained and verified in the output of mct (so it's not fuelpump or other output interfering because of a configuration error). Released firmwares we tested did not show any bad behaviour like that.

I got interested in this, so I table tested mdh80 and it worked fine. But I also tested other mdhXX and mdha2 made a short led flash! It has nothing to do with h[0], DRIVE02 is set to FP, mdh22 did nothing. So I changed fuelpump_channel to FF and tested mdha2, led was bright like it should, mdh22 turned led off. My v3 has never been driven, but configs are almost the same as my daily driven v2. Both with v12 firmware.


See also