Skip to main content

CAN Bridge

CAN bus is a serial communication protocol bus used for real-time applications, which can transmit signals using twisted-pair wires and is one of the most widely used field buses in the world. The CAN protocol is used for communication between various different components in a car, replacing expensive and cumbersome wiring harnesses. The robustness of the protocol has extended its use to other automation and industrial applications. Features of the CAN protocol include serial data communication with integrity, providing real-time support, transmission rates up to 1Mb/s, and having both 11-bit addressing and error detection capabilities. On 3D printers, CAN bus is used to reduce the number of wires connecting the print head to the motherboard; originally requiring over ten wires, with CAN only four wires are needed, significantly reducing the number of wires and lowering the wiring difficulty. This chapter briefly outlines the use of CAN bridging.

Tool Board Using CAN to Connect Motherboard

  • Note that the power line of the tool board is not connected to the CAN port but to the 12V-24V power line.
  • Note that the 120Ω jumper must be connected.

Flashing the Motherboard Firmware

  • Ensure that the firmware flashed on the D5 motherboard is USB bridge CAN firmware configuration.

Searching for ID

  • If you need to use CAN, make sure your host computer has performed CAN configuration

Notes

Make sure the mainboard is connected to the host computer before proceeding with the following operations

warning

Ensure that the CAN network of the host computer, the CAN speed of the bridge mainboard, and the CAN tool board's speed are completely consistent

Precautions Before Searching for Devices

  • Before searching for CAN ID, please connect to SSH
  • Please note that you need to log in to SSH via the network, not via the serial port
  • Make sure you have connected the UTOC or flashed the CAN bridge firmware on the mainboard, and ensure that the data cable connected to the host computer has data transmission functionality

Search for Devices

  • Now that you have successfully logged in to the host computer, you can enter lsusb to search for devices, which will result in one of the following situations
    • Entering lsusb prompts that the ls command is not found, then you can enter the following command to install the command
      sudo apt-get install usbutils
    • Entering lsusb results in no response, this is a system issue, we cannot do anything about it, you need to change the system or use a confirmed normal system
    • The information in the image below appears, please note that this is just a reference. You only need to confirm that 1d50:606f appears
  • 1d50:606f is the device you need to use this time
  • If there are multiple 1d50:606f, it is recommended to exclude one, otherwise it may affect subsequent burning and firmware connection. For example, FLY MINI PAD is recommended to use the built-in UTOC instead of other CAN bridge devices
  • If not, please check yourself whether the data cable is connected properly and whether the firmware is flashed correctly.
Notes

You can only search for CAN ID when there is 1d50:606f

Search for CAN ID

  • Enter the following command to search for ID
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
  • FAST system uses the following command
python ~/klipper/scripts/canbus_query.py can0
  • If an ID appears and the Application: at the end shows Klipper, it means this ID can be used directly
  • If an ID appears and the Application: at the end shows CANBOOT or Katapult, it means the firmware needs to be flashed before it can be used

CAN Problem Collection

Notes
  • If you cannot find the CAN ID, please see the following document
  • CAN Problem Collection

Enter the CAN ID into the configuration

  • Fluidd is: {…} , click to enter, you can find printer.cfg
  • Mainsail is: machine, click to enter, you can find printer.cfg
  • Copy the queried UUID and enter it into the canbus_uuid: node under the [mcu] section in the printer.cfg configuration. After saving and restarting, the mainboard can be connected. If Klipper indicates that the firmware needs to be updated, ADC error etc., it means Klipper has already connected to the mainboard

  • If Application: shows Canboot, it cannot be configured into the configuration, and you need to flash the Klipper firmware to proceed

    dangerous

    Note: All IDs mentioned in the document are examples. The actual ID of each mainboard is different. Please modify and fill in according to the actual obtained ID.

  • The following is a reference configuration

    dangerous
    [mcu]
    canbus_uuid: <Replace this with the ID you just queried>
    • The following is a reference configuration for a mainboard plus a toolboard
    • If it is a mainboard ID, it must be [mcu] plus canbus_uuid: plus the ID you searched for
    • If it is a toolboard, it must be [mcu toolboard name] plus canbus_uuid: plus the ID you searched for
Loading...
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -