Canbus improvements
by danlor on Mar.19, 2025, under 3dprinting, Technology
When I first built Kosh, canbus was still in its first weeks of release, and getting it going was a challenge since very few had gone down this route. Klipper/canboot was still being loaded raw in DFU mode making updates difficult. This time things are far easier with help from Esoterical and Butter Pocket Prints.
I did run into one snag though. Since I’m upgrading to a CB2 and Manta Mp8, I went ahead and pulled down the latest linux image from BTT that’s based upon linux 6.1. Everything went really well until I tried to bring up canbus on netplan. I was able to get netplan to see the interface, but nmcli just refused to bind or configure it. The linux distro has legacy networking disabled, and I didn’t like the idea of shutting down netplan and reverting. So instead I pulled an older linux4 version that worked perfectly.
Katapult loaded without issue, and chain-loaded Klipper with canbus enabled.
Relevant info:
The basic idea is this:
- Load Katapult (bootloader/flash tool)
- Load Canbus enabled Klipper using Katapult
Command history:
service klipper stop
cd ~/katapult/
make menuconfig
make
lsusb
sudo dfu-util -R -a 0 -s 0x08000000:force:mass-erase:leave -D ~/katapult/out/katapult.bin -d 0483:df11
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
python3 ~/katapult/scripts/flashtool.py -i can0 -q
cd ~/klipper
make menuconfig
make clean
make
python3 ~/katapult/scripts/flashtool.py -i can0 -q
python3 ~/katapult/scripts/flashtool.py -i can0 -f ~/klipper/out/klipper.bin -u 0ac8f7c0c631
python3 ~/katapult/scripts/flashtool.py -i can0 -q
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
service klipper start