Schrittweise Anleitung, um das Fysetc Spider H7 Board über die USB/CAN Bridge in Betrieb zu nehmen.
dmesg -HW einen Fehler bringt, einfach dmesg -Hw verwenden. DC5V / U5V, DC5V / USB5V oder nur U5V gekennzeichnet.DC5V / U5V befindet sich hinter dem USB-C Anschluss. DC5V DC5V setzen!U5V (oder USB5V) setzen.DC5V setzen!Das Board wird mit Marlin ausgeliefert (Stand 04.09.2024).
pi@TestPi5:~ $ dmesg -HW [Sep 4 06:54] usb 3-1: USB disconnect, device number 2 [ +0.405181] usb 3-1: new full-speed USB device number 3 using xhci-hcd [ +0.183840] usb 3-1: New USB device found, idVendor=0483, idProduct=5740, bcdDevice= 0.00 [ +0.000005] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ +0.000002] usb 3-1: Product: MARLIN_STM32H723VG CDC in FS Mode [ +0.000002] usb 3-1: Manufacturer: STMicroelectronics [ +0.000002] usb 3-1: SerialNumber: 364334613532 [ +0.028036] cdc_acm 3-1:1.0: ttyACM0: USB ACM device
Mit den original Bootloader Settings (128k) lässt sich das Board nicht betreiben. Der Hex Abzug zeigt auch das da scheinbar gar kein Bootloader installiert ist / war! Es gibt also nichts zu sichern …
Das Board in den DFU Modus bringen:
dmesg -Hw Product: STM32  BOOTLOADER oder Product: DFU in FS Mode pi@Pi4Test:~ $ dmesg -HW [Sep 4 06:55] usb 3-1: USB disconnect, device number 3 [ +0.448648] usb 3-1: new full-speed USB device number 4 using xhci-hcd [ +0.154183] usb 3-1: not running at top speed; connect to a high speed hub [ +0.024000] usb 3-1: New USB device found, idVendor=0483, idProduct=df11, bcdDevice= 2.00 [ +0.000005] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ +0.000002] usb 3-1: Product: DFU in FS Mode [ +0.000002] usb 3-1: Manufacturer: STMicroelectronics [ +0.000002] usb 3-1: SerialNumber: 364334613532
STRG+C drücken, um die Meldungen zu beendenHinweis:
Katapult wird über USB (DFU-Mode) eingerichtet!
[ ! -d "$HOME/katapult/" ] && cd ~ && git clone https://github.com/Arksine/katapult && cd katapult || cd ~/katapultmake menuconfig     Micro-controller Architecture (STMicroelectronics STM32)  --->
    Processor model (STM32H723)  --->
    Build Katapult deployment application (Do not build)  --->
    Clock Reference (25 MHz crystal)  --->
    Communication interface (USB (on PA11/PA12))  --->
    Application start offset (128KiB offset)  --->
    USB ids  --->
()  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
(PD3)   Status LED GPIO Pin
make -j4dfu-util -R -a 0 -s 0x08000000:mass-erase:force -D ~/katapult/out/katapult.binFile downloaded successfully bei der Ausgabe im Terminaldmesg -HW starten und den USB Stecker wieder anstecken pi@Pi3Test:~/katapult $ dmesg -HW [ +0.261499] usb 1-1.1: new full-speed USB device number 13 using xhci_hcd [ +0.111977] usb 1-1.1: New USB device found, idVendor=1d50, idProduct=6177, bcdDevice= 1.00 [ +0.000036] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ +0.000017] usb 1-1.1: Product: stm32f446xx [ +0.000014] usb 1-1.1: Manufacturer: katapult [ +0.000014] usb 1-1.1: SerialNumber: 390028000950315239323320 [ +0.016088] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM device
STRG+C drücken, um die Meldungen zu beendencd ~/klippermake menuconfig [*] Enable extra low-level configuration options
    Micro-controller Architecture (STMicroelectronics STM32)  --->
    Processor model (STM32H723)  --->
    Bootloader offset (128KiB bootloader)  --->
    Clock Reference (25 MHz crystal)  --->
    Communication interface (USB to CAN bus bridge (USB on PA11/PA12))  --->
    CAN bus interface (CAN bus (on PD0/PD1))  --->
    USB ids  --->
