Changes between Version 6 and Version 7 of canbus


Ignore:
Timestamp:
08/31/2018 06:29:56 PM (15 months ago)
Author:
Tim Harvey
Comment:

added termination details

Legend:

Unmodified
Added
Removed
Modified
  • canbus

    v6 v7  
    88CAN bus was originated in 1983 at Bosch and was released in 1986 at the Society of Automotive Engineers (SAE). The first CAN controller chips were produced by Intel and Philips and came to market in 1987. The CAN 2.0 spec was published in 1991.
    99
    10 
    11 == Signalling and Termination
     10High-Speed/FD (Flexible Data-Rate) CAN is the most common CAN transceiver and is used in nearly every production automobile and is required in model year 2008 and later ODB-II vehicles sold in the USA. The High-Speed CAN is the fastest form of CAN which allows use of the full standard speed up to 1 Mbit/s.
     11
    1212CAN is a form of multidrop serial communications using a differential signal making it suitable for noisy environments. As it is differential the bus is made of up two wires:
    1313 * CAN_H
     
    1616The voltage drop from CAN_H to CAN_L determines a 0 or a 1 bit.
    1717
    18 Typically a CAN bus network requires a single 120ohm termination resistor at each end of the bus (these are in parallel so a properly terminated bus should have a total resistance of 60 ohms). The maximum distance for any device from the bus is six meters.
     18The maximum distance for any device from the bus is six meters.
     19
     20
     21== Signalling and Termination
     22For high-speed/FD CAN, both ends of the pair of signal wires (CAN_H and CAN_L) must be terminated which is typically done with a 120ohm resistor across the pair. These are in parallel so a properly terminated bus should have a total resistance of 60 ohms. This is because communication flows both ways on the CAN bus. The termination resistors on a cable should match the nominal impedance of the cable.
    1923
    2024
     
    5458== Gateworks Hardware
    5559The following Gateworks products have CAN:
    56 ||= Family =||= Board =||= Device =||= Driver =||= STBY =||= Notes =||
    57 || Newport  || GW6404-B+ || [http://dev.gateworks.com/datasheets/MCP25625.pdf MCP25625] || mcp251x || N/A || ^^^1^^^ ||
    58 ||          || GW6304-E+ || [http://dev.gateworks.com/datasheets/MCP25625.pdf MCP25625] || mcp251x || N/A || ^^^1^^^ ||
    59 ||          || GW6204-B+ || [http://dev.gateworks.com/datasheets/MCP25625.pdf MCP25625] || mcp251x || N/A || ^^^1^^^ ||
     60||= Family =||= Board =||= Device =||= Driver =||= STBY =||= Termination =||= Notes =||
     61|| Newport  || GW6404-B+ || [http://dev.gateworks.com/datasheets/MCP25625.pdf MCP25625] || mcp251x || N/A || R138 120ohms || ^^^1^^^ ||
     62||          || GW6304-E+ || [http://dev.gateworks.com/datasheets/MCP25625.pdf MCP25625] || mcp251x || N/A || R151 120ohms || ^^^1^^^ ||
     63||          || GW6204-B+ || [http://dev.gateworks.com/datasheets/MCP25625.pdf MCP25625] || mcp251x || N/A || R171 120ohms || ^^^1^^^ ||
    6064|| ||
    61 || Ventana  || GW551x+GW16111 || IMX6 || flexcan || || ^^^2^^^ ||
    62 ||          || GW54xx    || IMX6 / [http://dev.gateworks.com/datasheets/MCP2562.pdf MCP2562] || flexcan || GPIO1_IO02 / gpio-2 || ||
    63 ||          || GW53xx    || IMX6 / [http://dev.gateworks.com/datasheets/MCP2562.pdf MCP2562] || flexcan || GPIO1_IO02 / gpio-2 || ||
    64 ||          || GW52xx    || IMX6 / [http://dev.gateworks.com/datasheets/MCP2562.pdf MCP2562] || flexcan || GPIO1_IO09 / gpio-9 || ||
     65|| Ventana  || GW551x+GW16111 || IMX6 || flexcan || N/A || N/A || ^^^2^^^ ||
     66||          || GW54xx    || IMX6 / [http://dev.gateworks.com/datasheets/MCP2562.pdf MCP2562] || flexcan || R123 (not loaded) || GPIO1_IO02 / gpio-2 || ||
     67||          || GW53xx    || IMX6 / [http://dev.gateworks.com/datasheets/MCP2562.pdf MCP2562] || flexcan || R50 (not loaded) || GPIO1_IO02 / gpio-2 || ||
     68||          || GW52xx    || IMX6 / [http://dev.gateworks.com/datasheets/MCP2562.pdf MCP2562] || flexcan || R168 (not loaded) || GPIO1_IO09 / gpio-9 || ||
    6569 1. The Newport product family uses the MCP25625 CAN over SPI device thus the spi-cavium and spi-cavium-thunderx drivers are required as well. Because the Thunderx SPI controller only supports half-duplex transactions a patch is needed to the mcp251x driver. See [https://github.com/Gateworks/linux-newport/commit/cb270339619ccf2b50dfd3604a03626f85830453 commit-1], [https://github.com/Gateworks/linux-newport/commit/d67245936bf53b0e83831ae98931c7ce6a89f2d2 commit-2], [https://github.com/Gateworks/linux-newport/commit/184249e625fcc99837e35df95de2624f91d23067 commit-3]
    6670 2. The GW551x does not have a transceiver on board; CAN_RXD / CAN_TXD go to application connector
     71
     72Note the Termination resistor options in the table above and remember that a properly terminated CAN network will have 120ohm termination across CAN_L and CAN_H at each end of the bus for a total measured resistance of 60ohm.
    6773
    6874CAN Bus can be found on the [http://www.gateworks.com/product/item/ventana-gw16113-expansion-adapter GW16113 Expansion card], but note this card will need to be custom programmed and does not have a transceiver.