﻿WEBVTT

NOTE This file was exported by MacCaption version 7.0.13 to comply with the WebVTT specification dated March 27, 2017.

00:00:04.438 --> 00:00:07.641 align:center line:-1 position:50% size:40%
We'll pick up where we left off
during the last demonstration

00:00:07.641 --> 00:00:12.446 align:center line:-1 position:50% size:39%
and do some further analysis
on this CANbus signal.

00:00:12.446 --> 00:00:17.718 align:center line:-1 position:50% size:49%
Looking at these particular bits here,
this is a frame called "Brake torque,"

00:00:17.718 --> 00:00:19.386 align:center line:-1 position:50% size:43%
that's the name of the message.

00:00:19.386 --> 00:00:27.194 align:center line:-1 position:50% size:61%
Notice at the end of the frame, there's a pulse
that goes to a lower or a more dominant level.

00:00:27.194 --> 00:00:31.265 align:center line:-1 position:50% size:41%
This is because after the node
that generates brake torque,

00:00:31.265 --> 00:00:37.337 align:center line:-1 position:50% size:64%
all other nodes will pull on
the acknowledgement bit if it sees a valid frame,

00:00:37.337 --> 00:00:41.508 align:center line:-1 position:50% size:43%
It pulls more current
and takes it to a lower low level.

00:00:41.508 --> 00:00:46.480 align:center line:-1 position:50% size:49%
It makes it easy to see if each frame
is acknowledged.

00:00:46.480 --> 00:00:48.982 align:center line:-1 position:50% size:60%
Look over here at the beginning of the frame.

00:00:48.982 --> 00:00:51.485 align:center line:-1 position:50% size:43%
Something similar is happening.

00:00:51.485 --> 00:00:54.988 align:center line:-1 position:50% size:50%
Let's zoom in on that a little bit closer,

00:00:54.988 --> 00:01:02.362 align:center line:-1 position:50% size:59%
and you'll see, again, it appears to be
randomly jumping to a more dominant level.

00:01:02.362 --> 00:01:05.232 align:center line:-1 position:50% size:40%
This is evidence of arbitration.

00:01:05.232 --> 00:01:12.205 align:center line:-1 position:50% size:64%
Multiple nodes are beginning to transmit frames
at nearly the same time,

00:01:12.205 --> 00:01:15.809 align:center line:-1 position:50% size:53%
and they have different levels of priority.

00:01:15.809 --> 00:01:18.979 align:center line:-1 position:50% size:63%
Let's do some analysis on this particular frame.

00:01:18.979 --> 00:01:26.253 align:center line:-1 position:50% size:61%
First of all, let's use Segmented Memory
and just see how often does this frame occur.

00:01:26.253 --> 00:01:30.190 align:center line:-1 position:50% size:42%
I'll go into the acquisition menu.

00:01:30.190 --> 00:01:32.459 align:center line:-1 position:50% size:45%
Let's select "Segmented Memory,"

00:01:32.459 --> 00:01:38.899 align:center line:-1 position:50% size:62%
and let's capture 100 consecutive occurrences
of this particular frame.

00:01:44.237 --> 00:01:48.809 align:center line:-1 position:50% size:44%
There, you can see in the Lister,
every acquisition that it captured

00:01:48.809 --> 00:01:52.980 align:center line:-1 position:50% size:53%
was the message called "Brake torque."

00:01:52.980 --> 00:01:58.652 align:center line:-1 position:50% size:60%
Over here, on the Segmented table,
we can see how often this frame is occurring

00:01:58.652 --> 00:02:01.121 align:center line:-1 position:50% size:40%
which is called the cycle time.

00:02:01.121 --> 00:02:05.959 align:center line:-1 position:50% size:57%
We can see that it's occurring every 20 ns.

00:02:05.959 --> 00:02:14.434 align:center line:-1 position:50% size:56%
In this case, we captured 100 consecutive
occurrences for approximately 2 seconds.

00:02:14.434 --> 00:02:18.372 align:center line:-1 position:50% size:63%
Let's turn off Segmented Memory, press "Run,"

00:02:18.372 --> 00:02:24.144 align:center line:-1 position:50% size:46%
and now, let's set up the scope
to trigger not only on brake torque

00:02:24.144 --> 00:02:28.815 align:center line:-1 position:50% size:42%
but trigger on brake torque only
when arbitration occurs.

00:02:28.815 --> 00:02:38.258 align:center line:-1 position:50% size:48%
For that, we can use "Zone Trigger."

00:02:38.258 --> 00:02:47.300 align:center line:-1 position:50% size:40%
Now, it's only acquiring frames
when arbitration occurs.

00:02:47.300 --> 00:02:55.675 align:center line:-1 position:50% size:61%
Let's go back to Segmented Memory and let's
capture 100 consecutive occurrences of this

