
Entree
tuna-f1sh/entree
Entree is a USB-C CAN interface designed to fully support CANnectivity - gets the CAN party started!

A gantry-mounted CAN stepper driver board for 15mm aluminum beams (mostly for PrintersForAnts printers). This is heavily work in progress.
GBB15 is an open-source printed circuit board by skuep, from the skuep/GBB15 repository on GitHub, published under the MIT licence. It is a 4-layer board of 67 × 15 mm with 76 parts on 88 nets, routed with 692 tracks and 182 vias.
It is built around the STM32G0B1CEU6, MAX3051EKA+T and TMC2209-LA-T. Its parts include 26 capacitors, 22 resistors, 9 connectors, 5 ICs and 2 switches. It belongs with the robots and motor control boards and the STM32 boards of this library.
A gantry-mounted CAN stepper driver board for 15mm aluminum beams (mostly for PrintersForAnts printers).
This board can be used e.g. for the Micron to have A/B motor controllers directly at the gantry. This reduces the number of wires required to be routed to the gantry.
Additionally, this board can be used for Voron-0 or Tridents as a USB to CAN converter (using the Klipper CAN bridge option) with included A/B motor controllers.


GERBER-GBB15.zipBOM-GBB15.csvand CPL-GBB15.csvYou can order these on LCSC
Note that thermal connection to the 15mm beam is required! Otherwise the Stepper motor controllers might overheat.
Plug in USB cable and connect 24V power, the green LED on the bottom side (Rev. B and up) must light up. Hold BOOT pushbutton, while tapping the RESET pushbutton and release all buttons. This is the sequence to set the GBB15 into DFU mode.
IMPORTANT: STMicro decided on the entire STM32G0 series to set the nBOOT_SEL option bit and thus disable the BOOT0 pin by default.
This means you would have only one shot at uploading a bootloader, while the flash is empty. If you choose to re-program the bootloader (e.g. other CAN speed), you cannot get into the DFU mode anymore.
For enabling the "legacy" BOOT0 pin functionality, you have two options.
You can use STMicro's STM32CubeProgrammer software to disable the nBOOT_SEL option bit by following the screenshot here.
Or if you prefer dfu-util, which is included (or easily installed) in major linux distros (e.g. Raspberry Pi OS), you can run the enable_boot.hex firmware from here.
It will clear the nBOOT_SEL option bit from within the firmware, if it is not yet cleared.
Use the following commands to upload the file.
objcopy --input-target=ihex --output-target=binary enable_boot0.hex enable_boot0.bin # Convert hex to binary
sudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000:leave -D enable_boot0.binAfter waiting for a second, the BOOT0 pin is now enabled again and you can continue normally.
NOTE: Before continuing, remember to set the GBB15 into DFU mode again using the BOOT/RESET pushbuttons (see above).
Build CanBoot according the instructions on the CanBoot github page. See this image for CanBoot menuconfig settings to use.
Build the Klipper firmware according to the instructions on the Klipper github page. See this image for Klipper menuconfig settings to use.
Upload CanBoot to the GBB15 using either STM32CubeProgrammer (if you have it installed) or using dfu-util with these commands.
sudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000:leave -D out/canboot.binThe device is now booted into CanBoot mode and can be accessed using the CanBoot tools.
Upload the Klipper firmware to the GBB15 using either CanBoot's flashtool.py as described here or Klipper's make flash (uses dfu-util).
Using flashtool.py via CAN. Run these commands from the CanBoot/scripts directory
python3 flashtool.py -i can0 -q # Check the UUID of the GBB15 board
python3 flashtool.py -i can0 -f ~/klipper/out/klipper.bin -u <uuid> # Insert UUID hereUsing make flash via Klipper Makefile. Run this command from the klipper directory.
NOTE: For this, you need to set the GBB15 into DFU mode again using the BOOT/RESET pushbuttons (see above).
make flash FLASH_DEVICE=0483:df11This image shows the pinout of the GBB15 PCB. The CAN connector layout is compatible to the BigTreeTech EBB36 board (among others).

