The Voltage Monitor feature allows Smoothieware V2 to monitor power supply voltages through dedicated ADC (Analog-to-Digital Converter) channels. This is useful for:
The STM32H7 processor in Smoothieboard V2 has multiple ADC peripherals. ADC3 is dedicated to voltage monitoring, with several channels available for different voltage rails. The firmware reads these voltage levels and makes them available through console commands.
On the Smoothieboard V2 Prime, two voltage monitors are automatically configured by default:
| Monitor | Description | ADC Channel | Default Scale |
|---|---|---|---|
| vmotor | Motor supply voltage (Vbb) | ADC3_5 | 11.0 |
| vfet | FET supply voltage | ADC3_2 | 11.0 |
Additionally, two internal voltage references are always available:
| Monitor | Description | Notes |
|---|---|---|
| vref | Internal reference voltage | ~3.3V |
| vbat | Backup battery voltage | Scaled by 4.0 |
You can add custom voltage monitors by defining them in the [voltage monitor] section of your configuration file. Each monitor requires an ADC3 channel and optionally a scale factor.
[voltage monitor]
# Format: name = ADC3_channel,scale
# scale is optional, defaults to 11.0 (appropriate for typical voltage dividers)
vmotor = ADC3_5,11.0 # monitors motor voltage (Vbb)
vfet = ADC3_2,11.0 # monitors FET voltage
# custom = ADC3_0,5.5 # example custom monitor with different scale
| Option | Description | Default |
|---|---|---|
name |
Any valid identifier for your monitor | - |
ADC3_n |
ADC3 channel number (0-5) | - |
scale |
Voltage divider scale factor | 11.0 |
The scale factor accounts for the voltage divider on the board. The ADC can only measure voltages up to 3.3V, so higher voltages are divided down. A scale of 11.0 means the actual voltage is 11 times the measured voltage (e.g., a 1:11 voltage divider for measuring 24V supplies).
You can check voltage readings using the voltage console command:
> voltage
vmotor: 24.12V
vfet: 24.08V
vref: 3.30V
vbat: 3.28V
Simply type voltage at the console to see all configured voltage monitors and their current readings.
The TMC stepper drivers on V2 boards require proper motor voltage (Vmotor/Vbb) before they can be configured. If you see errors about driver initialization, check:
| Application | Typical Vmotor |
|---|---|
| 3D Printer (NEMA 17) | 12-24V |
| CNC Mill (NEMA 23) | 24-48V |
| Large CNC (NEMA 34) | 36-80V |