(1000000) CAN bus speed
()  GPIO pins to set at micro-controller startup
make -j4 flash FLASH_DEVICE=/dev/ttyACM0 pi@TestPi5:~/klipper $ make -j4 flash FLASH_DEVICE=/dev/ttyACM0 Creating symbolic link out/board Building out/autoconf.h Compiling out/src/sched.o ... Compiling out/src/stm32/hard_pwm.o Preprocessing out/src/generic/armcm_link.ld Building out/compile_time_request.o Version: v0.12.0-296-gcc4ad6670 Linking out/klipper.elf Creating hex file out/klipper.bin Flashing out/klipper.bin to /dev/ttyACM0 Entering bootloader on /dev/ttyACM0 Device reconnect on /sys/devices/platform/axi/1000120000.pcie/1f00300000.usb/xhci-hcd.1/usb3/3-1/3-1:1.0 /usr/bin/python3 lib/canboot/flash_can.py -d /dev/serial/by-path/platform-xhci-hcd.1-usb-0:1:1.0 -f out/klipper.bin Attempting to connect to bootloader CanBoot Connected Protocol Version: 1.1.0 Block Size: 64 bytes Application Start: 0x8020000 MCU type: stm32h723xxv0.0.1-75-g90eb71b Flashing '/home/pi/klipper/out/klipper.bin'... [##################################################] Write complete: 1 pages Verifying (block count = 600)... [##################################################] Verification Complete: SHA = ABD0ECEAC094657FE40E51D0EE1F824DFC011383 CAN Flash Success
lsusb → Geschwister Schneider CAN adapter sollte erscheinen pi@TestPi5:~/klipper $ lsusb Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 010: ID 1d50:606f OpenMoko, Inc. Geschwister Schneider CAN adapter Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
sudo nano /etc/network/interfaces.d/can0 STRG + x, dann Y, dann Enter beenden allow-hotplug can0 
iface can0 can static 
    bitrate 1000000 
    up ifconfig $IFACE txqueuelen 1024
ip a can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UP group default qlen 1024DOWN stehen hilft meist ein sudo systemctl restart networking.service sudo ip link set can0 up type can bitrate 1000000Hinweis
Die folgenden Schritte setzen natürlich voraus, das der CAN Bus korrekt im Vorfeld eingerichtet wurde!
Wenn das Board über CAN verbunden ist, dann kann man mit den folgenden Schritten prüfen, ob Katapult geflasht wurde:
sudo systemctl stop klipper.service~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0 pi@TestPi5:~ $ ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0 Found canbus_uuid=4cd6d5f5fd9a, Application: Klipper Total 1 uuids found
Ob das Board korrekt mit Klipper läuft, lässt sich mit folgendem Befehl schnell testen: 
~/klippy-env/bin/python ~/klipper/klippy/console.py -c can0 4cd6d5f5fd9a
Der Pfad am Ende muss natürlich mit dem übereinstimmen, was ihr im vorherigen Schritt ermittelt habt!
Wenn ihr ein connected am Anfang des Textes seht, ist das Board richtig geflasht. 
cd ~/printer_data/configwget https://raw.githubusercontent.com/FYSETC/FYSETC-SPIDER/main/firmware/Klipper/printer.cfg -O printer.cfgnano ~/printer_data/config/printer.cfg [mcu] canbus_uuid: 4cd6d5f5fd9a #restart_method: command
serial löschen oder auskommentierenrestart_method löschen oder auskommentierencanbus_uuid entsprechend mit der ermittelten UUID von oben anpassensudo systemctl start klipper.service
Meine vorläufige Konfig 
 Spider H7 Konfig
Hinweis:
Das Klipper Update wird über USB eingespielt! Über den CAN-Bus ist ein Update nicht möglich wenn das Board als USB/Can Bridge arbeitet.
sudo systemctl stop klipper.servicegrep canbus_uuid ~/printer_data/config/* -n pi@Pi3Test:~/klipper $ grep canbus_uuid ~/printer_data/config/* -n /home/pi/printer_data/config/BTT_EBB.cfg:10:canbus_uuid: 44d860c9632b /home/pi/printer_data/config/printer.cfg:30:canbus_uuid: 4cd6d5f5fd9a
~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -i can0 -u <BOARD UUID> -r pi@Pi3Test:~/klipper $ ~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -i can0 -u 4cd6d5f5fd9a-r Sending bootloader jump command... Bootloader request command sent Flash Success
dmesg |tail -n 10 pi@Pi3Test:~/klipper $ dmesg |tail -n 10 [76418.167383] IPv6: ADDRCONF(NETDEV_CHANGE): can0: link becomes ready [76867.446711] usb 1-1.4: USB disconnect, device number 37 [76867.446933] gs_usb 1-1.4:1.0 can0: Couldnt shutdown device (err=-19) [76867.787311] usb 1-1.4: new full-speed USB device number 38 using dwc_otg [76867.933716] usb 1-1.4: New USB device found, idVendor=1d50, idProduct=6177, bcdDevice= 1.00 [76867.933741] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [76867.933749] usb 1-1.4: Product: stm32f446xx [76867.933755] usb 1-1.4: Manufacturer: katapult [76867.933761] usb 1-1.4: SerialNumber: 350053000851313133353932 [76867.938929] cdc_acm 1-1.4:1.0: ttyACM0: USB ACM device
Wie immer brauchen wir die tty… Angabe. In diesem Fall ist is ttyACM0 wie man in der letzten Zeile sehen kann.
cd ~/klippermake -j4 flash FLASH_DEVICE=/dev/ttyACM0 sudo systemctl start klipper.service
Diese Punkte sind nicht immer Bestandteil vom YouTube Video, aber nützlich 
Das Board verfügt über einen SWD Port. Mit einem entsprechenden ST-Link kann das Board auch direkt geflasht werden.
Ein ADXL345 Sensor für Input Shaper kann direkt an das Board angeschlossen werden.
| ADXL345 Pin | Spider Board (SPI1) | STM32 Pin | 
|---|---|---|
| GND | GND | |
| VCC | +5V | |
| CS | CS | PA4 | 
| INT1 | N/A | |
| INT2 | N/A | |
| SDO | MISO | PA6 | 
| SDA | MOSI | PA7 | 
| SCL | CLK | PA5 | 
[adxl345] axes_map : x,y,z cs_pin : PA4 spi_bus : spi1 [resonance_tester] accel_chip : adxl345 probe_points : 150, 150, 20 # Center of your bed, raised up a little
ACCELEROMETER_QUERY accelerometer values (x, y, z): -1110.308913, 1184.329507, 11414.822920Invalid adxl345 id (got 0 vs e5)Der interne Temperatur Sensor des STM32 kann mit folgendem Konfig Schnibsel ausgelesen werden:
[temperature_sensor Levi] sensor_type : temperature_mcu sensor_mcu : mcu