In the examples to follow, we will describe how to use the Teledyne LeCroy MDA810 Motor Drive Analyzer equipped with the CANbus TDME Symbolic software option to decode CAN serial data and extract speed information from a specific CAN ID. The MDA displays the speed information as a Numeric mean value or a Waveform (speed vs. time) of the motor shaft speed. We show an example of a vehicle wheel motor rotating at a high speed.

CAN Symbolic Decode

Figure 1 shows the setup dialog for symbolically decoding a CAN serial data signal acquired with Channel 4 of the MDA. The CAN signal’s data rate is 1 Mb/s with decoding done symbolically using a .dbc Symbol File.

Figure 1:

CAN symbolic decode setup dialog

The CAN Symbolic decode table appears in Figure 2. Note that the table displays only one message at a time. There are over 10,000 unique CAN messages in this 10-second acquisition.

Figure 2:

CAN symbolic decode table

Extraction of CAN Digital Data

The CANbus TDME Symbolic software option for the MDA extracts digital data from a specific ID and data location, rescales it, selects units, and displays it as a measurement value. Figure 3 shows the setup dialog in which we select the CANtoValue parameter. To the right of that, we filter by ID in the “Main” tab.

Figure 3:

CANtoValue digital data extraction setup dialog

Then, we select a specific ID (283) and a specific data location in the ID and Value tabs, respectively (top-left and top-right images in Figure 4). Or, we simply select a signal by browsing the .dbc file, and this information automatically populates the ID and Value setup (shown in the bottom portion of Figure 4).

Figure 4:

ID and Data Value setup dialogs (top left and right) and CAN symbolic message selection from signal list (bottom)

This creates a measurement setup for measurement parameter definition 1 (P1), which we use in the MDA.

Speed Setup in the MDA Using CAN Data

Figure 5 shows the setup dialog in the MDA for Mechanical speed, angle, and torque setup. We invoke the Speed & Angle Setup 1 and choose the method as CAN, and define the source as P1 (from above).

Figure 5:

Calculated per-cycle Power (top), Torque (middle top), Speed/Angle (middle bottom) and Efficiency (bottom) Waveforms.

We show the complete set of acquisition data in Figure 6. The top-left grid shows the three motor voltage waveforms. The bottom-left grid shows the three motor-current waveforms. The upper-right grid shows the CAN data acquisition. The bottom-right grid (orange trace) shows the Speed Waveform. The Numerics table displays the Speed1 mean value data for the full 10-second acquisition. The Numerics table also displays other mean values for the Drive Output.

Figure 6:

Complete acquisition data for motor voltage and current (left), CAN data (top right), and Speed Waveform (bottom right), with CAN Decode table and Numerics table data (bottom)

From the Speed1 Waveform, we can see that there appear to be some anomalous readings that deserve further investigation or comparison with another speed sensor. We would use the Speed2 setup in the MDA to calculate speed values using a different reference sensor (quadrature encoder, or QEI, Resolver, analog tachometer, etc.), display them as a Speed2 Waveform, and compare the results to the Speed1 Waveform based on the extracted CAN data.


The Teledyne LeCroy Motor Drive Analyzer, equipped with the CANbus TDME or TDME Symbolic option, easily decodes CAN serial data, extracts digital values, and rescales them to an analog value. This extracted information displays as a Speed1 mean Numeric value and as a time-correlated Waveform. A separate speed (or torque) sensor does not have to connect to the MDA. Furthermore, it is possible to validate or debug the CAN Speed data by comparing it to a reference sensor.