To do so, note from the SPN info that the relevant data is in bytes 4 and 5, i. Taking the decimal form of the HEX value Intel byte order , we get in decimal. To arrive at the RPM, we conduct a scaling of this value using the offset 0 and the scale 0.
Note how some data bytes in the above are FF or decimal, i. A J DBC file can be used to decode data across most heavy-duty vehicles. Below we illustrate what real J data looks like. The 'raw' J data was recorded from a heavy duty truck using a CANedge2 , while the 'physical values' reflect the output after decoding the raw data via the free asammdf software and the J DBC.
Below is a CSV version of the raw J frames. The sample data also includes a demo J DBC so that you can replicate the conversion steps via asammdf. Once the raw J data is decoded and exported, the result is timeseries data with parameters like oil temperature, engine speed, GPS, fuel rate and speed:. For more on logging J data, see our J data logger and mining telematics articles.
Simply connect it to e. Most J messages are broadcast via the CAN bus, but some are only sent "on-request" e. On-request data often includes J diagnostic trouble codes DTCs , making it important in vehicle diagnostics. Below we briefly outline how it works:. It has priority 6, a variable transmit rate and can either be sent as a global or specific address request. The data bytes should contain the requested PGN Intel byte order.
Examples of requested J messages include the diagnostic messages e. J DM2. Sending request messages is typically key to requesting J codes and thus J diagnostics. One challenge, however, is that J loggers are often required to have a contactless connection to the J data link, meaning that they're unable to interact with the CAN bus and transmit J request frames.
The restriction is often related to warranty compliance as some vehicle manufacturers do not allow direct access by 3rd party devices via the J connector.
In some cases, it is required that the J analyzer is "physically" contactless, e. In other cases, it is sufficient that the J logger operates in "configurable" silent mode. The latter makes it easier to perform ad hoc requests for J fault codes, either via a manual configuration update or via an over-the-air update for the CANedge2.
Below we outline how the J transport protocol works, a practical J TP data example and how to decode multi-frame J messages via DBC files:. The J protocol specifies how to deconstruct, transfer and reassemble packets across multiple frames - a process referred to as the J Transport Protocol see J Two types of the J TP exist:.
The BAM specifies the PGN identifier for the multi-packet message as well as the number of data bytes and packets to be sent. Each of the packets use the first data byte to specify the sequence number 1 up to , followed by 7 bytes of data.
The final packet contains at least one byte of data, followed by unused bytes set to FF. In the BAM type scenario, the time between messages is ms. In post processing, a conversion software tool can reassemble the multiple entries of 7 data bytes into a single payload and handle it according to the multi-packet PGN and SPN specifications as found in e. Decoding J multiframe data is more complex than decoding standard J frames. To understand why, consider the below example of a J transport protocol response, recorded with the CANedge2 :.
This contains the response data length and J PGN. These contain the payload across multiple frames. Below we break down the J transport protocol example with focus on the data byte interpretation:.
Note: The last 3 data payload bytes in this practical example happen to be FF, yet we still include these in the payload as the BAM message specifies the data length to be The final 3 FF bytes in the 6th packet are unused.
With the method explained above, we have created a 'constructed' J data frame with a data length exceeding 8 bytes. The CANedge lets you request and record J transport protocol data. In our api-examples library on github, we provide a basic example of how J transport protocol data can be reconstructed and DBC decoded, incl.
J data from trucks, buses, tractors etc. By streaming decoded J data to a PC, technicians can perform real-time J diagnostics on vehicles. Rugged enough for both on- and off-the road vehicles, this 3-inch gauge communicates directly with the J CAN data bus.
In addition to a needle driven readout, it features an alphanumeric display for additional information. Like other VIS gauges, it can be configured for a wide variety of readouts, even custom readouts. By continuing to use the site, you agree to our Privacy and Cookie Policy.
The message is always sent to all nodes. A receiver cannot intervene in the communication. If the receiver misses a message, it cannot signal this. The receiver must wait for a new message, if necessary. Because the receiver is not able to influence the flow control in the BAM protocol, the sender must maintain a minimum interval between the individual packets.
This is ms. This allows possible slow network nodes to follow the communication. The J diagnostic interface defines a standard diagnostic connector as well as a set of PGNs for handling different diagnostic services. In contrast to the UDS diagnostics in which services have to be actively initiated via a software tool, J ECUs also send diagnostic messages independently during standard operation.
Errors that occur are evaluated directly in the network and visually displayed, if necessary. In parallel with that, errors can be read out with a tool via the diagnostic connector. It primarily represents an SPN whose current status is abnormal. This can have different causes. An indicator that gives the reason for the status is used to try to narrow down the actual cause of the error.
A DTC has a uniform structure and consists of the following elements:. SAE J includes two different approaches for transferring safety-critical data. One is the SAE J standard, which describes a general process for protecting a desired parameter group.
The other involves standardized parameter groups specified by SAE J featuring a built-in checksum and counter. The receiver consumer is responsible for checking the sequence and time limits, as well as the integrity, of the transferred data. An SDM may not be longer than 8 bytes.
This avoids the need for a transport protocol for transferring the message. In addition, the SDM must be sent with either a fixed or variable cycle time. An example of a variable cycle time would be every ms and whenever a change is made, but not faster than 20 ms. The J Digital Annex specifies checksums for over messages and message counters for the detection of fault conditions of the ECUs involved. The message counter and checksum are part of the payload data of a PG.
The message counter is increased by one each time a message is transferred. As the checksum is calculated from the payload data, the checksum also changes as a result of each correct transfer, regardless of whether or not other signals have changed. If, however, the message counter is not incremented for a subsequent transfer or the checksum does not match the payload data, the receiver can assume that the sender is in an error state.
The following graphic shows common combinations and positions of checksums and message counters, as well as the names of the messages which use this combination, for example. For better understanding, the five calculation rules are each provided with a capital letter A through E. Not only does the position in the message vary greatly in some cases, but the calculation formula for checksums does as well.
Essentially, five rules are used. With this quick overview in DIN format A1 mm x mm you always have the most important basics of the J protocol in mind. Order your own cheat sheet now with detailed information on the following topics:. Vector is a member of SAE J committees and participates regularly in the workshops. Thanks to Vector's expertise and many years' experience in the J environment, you profit from high-performance products and services with which you can solve your challenging problems more efficiently, faster, and more cost-effectively.
With a continuous tool chain for all J projects, Vector has the right solution for you:.
0コメント