Basic Information:
Printer Model: CM4 on BTT-PAD7
MCU / Printerboard: skr 1.4 Turbo
klippy.log
- not needed.
Fill out above information and in all cases attach your klippy.log
file (use zip to compress it, if too big). Pasting your printer.cfg
is not needed
Be sure to check our “Knowledge Base” Category first. Most relevant items, e.g. error messages, are covered there
Describe your issue:
Hi there,
I’m trying to get klipper to flash on the BTT EBB 42 1.2 via using canboot over canbus. I keep getting a “Error sending command [CONNECT] to Can Device” error when trying to flash. The “Attempting to connect to bootloader” command takes a few seconds. All details below. Any idea what I might be doing wrong?
I am using a BTT PAD 7 with CM4 installed. The CAN configuration is selected correctly (have completed a resonance test with the supplied ADXL345 over SPI.
I have flashed canboot following the instructions here. CanBoot (optional) - Klipper Misc Docs. That seemed to work successfully (blinking blue led).
After flashing I disconnected the USB from the pi (moved it to a brick), connected the CAN interface (H to H, L to L), jumpered the 120ohm jumper. When plugged it all in.
When I query the CAN network, I get a UUID per below. That tells me that CAN communication is working.
Tried to flash klipper several times over CAN but got the same errors below. I thought I’d try to just update canboot over CAN (in case I was doing something very wrong)
Setting from my pi:
can0: flags=193<UP,RUNNING,NOARP> mtu 16
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 1024 (UNSPEC)
RX packets 39 bytes 264 (264.0 B)
RX errors 8 dropped 0 overruns 0 frame 8
TX packets 24 bytes 134 (134.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
biqu@btt-pad7:~/katapult/scripts $ cat /etc/network/interfaces.d/can0
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ifconfig $IFACE txqueuelen 1024
my menuconfig options
Katapult Configuration v0.0.1-64-g3e23332
Micro-controller Architecture (STMicroelectronics STM32) --->
Processor model (STM32G0B1) --->
Build Katapult deployment application (8KiB bootloader) --->
Clock Reference (8 MHz crystal) --->
Communication interface (CAN bus (on PB0/PB1)) --->
Application start offset (8KiB offset)
(1000000) CAN bus speed
() GPIO pins to set on bootloader entry
[*] Support bootloader entry on rapid double click of reset button
[ ] Enable bootloader entry on button (or gpio) state
[*] Enable Status LED
(PA13) Status LED GPIO Pin
Commands and error messages below
biqu@btt-pad7:~/katapult/scripts $ python3 flashtool.py -i can0 -q
Resetting all bootloader node IDs...
Checking for Katapult nodes...
Detected UUID: 4220d6e9e9f9, Application: Katapult
Query Complete
biqu@btt-pad7:~/katapult/scripts $ python3 ~/katapult/scripts/flash_can.py -f ~/katapult/out/canboot.bin -i can0 -u 4220d6e9e9f9
Sending bootloader jump command...
Resetting all bootloader node IDs...
Attempting to connect to bootloader
ERROR:root:Flash Error
Traceback (most recent call last):
File "/home/biqu/katapult/scripts/flash_can.py", line 626, in main
loop.run_until_complete(sock.run(intf, uuid, fpath, req_only))
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/home/biqu/katapult/scripts/flash_can.py", line 479, in run
await flasher.connect_btl()
File "/home/biqu/katapult/scripts/flash_can.py", line 90, in connect_btl
ret = await self.send_command('CONNECT')
File "/home/biqu/katapult/scripts/flash_can.py", line 196, in send_command
raise FlashCanError("Error sending command [%s] to Can Device"
**FlashCanError: Error sending command [CONNECT] to Can Device**
edit: fixed code blocks