This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Sn65hvd230 and beaglebone black

Other Parts Discussed in Thread: SN65HVD230

Will it be enough to just have a sn65hvd230 transceiver connected to pins 24 and 26 for can_rx and can_tx (respectively) and pins 2 and 4 for 3.3v and ground in order read can bus signals?

If not, what else do l need?

I'm using the 3.2 kernel on fedora and can-utils.

Thank you all for any help.

  • Kyle,

    This thread has been moved to the industrial interface forum for more appropriate support.

    Regards,
  • Hi Eric,

    Yes, those are the right connections. SN65HVD230 would also require the RS pin to be pulled low for "high speed" mode. Let me know if you have any other questions about the part.

    Regards,
    Max
  • Thanks Max,

    I'm not familiar with the RS pin , please enlighten me.
    Also, when you say "pulled low", do you mean going through a 120 ohm resistor to ground?
    I'm a noob , so please treat me as such....
  • Hi Kyle,

    It's just a control pin on this particular CAN transceiver. If you give it a high logic level, it will put the part in a low-power mode (non-operational). Pulling it low makes the part operate normally. The rise/fall times of the CAN output will vary based on the resistance that you use to pull RS to ground. Lower resistances give faster edges. You could just hard-short it to ground to get the fastest operation, or if you were only going to use the device at low rates then you could add a resistor in series to slow things down (which can be beneficial for EMI performance or for signal integrity in some cases).

    Best regards,
    Max
  • Hey Max, how would I go about testing the SN65HVD230 transceiver to see if it works properly without an oscilloscope?
  • Kyle,

    You could see if CAN communication is working between a couple of nodes. If not, you could check the state of each pin using a voltmeter. The VCC rail should be about 3.3 V with respect to ground, and Rs should be about 0 V. If the bus is idle, you should see a recessive level voltage on both CANH and CANL; this will be about 2.3 V. If the bus is active, you will see a voltage between 2.3 V and 3.3 V on CANH and between 0 V and 2.3 V on CANL (since the bus will be toggling between dominant and recessive levels, the voltmeter will give you a reading of the average value in time).

    Regards,
    Max
  • Hey Kyle,

    Just something to add: 

    With just one CAN node you probably won't be able to evaluate performance since there needs to be another node on the network which will "acknowledge" any messages being sent. Some CAN controllers can be set into a "self test mode" where the controller will artificially generate an "acknowledge" for itself. For example, our C2000 F28069M's CAN controller can be put into self test. I'm not aware of the ability to do this with CAN-utils. Otherwise, as Max mentioned, you could probe the bus to at least check idle levels. You could also simply set pin 26 (tx) as a GPIO and use it to toggle at some rate, then you can probe the CANH and CANL pins as Max said. If the transceiver is working correctly, signals at the tx pin will translate to differential signals on the CAN bus. Also keep in mind that with only one CAN transceiver on the bus, you will want to half the termination resistance from 120 to 60 ohms since typically with termination on each side of the bus, the drivers will see 120 and 120 in parallel. 

    Best Regards,

    Casey