Our VIP Package gets you every single course at 80% off the individual price. For a limited time, save an additional $100 with coupon code 100VIP. Learn more

CAN Bus Communications Decoded: CAN 2.0A, 2.0B and CAN-FD

Watch This Course

$199.00 USD $129.00 USD

-OR-
Or 8 weekly payments of only $16.13 Instant access. Easy checkout. No fees. Learn more
Course Access for Life
60 day money back guarantee

CAN 2.0A, 2.0B and CAN-FD

03.09

00:00 - There have been a couple of modifications to the CAN standard over the years and a couple of terms you're likely to encounter when specifying CAN devices are CAN 2.0A, 2.0B, standard and extended parameter IDs.
00:13 The original CAN specification defined the PID length as 11 bits meaning it could have a value in decimal between 0 and 2047 so that is only 2048 unique PIDs that were available.
00:28 In practice though, because of the way the priority system is implemented, the real world number of available PIDs is often far less than this.
00:35 Once CAN started being used in industry, it became clear that this limit on available PIDs could easily be reached so the CAN 2.0B specification was then released.
00:46 CAN 2.0B ups the number of bits used for the frame PID to 29, meaning there are now more than 500 million unique PIDs available.
00:55 In practice, this is far more PIDs than should ever be required so this limit is not likely to cause any issues any time soon.
01:02 Often you'll hear these CAN specifications referred to as standard PID and extended PID.
01:08 These terms mean the same thing as CAN 2.0A and 2.0B.
01:13 CAN 2.0B is backwards compatible with 2.0A, meaning a device specified to adhere to 2.0B, can both receive and transmit 2.0A frames as well.
01:26 If a 2.0A device sees a data frame with an extended 2.0B PID format however, it will throw an error.
01:34 If you've created a bus that has both 2.0A and 2.0B devices on it, you need to program all the 2.0B devices to transmit standard frame PID data.
01:45 So that's put them in 2.0A mode.
01:48 That way, everything will be compatible in our performance automotive applications.
01:53 In our performance automotive applications then limit of 2048 unique PIDs is more than enough and this doesn't cause us any problems in practice.
02:03 CAN FD is a relatively recent update to the CAN standard.
02:06 The FD stands for flexible data rate which is the main change from the CAN 2.0B standard.
02:13 That said, there are a couple of other important changes as well.
02:16 The overall maximum transmission speed has been increased from 1 Mb per second to 8 Mb per second and the maximum length of the data section of a frame has been increased to 64 bytes.
02:27 And there has been facility added to allow the arbitration and controlled sections of a data frame to be sent at a fixed speed with the data section then transmitted at a higher rate.
02:37 This eliminates the need to manually configure the bus transmission speed for every device.
02:43 CAN FD has not yet widely been adopted by the performance automotive aftermarket so we're not going to be covering it specifically in this course.
02:50 But if you do encounter it in an OEM application, make sure to purchase a CAN sniffing tool that supports the protocol and you should be able to interface with the data stream.