Delta is compatible with VESC® software but is not a VESC-branded product and is not affiliated with or endorsed by Benjamin Vedder or the VESC project.
Delta is compatible with VESC® software but is not a VESC-branded product and is not affiliated with or endorsed by Benjamin Vedder or the VESC project.
Get a Delta GaN ESC installed, powered, connected to VESC Tool, and tuned for sensorless FOC.
The Delta is a high-voltage GaN motor controller running open source, VESC-compatible firmware. This guide takes you from an unopened board to a tuned, running motor.
This guide covers REV A hardware. The Delta runs sensorless FOC only — there is no encoder input on this board.
The 70 A rating requires airflow.70 A assumes continuous forced airflow over the heatsinks. Without it, usable continuous current is substantially lower and the controller will throttle or fault.Install the heatsinks before running meaningful current, and set the controller temperature cutoffs conservatively. Bench testing without airflow is fine for detection and low-current checks only.
Battery pack selection3S – 12S. Size against fully charged voltage, not nominal — 12S is 50.4 V full.Higher voltages are possible but leave less margin for inductive spikes, which come mainly from battery lead inductance, regenerative braking, and hot-plugging. Keep power leads short and thick, use an anti-spark connector, and limit regen current.Below 3S the controller may not power up or hold a stable voltage under load.
Install the heatsinks before applying power — the 70 A rating depends on them.The supplied heatsinks have a small channel cut into the underside to clear the capacitors. Orient each sink so this channel sits over the capacitors; it will then sit flat against the board. If the sink rocks, sits proud, or bears on a capacitor, it is oriented wrong.
The heatsinks mount with thermal tape, so placement is effectively one-shot — the adhesive does not survive being peeled off and repositioned. Dry-fit and confirm orientation before removing the liner.
1
Power down
Board unpowered and disconnected.
2
Clean the mating surfaces
Remove any residue, flux, or debris. The tape needs a clean surface to bond.
3
Dry-fit the heatsink
Capacitor channel over the capacitors; fin channels running parallel to your airflow path, not across it. Confirm it sits flat.
4
Peel and place
Peel the liner and place the heatsink in the position you just confirmed. Do not slide it into place.
5
Press down firmly
Press evenly across the whole sink for several seconds to wet out the adhesive. Even pressure matters — voids in the bond become hot spots.
6
Check clearances
Confirm the heatsink does not contact any adjacent conductor or exposed pad.
Once installed, check that the intake is unobstructed in the final enclosure and watch controller temperature in Realtime Data during first load testing.
The Delta is not powered over USB.USB provides data only. The controller will not boot, will not enumerate, and will not appear in VESC Tool until DC power is applied to the main input terminals.If VESC Tool shows no serial port, check that the Delta actually has DC power before troubleshooting the cable.
VESC Tool Free is €0.00 and functionally identical to the paid tiers. The Bronze / Silver / Gold / Platinum versions are donations to the project that grant a profile badge. All editions are the same software.
4
Complete the (free) checkout
Add it to the cart and check out.
5
Open Purchased Files
In the top-right menu. Your download links are there.
6
Download and run
Grab the archive for your OS, extract it, and run the executable. No installer on most platforms.
Mobile is not supported. The VESC Tool mobile app (Android / iOS) is not compatible with the Delta. Use the desktop application for all setup, configuration, and firmware operations.
Firmware pairing: if Intrusive Robotics has specified a VESC Tool version for your Delta’s firmware, use that version. Mismatched tool and firmware versions can produce misread parameters or a failed update.
The motor must be completely unloaded and free to spin. Detection spins it up under its own control.
Remove propellers, gears, belts, and wheels. No exceptions.
Clamp or bolt the motor down. It will produce real torque during detection.
Keep hands, cables, and tools clear of the motor and phase leads.
The motor will beep and jerk during resistance and inductance measurement. This is normal.
Open the wizard from the Welcome & Wizards page — click Setup Motors FOC. It is also reachable from the wizard icon in the left toolbar.
1
Warning and confirmation
Read it, confirm the motor is unloaded, continue.
2
Battery / power source setup
Enter your pack configuration:
Battery type (Li-ion, LiPo, LiFePO₄, or custom)
Cells in series (S count) — 3S to 12S recommended
Battery capacity in Ah
This sets the voltage cutoff start and end points. On a bench supply, choose custom and set cutoffs manually below your supply voltage.
3
Motor selection
Pick the closest size class — mini outrunner, small, medium, large outrunner, direct drive, and so on. This seeds the current limits and the detection parameters. You can refine current limits after the wizard finishes.
4
Motor detection
Click the detection button and let it run. It will:
Measure resistance and inductance (R and L) — audible beeping, motor does not rotate
Measure flux linkage (λ) — the motor spins up and coasts down
Review the reported R, L, and λ values. If any come back as zero, negative, or wildly implausible, do not apply them — see Troubleshooting.Click Apply to write the detected parameters.
5
Sensor setup — select Sensorless
The Delta does not support motor encoders. Skip any encoder option the wizard presents — AS5047, ABI, SinCos, or similar. There is no encoder input on this hardware.Select Sensorless. Nothing further to configure.
6
Direction
The wizard offers a direction test. Spin the motor forward and confirm it turns the way you expect. Flip the direction toggle if not — this is cleaner than swapping phase wires.
7
Finish and write
The wizard writes the motor configuration to the Delta. Confirm the write succeeded in the status bar.
Understand the sensorless trade-off. Sensorless FOC has no position feedback at standstill and estimates rotor position from back-EMF. Below roughly 10% of max RPM the estimate degrades, so expect weak or rough startup torque and possible stutter on hard acceleration from a stop. For high-RPM applications — which is what this controller is built for — this is a non-issue once the motor is moving.If your application needs strong torque from zero RPM, this controller is not the right fit.
Back on the Welcome & Wizards page, click Setup Input to configure your control source: PPM (RC receiver), ADC (throttle), UART, CAN, or ADC+UART. Follow the calibration steps — for PPM, you’ll move the stick through its full range so the tool can capture min, max, and center.
Head to Motor Settings → General and sanity-check:
Setting
What to check
Motor current max / min
70 A ceiling on the Delta, and only with continuous airflow. Use the lower of the Delta’s rating and your motor’s rating. Without forced airflow, set this well below 70 A.
Absolute maximum current
The hard fault threshold. Keep it above your working max but inside the hardware limit.
Battery current max / min
Set regen (min) to what your pack can actually absorb. Excess regen drives the bus toward the 93 V ceiling.
Voltage cutoff start / end
Confirm the S count matches your actual pack. A wrong S count sets the low-voltage cutoff incorrectly and will over-discharge the pack. On higher-voltage packs, also check the bus under hard braking.
Temperature limits
Controller cutoff start/end. These are your thermal safety net for the 70 A rating — set them conservatively rather than at the maximum.
Max ERPM
Leave headroom below what your motor can mechanically handle.
Zero vector frequency (FOC → Advanced)
Set to 30–60 kHz for the Delta.
Write the configuration, then open Realtime Data and run the motor up gently while watching current, duty cycle, and temperature. Check the Fault field — it should stay clear.
Save a backup of your working configuration via XML → Save Motor Configuration.
Detection usually reports R high, because it includes cable, connector, and switch resistance on top of the winding itself. The sensorless observer leans heavily on R at low RPM, so an inflated value degrades position tracking exactly where it is already weakest.To try it: in Motor Settings → FOC → General, set Motor Resistance to half the detected value and re-test low-speed behavior. Half is the usual starting point; adjust from there if needed.
Before committing to a reduced value:
Re-test under load, not just free-spinning. A value that smooths low-RPM stutter unloaded can misbehave when torque is applied.
Re-test at operating temperature. Winding resistance rises as the motor heats, so a value tuned cold moves further from actual R once hot.
Watch for new instability at higher RPM or during hard acceleration. If it appears, you have gone too far — go back up.
Note the detected value before changing it so you can return to it.
If reducing R does not resolve it, the startup parameters on the FOC → Sensorless tab — openloop ERPM, openloop hysteresis, and openloop time — are the next place to look.