How to Configure Katapult for CANbus Operation on the Fly-SB2040-V1
Edit me

Overview

Katapult allows you to update your toolboard via CANbus, so no rebooting and rewiring is necessary. We recommend using Katapult for this additional convenience.

Install Katapult package

  • ssh into your klipper host console

  • Clone the Katapult firmware to your Klipper Host

    cd ~/
    git clone https://github.com/Arksine/katapult
    
  • From your Fluidd or Mainsail web UI Edit Moonraker.conf and add the following at the bottom to allow Moonraker to manage updates to Katapult.

    [update_manager Katapult]
    type: git_repo
    path: ~/katapult
    origin: https://github.com/Arksine/katapult.git
    is_system_service: False
    

Compile Katapult firmware

  • cd to the Katapult directory

    cd ~/katapult
    
  • Run make clean

    make clean KCONFIG_CONFIG=config.sb2040v1
    
  • Open menuconfig

    make menuconfig KCONFIG_CONFIG=config.sb2040v1
    
  • Set the following settings
    • Micro-controller Architecture (Raspberry Pi RP2040)
    • Flash Chip (W25Q080 with CLKDIV 2)
    • Build Katapult deployment application (Do not build)
    • Communication interface (CAN bus)
    • (4) CAN RX gpio number
    • (5) CAN TX gpio number
    • (1000000) CAN bus speed
    • () GPIO pins to set on bootloader entry
    • [*] Support bootloader entry on rapid double clip of reset button
    • [ ] Enable bootloader entry on button (or gpio) state
    • [*] Enable Status LED
    • (gpio24) Status LED GPIO Pin

      Katapult Menu Config CAN
      Katapult Menu Config CAN
  • Quit and save the configuration

  • Run the make command to compile the firmware

    make KCONFIG_CONFIG=config.sb2040v1 -j4
    
  • You should now have a katapult.uf2 file at ~/katapult/out/

Burn Katapult firmware to the Fly-SB2040-V1

  • Use a USB-C data cable to connect the Fly-SB2040-V1 board to the klipper host.

  • Press the boot button while inserting the USB cable to put the Fly-SB2040-V1 into boot mode.

    Fly-SB2040-V1 Boot Button Location
    Fly-SB2040-V1 Boot Button Location
  • Run lsusb to see if the connection is successful.

    lsusb
    
    lsusb Results
    lsusb Results
  • Flash the Fly-SB2040-V1

    sudo make KCONFIG_CONFIG=config.sb2040v1 flash FLASH_DEVICE=2e8a:0003
    
  • This will flash the Katapult bootloader image and restart the Fly-SB2040-V1.

  • When the status LED starts blinking, Reboot and continue to the Klipper for USB configuration section

Tags: