Learn How The CAN Bus Works (Controller Area Network) | Embedded Systems Explained

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 ธ.ค. 2024

ความคิดเห็น • 77

  • @TheFabytm
    @TheFabytm  2 ปีที่แล้ว

    Watch an in-depth video on the LIN bus (Local Interconnect Network): th-cam.com/video/WePC4ZShsHA/w-d-xo.html

  • @paulw2791
    @paulw2791 3 ปีที่แล้ว +9

    As a dealer mechanic, thank you. It blows my mind over 70% of dealer techs have no concept on basics of can bus or any datalink (multiplexing) in general. Very awesome to see someone with computer science explain this. I've understood the concept with no electrical background and specialize on hard electrical diags under warranty at a major truck dealer. This helped astronomically.

  • @RufusVidS
    @RufusVidS 2 ปีที่แล้ว +5

    I've worked with can bus a lot, specifically the extended can used in J1939 and NMEA 2000 busses. This is an excellent informational video, well done!

    • @TheFabytm
      @TheFabytm  2 ปีที่แล้ว

      I’m glad you liked the video!

  • @ryansand8158
    @ryansand8158 2 ปีที่แล้ว +1

    This is the best concept overall review of canbus on youtube. Everyone else dosent explain it without micro details or just bad super high level.

    • @TheFabytm
      @TheFabytm  2 ปีที่แล้ว

      I’m really glad you found it useful!

  • @mathemabeat009
    @mathemabeat009 4 ปีที่แล้ว +7

    Thank you for making the internet a good place

    • @TheFabytm
      @TheFabytm  4 ปีที่แล้ว

      Thanks! You might also enjoy the other videos in my Embedded Systems series!

  • @rokljhui864
    @rokljhui864 3 ปีที่แล้ว +2

    Nice use of pictures and clear diagrams. We can now see how this chaotic bus doesn't fall apart when multiple nodes decide to flip bits because they decide the CRC is wrong.

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว

      Thanks, yes indeed, it is a reliable bus!

  • @stuartmccowan8383
    @stuartmccowan8383 3 ปีที่แล้ว +2

    Very good, clear and fast explanation. Thank you very much

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว

      Awesome, glad it helped you!

  • @johnthompson3643
    @johnthompson3643 3 ปีที่แล้ว +1

    Wow! Very informative, thank you! I'm now a CAN expert!

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว

      Glad to hear!

  • @iam1smiley1
    @iam1smiley1 3 ปีที่แล้ว +28

    The more I learn, the more I realize how much I don't know 🙃

  • @angiebocanegraschreiber9141
    @angiebocanegraschreiber9141 3 ปีที่แล้ว +3

    Amazing!! Thank you so much for adding subtitles it's so helpful for people like me who first language is not english

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว +1

      Thank you, yes, subtitles help a lot of people!

  • @andreeabran8920
    @andreeabran8920 2 ปีที่แล้ว +1

    Great video! Clear, concise and full of information.

  • @akashbhat2778
    @akashbhat2778 4 ปีที่แล้ว +3

    Clear and crisp explanation ! Videos on RTOS could be helpful .

    • @TheFabytm
      @TheFabytm  4 ปีที่แล้ว +1

      Thank you, I still have to experiment with RTOS in order to be able to do a video about it.

  • @gulianjungu5756
    @gulianjungu5756 3 ปีที่แล้ว +2

    Watch your videos to learn embedded and English, amazing!

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว

      Thanks, I’m glad it helps!

  • @jfaucheux2710
    @jfaucheux2710 3 ปีที่แล้ว +2

    Thanks a lot. Very informative, to the point and well done!

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว +1

      Thank you! The fact that people find this useful makes me glad I did this series!

  • @theSEGAtwistisover9k
    @theSEGAtwistisover9k 3 ปีที่แล้ว +1

    excellent thank you, every other video on this subject I've seen so far has been CAN is how brumbrum parts talk to each other haha

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว +1

      Thank you, this is the point of these videos, to make these topics as easy to understand as possible!

    • @theSEGAtwistisover9k
      @theSEGAtwistisover9k 3 ปีที่แล้ว

      @@TheFabytm you gave a lot more detail than many other videos I've watched much appreciated 👌

  • @BreatheFreeDrifting
    @BreatheFreeDrifting 3 ปีที่แล้ว +1

    Excellent explanation thank you

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว

      I’m glad you found it helpful!

  • @pranavpatil7312
    @pranavpatil7312 5 หลายเดือนก่อน

    Can i use RS 485 expansion board with the jetson nano development board to implement CAN communication between the different sensors and microcontroller to control the motor wit CAN compatible motor driver to control the motor ??
    and for a DC motor how I can find the motor controller which is compatible for CAN communication ??
    where I can get the basics video to learn and implement the CAN protocols in project ??

  • @emmanuelnoguez8212
    @emmanuelnoguez8212 4 ปีที่แล้ว +3

    Excellent! I can't wait for the next video, maybe you already take into account, but would you like to talk about low power modes?

    • @TheFabytm
      @TheFabytm  4 ปีที่แล้ว +3

      Thanks a lot!
      I didn’t think about this topic, but it’s a great one, and really important so I will definitely talk about it in a future video (perhaps in 2 weeks)!Thanks for the idea!

    • @emmanuelnoguez8212
      @emmanuelnoguez8212 4 ปีที่แล้ว +1

      ​@@TheFabytm
      You're welcome and I will be wait that video!

  • @TheFabytm
    @TheFabytm  4 ปีที่แล้ว +4

    What would you like to learn about next in the Embedded Systems Explained series? 💡
    Embedded Systems Explained playlist: th-cam.com/play/PLeAb9_hv082weQ10WcvFfLBlNcCYXlQ4q.html

    • @ShahHarsh1999
      @ShahHarsh1999 4 ปีที่แล้ว +1

      I would like to learn about the real time operations and networking of system how the data is carried & travels bunch of data (in terms of GB) from one end to another far end also includes about Multitasking. And all of stuffs.
      Requesting for separately explanation each topics.
      Thanking you to share knowledge of yours😊

    • @TheFabytm
      @TheFabytm  4 ปีที่แล้ว

      @@ShahHarsh1999 This might be the next series, as your topics aren't really about Embedded Systems. I've taken note of your idea!

  • @wei48221
    @wei48221 4 ปีที่แล้ว +1

    Thank you for this video.

    • @TheFabytm
      @TheFabytm  4 ปีที่แล้ว

      I’m glad you found it helpful!

  • @hfe1833
    @hfe1833 3 ปีที่แล้ว +1

    Well explained

  • @platafacturi8774
    @platafacturi8774 2 ปีที่แล้ว +1

    You are great!

    • @TheFabytm
      @TheFabytm  2 ปีที่แล้ว

      Thanks, you’re great too, but did you pay your bills? 😏😂

  • @astrodrmr4482
    @astrodrmr4482 3 ปีที่แล้ว

    Why does the CAN bus still take a performance hit with one wire? Isn't the data still sent at the same rate?
    Also the bit you were saying about frame checking got a bit garbled. Frame checking is making sure all the parts of a CAN message are present... "and if things such as a recessive...the limiter bit is present after the CRC and Acknowledge field." .....what? What is a limiter bit? Do you mean frame checking is part of the CRC/ACK process? So if the frame check doesn't seem right the node will leave the ACK high/recessive so that the message is resent?
    Thank you so much! This video was wonderful! :D

    • @MrPokoloco
      @MrPokoloco 2 ปีที่แล้ว

      I think it takes a performance for two reasons, one: because the processor is checking for the differential. The processor is expecting CAN High and CAN Low to either be the same voltage (2.5V) or offset by +1.25V for CAN High and -1.25V for CAN Low from the "recessive state" voltage. Not only that, but if one of the lines fails and just reads zero, the differential can no longer occur because the resistances can no longer provide the necessary impedance for reflection blocking. Open circuits means current can't flow, thus a performance drop due to reflected waves.

  • @sosolyricsworld
    @sosolyricsworld 4 ปีที่แล้ว +2

    Pls someone help. What's the best programming language for embedded systems programming?

    • @TheFabytm
      @TheFabytm  4 ปีที่แล้ว +2

      Do you currently have any experience with a programming language?

    • @sosolyricsworld
      @sosolyricsworld 4 ปีที่แล้ว +1

      Yes please
      I do software programming in Python

    • @TheFabytm
      @TheFabytm  4 ปีที่แล้ว +1

      If you don’t feel comfortable jumping into C or C++, you could try MicroPython.

    • @sosolyricsworld
      @sosolyricsworld 4 ปีที่แล้ว

      @@TheFabytm from your shortlist, I think I might just do C++

    • @sosolyricsworld
      @sosolyricsworld 4 ปีที่แล้ว

      @@TheFabytm Much thanks

  • @ryanbello951
    @ryanbello951 4 ปีที่แล้ว +1

    Thank you

    • @TheFabytm
      @TheFabytm  4 ปีที่แล้ว

      Thank you! Make sure to check out the other videos in the series if you haven’t already!
      Playlist: th-cam.com/play/PLeAb9_hv082weQ10WcvFfLBlNcCYXlQ4q.html

  • @micjon7620
    @micjon7620 4 ปีที่แล้ว +1

    I bought 2 controllers from a manufacturer whom I'm having problems with getting the how to connect CAN cable to the two controllers. As I'm not technically equipt to read electrical diagram and was promised pic. image of the wiring and have been unable to get image, I obiously have nightmare of a situation. Is there any way you can help? Thank you in anticipation.

    • @TheFabytm
      @TheFabytm  4 ปีที่แล้ว

      Could you tell me what microcontroller you are talking about? I’ll see what I can find out!

  • @frundlemud
    @frundlemud 3 ปีที่แล้ว

    excellent.

  • @michaelmolter8828
    @michaelmolter8828 2 ปีที่แล้ว +2

    So many videos just give high level protocol details. The stuff you don’t really need to implement it. Super difficult to find actual implementation examples.

  • @scoweddiego
    @scoweddiego 3 ปีที่แล้ว +1

    Is that a Mac with a dell monitor?!

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว

      It is indeed and I don’t see a problem with it :D

  • @frightrisk7407
    @frightrisk7407 3 ปีที่แล้ว +2

    Good, and thank you. You did go a bit too fast I have the same tendency. Anlso, more diagrams to go with the words would help a great deal. Good work!

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว

      Thanks, you’re right, I should slow down!

  • @BEYTEK
    @BEYTEK 3 ปีที่แล้ว +1

    Jeees this is still above me. Whats a node.

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว +1

      A node is basically a device that is connected to the bus and is able to communicate with the other devices on the bus.

    • @BEYTEK
      @BEYTEK 3 ปีที่แล้ว

      @@TheFabytm ahh ok, so my ecu is one and dash is another

  • @grigorgeorgiev4015
    @grigorgeorgiev4015 4 หลายเดือนก่อน

    Awesome information, thanks a lot! As constructive feedback, it is a bit hard for me to follow your quick explanations and switching to new topics, so I have to often pause and rewind which is not comfortable. Maybe you can consider slowing down by 10-20% your pace, would help a lot.

  • @mikeadler434
    @mikeadler434 ปีที่แล้ว

    👍👍

  • @ShaikArif-gg3bd
    @ShaikArif-gg3bd ปีที่แล้ว

    Inter frame space is a 3 bit Recessive and u mentioned as 7 bit Please correct !

  • @paulwood3460
    @paulwood3460 3 ปีที่แล้ว +1

    👏👏👏👏👏👍👍👍👍👍👏👏👏👏👏

  • @pavlo.kostiuk
    @pavlo.kostiuk 2 ปีที่แล้ว +1

    It really fast for to understand

    • @TheFabytm
      @TheFabytm  2 ปีที่แล้ว

      Feel free to pause and repeat sections as needed!

  • @MePeterNicholls
    @MePeterNicholls 3 ปีที่แล้ว

    This is quite a thing

  • @paulfoldes3873
    @paulfoldes3873 2 ปีที่แล้ว

    you taking to fast please slow down

  • @slandrei
    @slandrei 3 ปีที่แล้ว +2

    You are speak too fast

    • @TheFabytm
      @TheFabytm  3 ปีที่แล้ว +1

      I’ll keep this in mind for the next video! Thanks for the feedback!