1. Introduction
The HEXA DISTRO FUSION is a comprehensive hub specifically designed for 3D printer toolchangers. It offers 6-channel CANBUS expansion, 6-channel USB 2.0 expansion, and six channels of 7.5A DC power distribution. Equipped with multiple flexibly configurable IO ports, it supports a variety of peripherals such as RGB lights, fans, proximity switches, and Hall sensors, providing maximum convenience for the Toolchanger mode.

2. Features

- 6 x USB2.0 based on USB2517
- 6 x CAN 2.0 connectors based on STM32F072CB
- 6 x 24V 7.5A Max power distribution with 2 controllable methods
- 4 x ADC input, for ADC sensors such as thermistors
- 8 x general IO
- 6 x 24V max I/O with power control for RGB/FAN/Proximity switches, etc
- Onboard 24V to 5V@3A DC-DC circuit USB working status LED indicators
- Onboard RESET and BOOT0 buttons for easy firmware update
3. Application
- Multi-head 3D printer
- Raspberry Pi expansion board
- computer USB HUB/CANBUS adapter
4. Hardware specification
4.1 Specification
| Item | Value / Content | Note |
|---|---|---|
| Microcontroller | STM32F072CBT6 | |
| USB HUB chip | USB2517 | |
| USB Port | 7 | 1 for STM32F072, 6 on type-A connector |
| Fan | 6 | shared with IO1-IO6, support 2 / 3pin fan |
| Temperature measurement | 4 | |
| Signal input and output | 6+8 | shared with IO1-IO6, GND control need ON |
| RGB light strip control | 6 | shared with IO1-IO6, GND control need ON |
Operating limits
| Power 1-6 | 7.5A Max per way, 25A total |
| Input power voltage | 11V to 24V for VIN up to 25A |
| IO1-IO6 as outputs | 0.5A maximum |
| onboard 5V DC-DC |
3A Max If you use an external 5V power supply, since the jumper cap supports a maximum current of 3A, you need to use a soldering iron to solder the bottom to obtain a larger current. |
| 3.3V | 0.8A Max |
| USB 5V | 2A Max per way, 3A total. |
4.2 LED Description
4.2.1 USB LED indication
Refer to USB2517 datasheet ”6.1.1 USB MODE 14-WIRE“
RED: USB downstream port 5V power indicator LED
- This light will illuminate when the hub is receiving power.
- If it flashes a few times and then goes out when plugged in, it indicates that the device is faulty .For example, a short circuit, or GND/5V being reversed.
Yellow/Amber: Fault indicator LED
- This LED will light up if the device requires more current than the port's maximum capacity. For example, if the downstream device experiences a short circuit, or requires more than 2A of current (including peak value).
Green: USB downstream port data indicator LED
- The light will illuminate when the device is plugged in, recognized, and registered by the hub.
- If there is no response after plugging in, there is an error with the USB downstream device, such as an incorrect program or reversed DP/DM connection.
5. Connection Guide
5.1 Pin Out

| Signal | GND control,For FAN use | |
| IO1 | PC13 | PA10 |
| IO2 | PB6 | PB7 |
| IO3 | PB4 | PB5 |
| IO4 | PA14 | PB3 |
| IO5 | PA9 | PA15 |
| IO6 | PB15 | PA8 |
| IO7 | ●●PB1 | |
| IO8 | ●●PB0 | |
| IO9 | ●●PA7 | |
| IO10 | ●●PA6 | |
| IO11 | ●●PA5 | |
| IO12 | ●●PA4 | |
| IO13 | PC14 | |
| IO14 | PC15 | |
| ADC1 | ●●PA0 | |
| ADC2 | ●●PA1 | |
| ADC3 | ●●PA2 | |
| ADC4 | ●●PA3 | |
| POWER CONTOL 1 | PB14 | |
| POWER CONTOL 2 | PB13 | |
| POWER CONTOL 3 | PB12 | |
| POWER CONTOL 4 | PB2 | |
| POWER CONTOL 5 | PB10 | |
| POWER CONTOL 6 | PB11 |
5.2 Connection example


6. Firmware Guide
Hexa uses STM32F072 as MCU, and its programming process is the same as most STM32 control boards. The difference is that it works in USB to CAN Bridge mode.
6.1 Firmware configuration and compilation
Since Hexa Distro Fusion works in "USB to CAN Bridge" mode, and STM32F072 supports direct burning via USB DFU mode, and has onboard BOOT0 button and RST button, it is very convenient. So you don't need to use Bootloader.
If you still want to use Katapult (Canboot), you can refer to 6.1.2.
6.1.2 Katapult Bootloader
Thanks to the great 👍Katapult project for making Klipper firmware updates much easier.
For more information about katapult, please refer to https://github.com/Arksine/katapult
The following is a simple guide, but please check the configuration options carefully!
cd katapultmake menuconfigmake flash FLASH_DEVICE=0483:df11

6.1.3 Klipper Firmware Config
- Using katapult bootloader
q
- Using no bootloader

6.2 Firmware upload
6.2.1 No Bootloader Mode or Upload the Katapult Bootloader
Command:
cd ~/klippermake flash FLASH_DEVICE=0483:df11
6.2.2 Use the Katapult Bootloader Uploading Klipper
- Make sure the klipper service stopped.
- Build Klipper with USB to CAN Bridge mode and with the a bootloader offset matching that of the "application offset" in Katapult.
- Enter the bootloader. Katapult automatically enters the bootloader if it detects that the application area of flash is empty. but Note that "USB to CAN bridge devices" and "UART" devices cannot be auto-detected. If the device is not in bootloader mode it is necessary to first manually:
- Double-click the RESET button and you will see the LED flashing
- Before flashing, make sure pyserial is installed. The command required for installation depends on the the linux distribution. Debian and Ubuntu based distros can run the following commands:
sudo apt updatesudo apt install python3-serialpython3 flashtool.py -d <serial device> -b <baud_rate> - Replace <serial_device> the the path to the USB/UART device you wish to flash. The <baud_rate> is only necessary for UART devices, and defaults to 250000 baud if omitted.
Example
1. Make sure the katapult bootloader has been burned
2. Double-click the RESET button to enter the bootloder, the sign is that the STATUS LED will flash
3. Use the commandls /dev/serial/by-id
Find can mcu id
4. Use the id to update the firmwarepython3 flashtool.py -d /dev/serial/by-id/the_id_you_get
7. Attachments and others
8. Where to buy

9. Our Channels
E-mail: support@fysetc.com