Serial Output

Top  Previous  Next

The K-Series ECU can be configured to output a serial stream for a datalogger.

 

Note that only PRB calibrations support the serial output.  PRB calibrations may be used in PNF, PRD, PRC and PND ECUs with re-tuning, but cannot be used in PRA ECUs.

 

Software Setting

In KManager under Parameters, Multiplexer select the 'Datalogger Output' option.

 

Electrical Specifications

Pin E24 (SEFMJ), normally used for dashboard communication. This use of this pin for a serial output stream will result in the stock water temperature gauge and charge indicator being disabled.
12V / 0V signal levels. The high signal level may follow battery voltage (ie 10 - 14 V)
Normal polarity (idle state is 12V).

 

Serial Specifications

9600 bps or 115,200 bps (software selectable), 8 data, 1 stop, no parity.
Packets are sent at approx 20Hz (9600 bps) or 30Hz (115200 bps)
There is only one packet type

 

Packet Description

Words are send with most significant byte first.
The checksum is calculated as the byte sum of the packet subtracted from 0xFF. The byte sum of the packet, including the checksum, should be 0xFF.

 

Byte

Contents

0

Identification byte (0x69)

1

Speed (kph, LSB = 1 kph)

2-3

Rpm (LSB = 0.25 rpm)

4

Gear (0 - 6)

5

ECT (degrees Celsius + 40, LSB 1 deg)

6

IAT (degrees Celsius + 40, LSB 1 deg)

7

Battery voltage (volts, LSB = 0.1V)

8

TPS (0% = 0x15, 100% = 0xE5)

9-10

MAP (mbar, LSB = 1 mbar)

11-12

Injector duration

13

Ignition timing (degs + 0x80, LSB = 0.5 deg)

14

Output bit field

15

Input bit field

16

Cam angle (degrees + 40, LSB = 0.5 deg)

17-18

Lambda (0x8000 = 1.00, LSB = 1/0x8000 lambda)

19-20

Knock count (knocks since power on, LSB = 1 knock)

21

Checksum

 

Output bitfield

Bit

Meaning

0

Reverse lockout (1=on)

1

Brake switch

2

AC switch

3

AC clutch

4

SCS

5

EPS/PSP

6

Fuel pump

7

Radiator fan

 

Input bitfield

Bit

Meaning

0

VTEC oil pressure

1

VTEC solenoid #1

2

VTEC solenoid #2

3

MIL

4

Nitrous 1 arm

5

Nitrous 2 arm

6

Nitrous 1 active

7

Nitrous 2 active

 

Example output at 115,200 bps

 

serialoutputexample1

 

Example packet 1

Byte

Value

Contents

Meaning

0

69

ID

 

1

50

Speed

80 kph

2-3

022F

Rpm

559 rpm

4

06

Gear

6th

5

69

ECT

65 degrees C

6

3F

IAT

23 degrees C

7

86

Battery

13.40 volts

8

6D

TPS

42%

9-10

0595

MAP

1429 mbar

11-12

0CAC

Inj

12.964 ms

13

83

Ign

1 degs BTDC

14

41

Out

RVSLK on, fuel pump on

15

09

In

VTEC pressure on, MIL on

16

28

Cam

0 degrees

17-18

AFD9

Lam

Lambda 0.728 (10.70:1)

19-20

0000

Knk

Knock count 0

21

A5

Check

Packet byte sum = 0xFF

 

serialoutputexample2

 

Example packet 2

Byte

Value

Contents

Meaning

0

69

ID

 

1

50

Speed

80 kph

2-3

0CE6

Rpm

3302 rpm

4

04

Gear

4th

5

82

ECT

90 degrees C

6

3F

IAT

23 degrees C

7

86

Battery

13.40 volts

8

E4

TPS

100%

9-10

00327

MAP

807 mbar

11-12

079D

Inj

7.784 ms

13

BC

Ign

30 degs BTDC

14

41

Out

RVSLK on, fuel pump on

15

01

In

VTEC pressure on

16

28

Cam

0 degrees

17-18

AFD9

Lam

Lambda 0.728 (10.70:1)

19-20

0000

Knk

Knock count 0

21

A9

Check

Packet byte sum = 0xFF

 

serialoutputexample3

 

Notes:

A working oxygen sensor is required to log the lambda.
Generally only one VTEC solenoid needs to be energized for the VTEC lobes to switch.
The gear may read 0 or 1 while stationary.
The gear ratios may be altered in KManager.