00:02:55.675 --> 00:02:58.412 align:center line:-1 position:50% size:50%
and see how often arbitration occurs.

00:03:02.482 --> 00:03:10.657 align:center line:-1 position:50% size:63%
Here, we can see the first two segments,
they were 20 ms apart, which is the cycle time.

00:03:10.657 --> 00:03:18.065 align:center line:-1 position:50% size:45%
The second one was 80 ms later,
then 20 ms, 80 ms, and so on.

00:03:18.065 --> 00:03:20.434 align:center line:-1 position:50% size:43%
There's a repeating pattern here,

00:03:20.434 --> 00:03:25.005 align:center line:-1 position:50% size:56%
and that's because
I'm using an arbitrary waveform generator

00:03:25.005 --> 00:03:28.075 align:center line:-1 position:50% size:58%
to produce this waveform, and it's repeating.

00:03:28.075 --> 00:03:33.380 align:center line:-1 position:50% size:41%
In reality, if you're monitoring
live traffic from an automobile,

00:03:33.380 --> 00:03:37.451 align:center line:-1 position:50% size:44%
it's going to be relatively random.

00:03:37.451 --> 00:03:44.291 align:center line:-1 position:50% size:64%
Let's now go back, turn off Segmented Memory,
turn off Zone Trigger.

00:03:46.660 --> 00:03:51.398 align:center line:-1 position:50% size:47%
Remember, when we capture
multiple frames here consecutively,

00:03:51.398 --> 00:03:55.035 align:center line:-1 position:50% size:33%
we can see occasionally
the red hopping in here.

00:03:55.035 --> 00:03:59.272 align:center line:-1 position:50% size:59%
These are errors that the scope is capturing.

00:03:59.272 --> 00:04:03.410 align:center line:-1 position:50% size:48%
Let's uniquely trigger now on errors.

00:04:03.410 --> 00:04:10.217 align:center line:-1 position:50% size:38%
I'll go into the Trigger menu,
select "Trigger on all errors."

00:04:16.289 --> 00:04:20.694 align:center line:-1 position:50% size:54%
Let's scale it to about 30 μs per division.

00:04:20.694 --> 00:04:23.663 align:center line:-1 position:50% size:45%
Now, it's capturing multiple errors.

00:04:23.663 --> 00:04:32.806 align:center line:-1 position:50% size:70%
Let's go into the Segmented Memory menu and let's
capture 100 consecutive occurrences of errors.

00:04:34.174 --> 00:04:37.844 align:center line:-1 position:50% size:66%
Here, you can see how often errors are occurring.

00:04:37.844 --> 00:04:41.715 align:center line:-1 position:50% size:47%
Over here in the Lister you can see
the different type of errors.

00:04:41.715 --> 00:04:48.121 align:center line:-1 position:50% size:54%
This particular frame has a stuff-bit error.

00:04:48.121 --> 00:04:54.794 align:center line:-1 position:50% size:51%
This particular frame has a CRC error
and an acknowledge error.

00:04:54.794 --> 00:05:00.333 align:center line:-1 position:50% size:61%
We could further filter down on specific errors,
so let's do that.

00:05:00.333 --> 00:05:03.036 align:center line:-1 position:50% size:45%
Let's turn off Segmented Memory.

00:05:03.036 --> 00:05:08.675 align:center line:-1 position:50% size:58%
Go back into the Trigger menu,
and then rather than triggering on all errors,

00:05:08.675 --> 00:05:13.380 align:center line:-1 position:50% size:58%
let's trigger uniquely only on stuff-bit errors.

00:05:15.649 --> 00:05:18.952 align:center line:-1 position:50% size:47%
Let me rescale the time base here.

00:05:26.293 --> 00:05:32.032 align:center line:-1 position:50% size:53%
We'll go back into the acquisition menu,
select "Segmented,"

00:05:32.032 --> 00:05:41.474 align:center line:-1 position:50% size:62%
and let's capture 100 consecutive occurrences
of frames that have stuff-bit errors.

00:05:47.514 --> 00:05:53.753 align:center line:-1 position:50% size:42%
Here, we can see stuff-bit errors
are occurring every 100 ms.

00:05:53.753 --> 00:06:00.393 align:center line:-1 position:50% size:59%
Again, we have a repeating pattern because
it's from the arbitrary waveform generator.

00:06:00.393 --> 00:06:09.069 align:center line:-1 position:50% size:61%
Stuff-bit errors occur only in a particular frame
called transG or something like that.

00:06:10.337 --> 00:06:16.810 align:center line:-1 position:50% size:63%
Here, you've been able to see how you can use
Zone Trigger to uniquely trigger on arbitration

00:06:16.810 --> 00:06:23.383 align:center line:-1 position:50% size:56%
as well as Segmented Memory to capture
multiple occurrences of particular events

00:06:23.383 --> 00:06:25.752 align:center line:-1 position:50% size:29%
over a long timespan.