[mcu gantry_mcu]
canbus_interface: can0
canbus_uuid: f7b6d9f26b4a
...
[temperature_sensor chamber]
sensor_type: Generic 3950
sensor_pin: gantry_mcu:PA1 # SMD thermistor on GBB15 PCB
#sensor_pin: gantry_mcu:PA3 # Alternatively, this is STOP1 connector if it is not used otherwise
#sensor_pin: gantry_mcu:PA2 # Alternatively, this is STOP2 connector if it is not used otherwise (for Rev. B and up)
pullup_resistor: 4700
[temperature_sensor Motor_A]
sensor_type: Generic 3950
sensor_pin: gantry_mcu:PB11 # TH_A on GBB15 PCB
pullup_resistor: 4700
[temperature_sensor Motor_B]
sensor_type: Generic 3950
sensor_pin: gantry_mcu:PB12 # TH_B on GBB15 PCB
pullup_resistor: 4700
[temperature_sensor gantry_temp]"Chamber" thermistor in this configuration is a SMD thermistor on the PCB. It reads probably 15-20°C above the actual chamber temperature, when the stepper motors are enabled and running.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 11 | 100n/X5R/50V | Capacitor_SMD:C_0603_1608Metric | C2, C6, C7, C11, C16, C18, C21, C24, C26, C27, C28 |
| 10 | 4.7K | Resistor_SMD:R_0603_1608Metric | R5, R6, R11, R12, R14, R17, R20, R21, R22, R23 |
| 5 | 10K | Resistor_SMD:R_0603_1608Metric | R3, R4, R7, R8, R16 |
| 5 | 1u/X5R/50V | Capacitor_SMD:C_0805_2012Metric | C8, C9, C12, C15, C29 |
| 4 | 0R11 | Resistor_SMD:R_1206_3216Metric | R1, R2, R9, R10 |
| 4 | 4.7u/X5R/10V | Capacitor_SMD:C_0603_1608Metric | C10, C14, C22, C30 |
| 2 | 100u/35V/105°C | Capacitor_THT:CP_Radial_D6.3mm_P2.50mm | C1, C17 |
| 2 | 22n/X5R/50V | Capacitor_SMD:C_0603_1608Metric | C5, C13 |
| 2 | 22p/NP0 | Capacitor_SMD:C_0603_1608Metric | C3, C4 |
| 2 | 5.1K | Resistor_SMD:R_0603_1608Metric | R13, R15 |
| 2 | Fiducial | Project:TOOLING-HOLE | FID1, FID2 |
| 2 | Heatsink | Project:TMC2209-Heatsink | HS1, HS2 |
| 2 | MountingHole | Project:MountingHole_3.2mm_M3 | H1, H2 |
| 2 | TMC2209-LA-T | Project:QFN-28-1EP_5x5mm_P0.5mm_EP3.35x3.35mm | U1, U3 |
| 2 | TestPoint | TestPoint:TestPoint_Pad_1.5x1.5mm | TP1, TP2 |
| 1 | 600R@100MHz | Inductor_SMD:L_0603_1608Metric | FB1 |
| 1 | BOOT | Button_Switch_SMD:SW_SPST_CK_RS282G05A3 | SW1 |
| 1 | CAN_IN | Project:Molex_Micro-Fit_3.0_43045-0412_2x02_P3.00mm_Vertical | J1 |
| 1 | CAN_OUT | Project:Molex_Micro-Fit_3.0_43045-0412_2x02_P3.00mm_Vertical | J2 |
| 1 | Crystal_GND24 | Crystal:Crystal_SMD_3225-4Pin_3.2x2.5mm | Y1 |
| 1 | ENDSTOP1 | Connector_JST:JST_PH_B2B-PH-K_1x02_P2.00mm_Vertical | J7 |
| 1 | ENDSTOP2 | Connector_JST:JST_PH_B2B-PH-K_1x02_P2.00mm_Vertical | J8 |
| 1 | LED | LED_SMD:LED_0603_1608Metric | D1 |
| 1 | MA | Connector_JST:JST_XH_B4B-XH-A_1x04_P2.50mm_Vertical | J5 |
| 1 | MAX3051EKA+T | Package_TO_SOT_SMD:SOT-23-8 | U4 |
| 1 | MA_THERM | Connector_JST:JST_PH_B2B-PH-K_1x02_P2.00mm_Vertical | J3 |
| 1 | MB | Connector_JST:JST_XH_B4B-XH-A_1x04_P2.50mm_Vertical | J6 |
| 1 | MB_THERM | Connector_JST:JST_PH_B2B-PH-K_1x02_P2.00mm_Vertical | J4 |
| 1 | N.M. (120R) | Resistor_SMD:R_1206_3216Metric | R19 |
| 1 | NCP730BMT330TBG | Package_DFN_QFN:DFN-6-1EP_2x2mm_P0.65mm_EP1x1.6mm | U5 |
| 1 | RESET | Button_Switch_SMD:SW_SPST_CK_RS282G05A3 | SW2 |
| 1 | STM32G0B1CEU6 | Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mm | U2 |
| 1 | Thermistor | Resistor_SMD:R_0603_1608Metric | TH1 |
| 1 | USB-C | Project:TYPE-C 16PLC-H10.0 | J10 |

tuna-f1sh/entree
Entree is a USB-C CAN interface designed to fully support CANnectivity - gets the CAN party started!


bjthemost-hub/l103-drv8316c-joint
Joint motor driver: CH32L103 + DRV8316C + MT6701. KiCad hardware, FOC firmware, 2-stage planetary gearbox (J, 25:1). MIT.


doudar/SmartSpin2k
Transform your spin bike into a Smart Trainer!

MotorDynamicsLab/Leviathan
Leviathan Main Controller for Voron 2 / Trident 3D Printers

griffotron/MotionModuleSTM32R8
PCB design and code for the STM32 powered Motion Module that controls 14 stepper motors

hstarmans/firestarter
Kicad design files for prism laser direct imager using up5k FPGA and ESP32
It measures 67 × 15 mm and has 4 copper layers, 1.6 mm thick.
76 parts, built around the STM32G0B1CEU6, MAX3051EKA+T and TMC2209-LA-T. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the skuep/GBB15 repository on GitHub, at the commit this page was made from: the board is kicad/GBB15/GBB15.kicad_pcb and its schematic kicad/GBB15/GBB15.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).