background image

UM-0086-A2

 

CANgate User’s Manual 

Page 29 

 

Data Range: 

0 to 8031.875 rpm 

 Type: 

Measured 

 

Suspect Parameter Number: 190 

 

The 

SNOOPJ

 command can now be used to verify that the PGN is in fact being broadcast by an ECU on the CAN network. 

This involves examining the returned data looking for the required PGN (61444). For example: 
 

SNOOPJ 1 

 

… 

 

EXT  0CF00402 PGN:61444 PRI:3 SA:2 DA:0 

 

… 

This line indicates that the required PGN is being broadcast on the network, and decodes the CAN identifier (0CF00402) as 
follows: 

 

priority 

field is 3 

 

PGN

 field is 61444 (0x00F004) 

 

destAddr

 field is not applicable because this PGN uses PDU2 format (bits 15-8 of PGN >= 0xF0) 

 

srcAddr

 (ie. the address of the sending ECU) is 2. 

 
Using this information, a memory slot can be initialised, for example: 
 

RECVJ 1 61444 4 5 2 3 FORMAT 0.125 "%.3f rpm\n" 

which will: 

 

receive J1939 messages 

 

on CAN port 

1

 

 

with identifier 0x0CF00402 (PGN 

61444

, source address 

2

, priority 

3

 

and extract bytes 

4

-

5

 as an unsigned 16-bit value (byte 4 = LSB, byte 5 = MSB) 

 

then multiply by 

0.125

 

 

and, when polled, return the result as a floating point value with 3 decimal places (

%.3f

 

followed by the text "

 rpm

" and a CRLF (

\n

). 

Note that for J1939, multi-byte fields are always specified LSB first (Intel format). It is not necessary to specify the 

n

 option 

after the 

FORMAT

 for RECVJ/RQSTJ slots. 

Request PGNs 

Some PGNs are not broadcast; they are only returned when specifically requested. For example, if the above PGN was 
actually a "request-only" PGN, the engine speed would then be obtained using: 
 

RQSTJ 1 61444 4 5 2 3 FORMAT .125 "%.3f rpm\n"; RP 

which looks very similar to the RECVJ slot definition. The 

RP

 on the end causes the memory slot to be immediately polled, 

which will cause the request to be immediately sent. (Note that it doesn't make sense to poll a RECVJ slot immediately after 
defining it, because at that time it is likely that no matching messages will have been received, in which case nothing will be 
returned.) 

Reusing Request Data 

Often a J1939 PGN will contain several separate parameters (which is why it is called a Parameter Group Number). These 
parameters are typically extracted using a number of memory slots, all with the same PGN but with different start and end 
bytes specified. The same is true for certain OBD PIDs. 
For requested PGNs, it is inefficient for each slot to send a separate request, particularly for multi-packet PGNs. Also, you 
may not get a consistent snapshot of all of a PGN's constituent parameters – that is, they may not have been measured at 
the same time (which may or may not be a problem). 
For this reason, CANgate will attempt to reuse requested data where possible, ie. a RQST/RQSTJ slot will use previously 
received reply data rather than sending a new request. This will, however, only be done if: 

 

the most recently sent request message exactly matches this slot's request message (ie. it's a request for the same 
PGN, same source and destination address and so on), and 

 

this is a different slot to the one which sent the request (or, if this and the requesting slot are both slot #0, then the two 
slot definitions are different in some way, eg. they are extracting a different range of bytes), and 

 

the reply data was received less than 5 seconds ago. 

The second condition means that if you repeatedly poll a group of slots, each of which extracts a different part of the same 
PGN, then only one request will be sent each time the group is polled – provided that the group is polled within 5 seconds. 

Summary of Contents for CANgate

Page 1: ...Intelligent Data Logging Products CANgate User s Manual A guide to programming wiring communications www datataker com...

Page 2: ...EPT AS EXPRESSLY PROVIDED IN THIS WARRANTY STATEMENT THERMO FISHER DISCLAIMS ALL OTHER WARRANTIES WHETHER EXPRESS OR IMPLIED ORAL OR WRITTEN WITH RESPECT TO THE INSTRUMENTS INCLUDING WITHOUT LIMITATIO...

