Skip to main content

CAN Bridge

The CAN bus is a serial communication protocol bus used for real-time applications. It can use twisted pair to transmit signals and is one of the most widely used fieldbuses in the world. The CAN protocol is used for communication between various components in automobiles, replacing expensive and cumbersome wiring harnesses. The robustness of the protocol has extended its use to other automation and industrial applications. The characteristics of the CAN protocol include integrity of serial data communication, real-time support, a transmission rate of up to 1Mb/s, 11-bit addressing, and error detection capabilities. 3D printers use the CAN bus to reduce the number of wires connecting the print head to the motherboard. Originally requiring more than a dozen wires, using CAN reduces it to only four wires, greatly reducing the number of wires and wiring difficulty. This chapter only provides a brief overview of the use of CAN bridging.

Tool Board Connecting to Motherboard with CAN

  • Please note that the tool board power cord is not connected to the CAN port, but to the 12V-24v power line

  • Please note that the 120Ω jumper must be connected

Flash Motherboard Firmware

  • Please ensure that the firmware burned on the D8 motherboard is USB Bridge CAN Firmware Configuration

Search ID

  • If you need to use CAN, please ensure that your host computer has performed CAN configuration.

Note

Please ensure that the motherboard is properly connected to the host computer before performing the following operations.

warning

Please ensure that the CAN network of the host computer, the CAN rate of the bridged motherboard, and the rate of the CAN tool board are all identical.

Precautions Before Searching for Devices

  • Before searching for the CAN ID, please first connect to SSH
  • Please note that you must log in to SSH via the network, not via serial port
  • Please ensure that a UTOC is connected or a motherboard with the CAN bridge firmware flashed is used, and ensure that the data cable connecting the host computer has data transfer capability
  • Now that you have successfully logged into the host computer, you can enter lsusb to search for devices; one of the following situations may occur:
    • If entering lsusb prompts that the ls command is not found, you can install the command using the following instruction:
      sudo apt-get install usbutils
    • If nothing happens after entering lsusb, this is a system issue that we cannot resolve; you need to change the system or use a known good system
    • If information like in the image below appears, note that this is only a reference. You just need to confirm that 1d50:606f appears:
  • 1d50:606f is the device you will use this time
  • If there are multiple 1d50:606f, it is recommended to eliminate one as it may affect subsequent flashing and firmware connection; for example, FLY MINI PAD suggests using the onboard UTOC rather than other CAN bridge devices
  • If not present, please check that the data cable is properly connected and that the firmware is correctly flashed.
Note

The 1d50:606f must be present before searching for the CAN ID.

Search for CAN ID

  • Enter the following command to search for the ID:
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
  • For FAST systems, use the following command:
python ~/klipper/scripts/canbus_query.py can0
  • If an ID appears and the Application: at the end shows Klipper, then this ID can be used directly
  • If an ID appears and the Application: at the end shows CANBOOT or Katapult, then firmware flashing is required before use

CAN Issue Collection

Note
  • Before using CAN for the first time, it is recommended to read the CAN issue collection document below.
  • If you cannot find the CAN ID, please refer to the document below
  • CAN Issue Collection

Fill in the CAN ID into the Configuration

  • In Fluidd: {…}, click into it, and you can find printer.cfg
  • In Mainsail: Machine, click into it, and you can find printer.cfg
  • Copy the queried UUID and fill it into the canbus_uuid: of the [mcu] section in the printer.cfg configuration. After saving and restarting, the motherboard can be connected. If Klipper prompts that the firmware needs updating, ADC errors, etc., it indicates that Klipper has successfully connected to the motherboard.

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

    dangerous

    Note: All IDs appearing in the document are examples. Each motherboard has a different ID; please modify and fill in according to the ID actually obtained.

  • Below is a reference configuration

    dangerous
    [mcu]
    canbus_uuid: <Replace with the ID you just queried>
    • Below is a reference configuration method for the MCU ID in the case of one motherboard plus one tool board
    • If it is the motherboard ID, it must be [mcu] followed by canbus_uuid: and then the ID you searched for
    • If it is the tool board, it must be [mcu tool board name] followed by canbus_uuid: and then 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 -