Three Node CAN System on a Breadboard with ESP32 and Arduino Microcontrollers

Поділитися
Вставка
  • Опубліковано 1 тра 2023
  • In this video, I create a CAN bus on a breadboard with 3 devices. Two 3.3V ESP32s with TJA1050 CAN transceivers and a 5V Arduino Uno with MCP2515 CAN SPI module.
    This video is the summation of some of my previous videos, if you'd like to learn more about this system in detail, check out:
    [CAN Bus on a Breadboard with two ESP32s]
    • Making a CAN Bus on a ...
    [MCP2515 CAN Bus Module with Arduino]
    • MCP2515 CAN Bus Module...
    [CAN Bus Oscilloscope Measurements]
    • CAN Bus signals on a b...
    [CAN Protocol Theory]
    • CAN Protocol Explained...
  • Наука та технологія

КОМЕНТАРІ • 17

  • @arthurfricchione8119
    @arthurfricchione8119 9 місяців тому +1

    Hi Josh I’m a retired aircraft mechanic but I can’t stop learning that’s a good thing. So I dove into the world of todays computerized cars by taking on line classes and joining different groups. I’m now at the stage where I’ve become a fan of learning Arduino and how it is so versatile and now I’m into the world of CAN. I have all the equipment and boards to build the demos and your videos seem to cover everything . Thanks for sharing your knowledge. Artie 👍

  • @edinetgrunhed6000
    @edinetgrunhed6000 Рік тому +2

    finally, i found at last 2 ESP32 mixed with arduino, thank u bro!! very rare this kind of video in UA-cam perhaps the first

  • @LongDistanceSailor
    @LongDistanceSailor 5 місяців тому

    Thanks I think I'll use the TJA1050 chip in my project. Your video really helped

  • @fjkldhakljf
    @fjkldhakljf 6 місяців тому

    Thanks for the video its really informative , what are your thoughts on using Logic Level shifters on the CTX and CRX, I am afraid the 5v would fry the esp32 pin and I read that using current limiting resistors is not effective at high frequencies

  • @jmch1369
    @jmch1369 4 місяці тому

    Thank you, how would the receiver be programmed to receive data from several independent sensors?

  • @bennguyen1313
    @bennguyen1313 7 місяців тому

    Not too familiar with python, but I'd like to try using SocketCan with a Peak USB device to talk to my embedded can device!
    Only problem is that while PCAN-View software works fine, and the PCANBasic dll is in Windows\System32.. when I try to have python see it,
    network.connect(bustype='pcan', channel='PCAN_USBBUS1', bitrate=500000)
    it fails:
    OSError: PCANBasic library not found.
    Any suggestions? Like how to force python to look for it in the standard system32 dll folder?

  • @user-rk9zx3lt8k
    @user-rk9zx3lt8k 10 місяців тому +1

    Hi, thanks a lot for your video, this is the most useful video in the earth.
    one question which make me confuse. On the esp32, you use can.h && library, but on the arduino, you use spi.h and mcp2512. h libray.
    could I only use can.h library for both of them esp32 and uno??
    why in arduino IDE, you use two different library?
    thanks!!

    • @EV_engineer
      @EV_engineer  9 місяців тому

      Hi, I randomly selected Arduino CAN drivers I found online. The fact that there are multiple libraries you can choose from that all do the same thing speaks to the versatility of Arduino. Take your pick!

    • @user-rk9zx3lt8k
      @user-rk9zx3lt8k 9 місяців тому

      thanks a lot!@@EV_engineer

  • @TechnopolisDotTV
    @TechnopolisDotTV Рік тому

    Thanks, for the video. I just realized you using TJA1050 and not SN65HVD230DR. Perhaps thats the issue why my setup does not work!? 🤔

    • @EV_engineer
      @EV_engineer  Рік тому +1

      Just googled SN65HVD230DR, seems to require 3.3V supply voltage fyi

    • @TechnopolisDotTV
      @TechnopolisDotTV Рік тому

      ​@@EV_engineer Yes, you're right. The issue is that for some reason it does not work if you mix it with the MCP2515 CAN SPI module. On the same bus, only the Arduino Uno's talk to each other as long they not blocked when the ESP32 talk to each other.

  • @SergAllen
    @SergAllen Рік тому

    Hi. How can I get a specific byte from a specific identifier?
    Example: identifier 0x480 2 01 02
    I want to output only 480 and 02 to the port
    I am using ESP32 and I only need to get certain data

    • @EV_engineer
      @EV_engineer  Рік тому

      So you have the ID stored in RAM? Why not just bit shift the data

  • @02__76
    @02__76 2 місяці тому

    I can send the data but I can not receive the data help me pls

  • @CrisHarrison
    @CrisHarrison 7 місяців тому +1

    Josh, You are saying "transceiver" BUT you really don't understand CANbus at all! you are using them in a Master-Slave relationship! CANbus has NO MASTERs or SLAVEs! They are role-agnostic! which means any LRU or node on the system can Send or Receive messages. I work with a form of CANbus protocol called CANaerospace which sort of morphed into ARINC-825. My stuff works on the Arduino Mega with a MCP module and yes you have to use the interrupt. from the module to the Mega. This tells the Mega that It has a filtered message in its buffer! ~~"They can see but they are blind."

    • @drgellner
      @drgellner 7 місяців тому +4

      Do we really need this: "... you really don't understand CANbus at all"?
      Sure, you are right with the master/slave point. Fine. Improving or correcting such contributions is always helpful. But I strongly dislike bashing of works that people show. From my perspective the author shows here a rare solution of CAN tutorials with more than 2 nodes (which is covered very often here on YT) and he used not only the same MCP2515 controllers as shown on another hundred other videos. That makes this video nearly unique. I prefered less demotivating hints and recommendations.