Page 3: ...Summary 15 Command Reference 16 Commands and Parameters 16 Slot Definition Commands 16 RECV Receive Standard ID CAN Messages 16 RECVE Receive Extended ID CAN Messages 17 SEND Transmit Standard ID CAN...

Page 4: ...minal Control 30 KWP2000 OBD II ISO 14230 Requests 30 Reading Fault Codes 31 OBD II 31 J1939 31 Using CANgate with a DT8x Data Logger 32 Escaping Control Characters 32 Serial Sensor Direct Mode 33 Usi...

Page 5: ...N ports are hot pluggable and all CANgate settings are saved in non volatile flash memory so that the unit will resume its configured tasks following a power interruption Typical CANgate application A...

Page 6: ...Unit GPS Global Positioning System ID Identifier ISO International Standards Organisation NMEA National Marine Electronics Association OBD On Board Diagnostics PGN Parameter Group Number PID Parameter...

Page 7: ...ows Pin Signal Function 1 5V out 5Vdc output 200mA max 2 GND Ground 3 CAN1 HI CAN port 1 high 4 GPS RXD GPS port Receive Data input 5 CAN1 LO CAN port 1 low 6 CAN2 HI CAN port 2 high 7 CAN2 LO CAN por...

Page 8: ...agram Note By default the CANgate host port operates at a high baud rate 57600 baud At this speed the maximum cable length for the host computer or data logger connection is approximately 5 metres ass...

Page 9: ...ysical layer as defined in ISO 11898 2 SAE J2284 This is by far the most widely used physical layer The important characteristics of this standard are two wire 5V differential signalling bit rate 10kb...

Page 10: ...then an external termination resistor may be required Direct connection to a single ECU In this case a short 1m cable is used so the two 120 resistors are combined into one 60 resistor If a long cabl...

Page 11: ...ff off off x x x x off 38400 off off ON x x x x off 19200 off ON off x x x x off 9600 off ON ON x x x x off Host port baud rate 115200 ON off off x x x x off hardware x x x off x x x off Host port flo...

Page 12: ...sive and active For RECV RECVE RECVJ and GPS slots CANgate passively receives all matching messages then returns the last known data value either at a fixed rate or when requested by the host data log...

Page 13: ...ing Commands CANgate memory slots and other settings are configured by sending textual commands via the host port The available commands are detailed in the Command Reference P16 If CANgate is directl...

Page 14: ...cters after the apostrophe up until the end of the line will be ignored Run Mode and Program Mode CANgate has two operational modes Run Mode is the normal mode of operation Following power up CANgate...

Page 15: ...ddr sampleRate FORMAT options slot RECVJ CANport PGN startByte bit endByte bit ECUaddr priority sampleRate FORMAT options slot RQSTJ CANport PGN startByte bit endByte bit ECUaddr priority sampleRate F...

Page 16: ...ot specified then 8 is assumed If bit is not specified then 1 is assumed sampleRate is the rate at which to return values to the host integer in ms must be multiple of 100ms May also be ALL in which c...

Page 17: ...ed connect the two CAN ports together and set up the RECV slot on the other port Examples SEND 2 0x302 1122FF07 RP This will immediately send a CAN message on CAN port 2 The message s identifier will...

Page 18: ...negative response and indicates that an invalid request was made All messages are transmitted using the ISO 15765 network layer protocol This protocol fragments long messages into multiple CAN frames...

Page 19: ...slot That is it listens for CAN messages with a particular extended identifier extracts the required data field then returns it to the host when polled or at regular intervals or after every message...

Page 20: ...ter D or M or N default N If N normal is specified then the indicated field is returned as is Otherwise the indicated field and the next field are interpreted as a latitude or longitude value with for...

Page 21: ...specifies the data type integer floating point etc and possibly some other formatting details If no conversion specifier is present which is the default the data value will be output in raw hexadecim...

Page 22: ...that the last matching CAN message had the data 01234567AABBCCDD RECV 1 0x100 1 2 returns 0123 CR LF RECV 1 0x100 1 2 FORMAT 100 returns 29100 00 CR LF 0123 hex scaled by 100 RECV 1 0x100 1 2 FORMAT r...

