What's new
VORON Design

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members!

Using the ebb36 1.2 with the fystec spider 3.0


New member
I've been working on replacing the stealthburner toolhead on my trident with the armchair archetype breakneck (cpap) toolhead. In the process I decided to migrate to canbus at the same time. It turns out the spider 3 supports canbus out of the box so you only need the ebb36, and not the u2c. Cool! I cobbled together how to use it from various sources and collected them all in this unit of content.

I should note that the undocumented and ungoogleable 3d geek OS that came with my orange pi 3 was missing some kernal modules needed for canbus so I had a fresh (2024-01-20) build of mainsail OS installed.

I found a video from fystec describing how to do this with the ebb sb2209 and many of the instructions apply to the ebb36. Mainly the menuconfig is where things differ.

I'll assume you have a rasberry pi or orange pi connected to your spider via usb already.

Our first step is to build klipper for the spider with canbus support baked in. There's a lot of overlap with the instuctions found here in the voron docs with a few key difference.

After make menuconfig you'll deviate from the instuctions as follows:
  • Bootloader -> No bootloader (I used this and it works but not sure if it's necessary)
  • Communication interface -> usb to can bus bridge (usb on PA11/PA12)
  • Can bus interface -> CAN bus (on PD0/PD1)

Then do make flash as described in the voron docs.

I got an message that the flash succeeded and then an error that followed but it worked so you can ignore an error if it's after a success.

Run lsusb, you should see OpenMoko, Inc. Geschwister Schneider CAN adapter now.

Next create /etc/network/interfaces.d/can0 on the pi as described in the klipper canbus docs and get the canbus uuid for the spider with ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0. Note the uuid for later, it will go in you printer.cfg.

Up next we'll flash the ebb36.

Don't be like me, I had my ebb36 wired to my 24v power supply and the high/low pins to the canbus pins on the spider while I flashed it, it turns out that's dangerous, only have usb connecting the ebb36 to the pi while flashing.

You'll need to run make menuconfig and choose the specs for the ebb (source):
  • Enable extra low-level configuration options
  • Micro-controller Architecture = STMicroelectronics STM32
  • Processor model -> STM32G0B1
  • Bootloader offset -> No bootloader
  • Clock Reference -> 8 MHz crystal
  • Communication interface -> CAN bus (on PB0/PB1)
Quit with save.

Then hold down the boot on the ebb and then tap reset, when you run lsusb you should see a device in dfu mode, copy the device id and run make flash FLASH_DEVICE=dfu-mode-device-id-here.

Unplug the usb from the ebb. Once it's wired to the spider CAN high/low pins and 24v power supply you should see 2 canbus devices when you run ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0. The new uuid will be for the ebb36 so make sure you note that for later.

From here you're ready to start configuring klipper and there's a good starting point found at the bottom of this page under the "Need a config" heading.
Last edited: