DUILIO.cc
EN / IT

← Back to home

DUILIO F4 — Key features

This page provides a structured technical overview of DUILIO F4, covering STM32 motion control capabilities, safety and failsafe behavior, I/O, and supported motor driver interfaces for robotics and machines.

Project documentation is available on GitHub.

Motion control and safety

I/O and interfaces

System architecture

Section Details
MCU
  • Microcontroller: STM32F411 (64-pin, Cortex-M4F)
  • Deterministic real-time motion control handled on-board
  • Pre-developed, profile-based firmware (no application code required)
Motion control
  • 2 independent motion axes per board
  • Speed, position and torque control
  • Torque control via external current sensors
  • Acceleration / deceleration ramps
  • Limits and soft limits
  • Axis coordination and motion mixing
  • Interlocks, watchdogs and failsafe behaviors
Scalability
  • Native RS485 multi-drop bus
  • Designed for 10+ DUILIO F4 boards on the same bus
  • Example: 10 boards = 20 motors, centrally coordinated
  • Architecture: one host, many Duilio nodes (distributed real-time control)
Motor drivers
  • External motor drivers only (no power stages on-board)
  • Supported / supportable interfaces:
  • PWM / DIR
  • ENABLE + DIR + PWM
  • Dual-PWM (forward / reverse)
  • STEP / DIR (speed or position usage)
  • Analog speed (0-5 V)
  • Analog speed + direction
  • RC-style PWM (ESC / servo pulse)
  • Serial / protocol-based drivers (profile-dependent)
Encoders and feedback
  • 2 I2C absolute encoders
  • 2 quadrature incremental encoders (A/B)
  • Z channel and limit switches for homing
  • Position feedback, homing and zero reference
RC I/O
  • 4 RC servo inputs (PWM pulse capture)
  • 4 RC servo outputs
  • Usage: RC receivers, ESCs, servos, mixed/manual control
Digital I/O (power)
  • 4 NPN low-side outputs
  • External relays, solenoids, lamps
  • Current: < 2 A per channel
  • Firmware-controlled, profile-dependent
Digital I/O (logic)
  • End-stops and safety inputs
  • Dedicated homing inputs
Analog inputs
  • 2 analog inputs (0-5 V)
  • Torque reference
  • Position reference (potentiometer)
  • Analog command input
Sensors
  • 2 ultrasonic sonar interfaces (TRIG / ECHO)
  • Other digital and analog sensors (profile-dependent)
Safety and failsafe
  • Safe state on communication timeout
  • Configurable behavior on host or bus loss
  • Motion enabled only after valid startup sequence
  • Optional multi-condition enable logic
  • Hardware and firmware safety interlocks
  • Immediate output disable on fault conditions
  • Internal watchdog and supervision logic
  • Outputs forced to safe state at power-up
Configuration
  • Programming interface: ST-Link (SWD)
  • Firmware flashing and configuration via ST-Link
  • USB: optional / experimental, not the primary interface
Host systems
  • Raspberry Pi
  • SBCs
  • PCs
  • Industrial computers
  • Role separation:
  • Host = logic, UI, networking
  • Duilio = real-time motion and I/O control
Power
  • VIN: 6 V - 43 V
  • USB: 5 V
  • Raspberry Pi header: 5 V (HAT mode)
Raspberry Pi power output
  • Up to 5.1 V / 5 A
  • Direct Raspberry Pi power supply
Protection
  • TVS and ESD protection
  • Reverse and back-feed protection
  • Designed for noisy motor environments
System philosophy
  • Motor-agnostic and driver-agnostic
  • Same control logic reusable across different machines