Page 23: ...of responses may not match the order of the memory slots Examples RP 1 150 Poll all defined memory slots RQSTJ 2 65226 3 6 FORMAT f n RP SEND 1 0x142 112233 RP The RP command is often appended when d...

Page 24: ...time all incoming CAN messages on the specified port are received For each distinct CAN identifier that was received the following information is displayed identifier type standard 11 bit STD or exte...

Page 25: ...cified both CAN ports are measured This command measures the traffic load on one or both CAN ports and reports it as a percentage of the theoretical maximum for the bit rate in use It should be noted...

Page 26: ...es 2 8 end Flags c0820000 Sample 0 ms 1 RECV CAN1 RxID 0x0001 RxBytes 1 8 1 1 Flags c0020000 Sample 0 ms 2 RECV CAN1 RxID 0x0002 RxBytes 1 8 1 1 Flags c0020000 Sample 0 ms 3 RECV CAN1 RxID 0x0003 RxBy...

Page 27: ...s sent by CANgate will be displayed eg CAN2 TX 18EC00FF 132C0007 FFEBFE00 which shows that a message has been sent on CAN2 with identifier 0x18EC00FF and the indicated data value if bit 1 1 then all C...

Page 28: ...adcast PGNs J1939 based systems typically have a multitude of SPNs Suspect Parameter Numbers each representing an individual measured quantity or status A group of related SPNs will be broadcast over...

Page 29: ...d causes the memory slot to be immediately polled which will cause the request to be immediately sent Note that it doesn t make sense to poll a RECVJ slot immediately after defining it because at that...

Page 30: ...at any one time Terminal Control The following example is intended to be used with an ANSI VT100 terminal or emulator Two data values are extracted from received CAN messages with ID 0x212 and one fro...

Page 31: ...eg RQST 1 0101 RP 81066060 The most significant 8 bits 81 of the 32 bit result contains the most pertinent information In this case b31 is set which indicates that the Malfunction Indicator Light MIL...

Page 32: ...ed memory slots a number of 1SERIAL commands within one or more logger schedules typically one 1SERIAL command per parameter of interest These commands will normally send a poll command RP memslot the...

Page 33: ...logger connection from now on will be ignored by the logger and will instead be forwarded to the serial sensor port ie to CANgate Furthermore all normal text output from the logger eg real time data...

Page 34: ...also flash during the snoop If the CAN LED gives a brief flash at two second intervals then this may indicate that bus errors are occurring causing CANgate to disconnect from the bus then retry every...

Page 35: ...pear in the received data stream which will probably disrupt the parsing of the returned data With the logger in pass through mode verify that CANgate is configured for normal operation with no extran...

Page 36: ...message returned if in verbose mode CAN1 BUS ERROR DISCONNECTED The most common cause for this is an incorrectly configured bit rate although it may also be caused by noise or an intermittent electri...

Page 37: ...version 6 Type RESET to clear any existing CANgate configuration 7 Type VXVX All CANgate LEDs will turn on to indicate that the bootloader is active Some random characters may be returned as the bootl...

Page 38: ...1 stop bit Flow Control Not supported Protocols NMEA 0183 Host Data Logger Computer Interface 1 RS232 port Port Speeds 9600 19200 38400 57600 default 115200 baud Serial Parameters No parity 8 data bi...

Page 39: ...r Consumption Idle 0 75W 50mA 15V Maximum CANgate only 2 25W 150mA 15V Maximum CANgate external device drawing 200mA from 5V output 3 75W 250mA 15V Physical Construction Anodised aluminium plastic sur...

Page 40: ...ly to a mode 0x01 request The second byte is the PID and the third and subsequent bytes are the actual data value PID hex Data Size bytes Description Scale Offset Units 00 4 PIDs supported b31 0 PIDs...

Page 41: ...e travelled since DTCs cleared 1 0 km 32 2 Evaporative system vapour pressure 0 25 8192 Pa 33 1 Barometric pressure 1 0 kPa abs bytes 1 2 Sensor 1 WR lambda 1 Equivalence ratio 0 0000305 0 34 4 bytes...

Page 42: ...rain B body C chassis or U network For example P0118 Engine Coolant Temperature Circuit High Input P0203 Injector Circuit Malfunction Cylinder 3 U0003 High Speed CAN Communication Bus Open When a DTC...

Reviews: