Skip to content

Commit 7554c0c

Browse files
committed
a bit more info on drivers
1 parent 9e93c22 commit 7554c0c

File tree

6 files changed

+45
-7
lines changed

6 files changed

+45
-7
lines changed

docs/simplefoc_library/hardware/drivers/BLDC_drivers.md

Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,14 @@ The choice what kind of BLDC driver you will need in your project directly depen
2020
- [Low power BLDC drivers](#low-power-boards---gimbal-motors-) - *Gimbal motors (R>10Ω)*
2121
- [High performance BLDC drivers](#high-performance-boards) - *High-power BLDC motors (R<1Ω)*
2222

23+
<blockquote class="warning" markdown="1"><p class="heading">⚠️ No drone ESCs!</p>
24+
Traditional drone ESCs are not suitable for FOC because they typically use a fixed commutation scheme (6-step usually), can only be velocity controlled and lack the necessary interfaces for connecting sensors and implementing advanced control algorithms.
25+
26+
It is a pitty, because they are very cheap and widely available and very powerful!
27+
28+
If doubting if your board is compatible or not, please ask in the [community forum](https://community.simplefoc.com), we will be happy to help you out!
29+
</blockquote>
30+
2331
## Low power boards ( gimbal motors )
2432
Here are some BLDC driver boards that are designed for gimbal motors and work with the library *off-the-shelf*. Gimbal motors usually have more than 10 pole pairs and have an internal resistance >10Ω. They are designed for very smooth performance at low speeds. Gimbal motors are very versatile and are perfect for high-quality replacement of stepper motors and DC servo motors.
2533

@@ -28,8 +36,9 @@ Examples | Description | Specifications | Link | Price
2836
[<img src="https://simplefoc.com/assets/img/v1.jpg" style="height:100px">](https://simplefoc.com/simplefoc_shield_product)| Arduino<br> <span class="simple">Simple<span class="foc">FOC</span>Shield</span> v1| - L6234 chip <br> - 8-24V <br> - up to 5 Amps <br> - 1 motor <br>- Arduino Shield <br> - Encoder+I2C Pullups | [More info](https://simplefoc.com/simplefoc_shield_product) | 15€
2937
[<img src="https://simplefoc.com/assets/img/v2.jpg" style="height:100px">](https://simplefoc.com/simplefoc_shield_product)| Arduino<br> <span class="simple">Simple<span class="foc">FOC</span>Shield</span> v2| - L6234 chip <br> - 8-24V <br> - up to 5 Amps <br> - 1 motor <br>- Arduino Shield <br> - Encoder+I2C Pullups <br> - In-line current sensing <br> - On-board voltage regulator | [SimpleFOC store](https://simplefoc.com/simplefoc_shield_product_v2) <br> [Aliexpress](https://fr.aliexpress.com/item/1005002496275228.html?spm=a2g0o.productlist.0.0.51b44925t9nr53&algo_pvid=42a7dd52-305b-4cb0-af17-60a892aaad3a&algo_exp_id=42a7dd52-305b-4cb0-af17-60a892aaad3a-0&pdp_ext_f=%7B%22sku_id%22%3A%2212000020877377792%22%7D#feedback) <br> [Ebay](https://www.ebay.com/itm/165027599242?hash=item266c69538a:g:bZIAAOSw8QJg9mvD)| ~20€
3038
[<img src="extras/Images/mini.png" style="height:100px">](https://github.com/simplefoc/SimpleFOCMini) | <span class="simple">Simple<span class="foc">FOC</span>Mini</span> v1 | - DRV8313 chip <br> - 8-30V <br> - up to 2.5 Amps <br> - 3.3V LDO onboard <br> - 1 motor <br> - 21x26mm | [SimpleFOC store](https://simplefoc.com/shop)<br> [Aliexpress](https://fr.aliexpress.com/item/1005005866301316.html?spm=a2g0o.productlist.main.15.6654IW63IW63Ci&algo_pvid=31b447fa-3006-48a9-9fc7-c058fba95965&algo_exp_id=31b447fa-3006-48a9-9fc7-c058fba95965-7&pdp_npi=4%40dis%21EUR%214.23%214.23%21%21%214.43%214.43%21%40211b600e17142231512592395e5343%2112000034628489263%21sea%21FR%21179781912%21AC&curPageLogUid=GMs1Q35zslL1&utparam-url=scene%3Asearch%7Cquery_from%3A)<i></i> | 5-15€
31-
[<img src="extras/Images/l6234.jpg" style="height:100px">](https://www.ebay.com/itm/L6234-Breakout-Board/153204519965?hash=item23abb3741d:g:LE4AAOSwe35bctgg) | Drotek L6234<br> breakout board | - L6234 chip <br> - 1 motor <br> - 25x25mm | [Drotek](https://store-drotek.com/212-brushless-gimbal-controller-l6234.html)<br> [Ebay](https://www.ebay.fr/itm/L6234-Breakout-Board-/153204519965) | 30€
3239
[<img src="extras/Images/dual_simplefoc.jpg" style="height:100px">](https://github.com/ToanTech/Deng-s-foc-controller) | Deng FOC controller<br> breakout board | - L6234 chip <br> - 8-24V <br> - up to 5 Amps <br> - 2 motor <br> - 39x56mm | [Aliexpress](https://store-drotek.com/212-brushless-gimbal-controller-l6234.html)<br> [Ebay](https://www.ebay.com/itm/373690016017?hash=item5701a92111:g:YkYAAOSwF8ZhHgi3) | 35-50€
40+
[<img src="extras/Images/nanoshield.png" style="height:100px">](https://www.tindie.com/products/smallrobots/simplefoc-nano-shield/) | <span class="simple">Simple<span class="foc">FOC</span>Nano</span> | - DRV8313 chip <br> - 8-30V <br> - 2.5 Amps <br> - 1 motor <br>- Nano Shield <br> - SPI+I2C JST connectors <br> - On-board voltage regulator | [Tindie](https://www.tindie.com/products/smallrobots/simplefoc-nano-shield/) <br>[Github](https://github.com/simplefoc/SimpleFOCNano)| 20€
41+
3342

3443
Alternatively, you can find gimbal controller boards with integrated BLDC drivers and microcontroller chips.
3544

@@ -40,6 +49,7 @@ Examples | Description | Specifications | Link | Price
4049
[<img src="extras/Images/bgc31.jpg" style="height:100px">](https://www.ebay.com/itm/BGC-3-1-MOS-Large-Current-Two-Axis-Brushless-Gimbal-Controller-Driver-Alexmos/302692769869?hash=item4679e5204d:g:m9AAAOSweHtdzM8o) | BGC 3.1 | - l6234<br> - 2 motors <br> - 50x50mm <br> - Atmega328 | [Ebay](https://www.ebay.com/itm/BGC-3-1-MOS-Large-Current-Two-Axis-Brushless-Gimbal-Controller-Driver-Alexmos/302692769869?hash=item4679e5204d:g:m9AAAOSweHtdzM8o) | 10€
4150
[<img src="extras/Images/strom.jpg" style="height:100px">](https://www.ebay.com/itm/Storm32-BGC-32Bit-3-Axis-Brushless-Gimbal-Controller-V1-32-DRV8313-Motor-Driver/174343022855?hash=item2897a76907:g:20YAAOSwbEhfBo28) | Storm32 BGC | - DRV8313 <br> - 3 motors <br> - 50x50mm <br> - Stm32f103 | [Ebay](https://www.ebay.com/itm/Storm32-BGC-32Bit-3-Axis-Brushless-Gimbal-Controller-V1-32-DRV8313-Motor-Driver/174343022855?hash=item2897a76907:g:20YAAOSwbEhfBo28) | 25€
4251

52+
4353
Finally, one of the cheapest possible solutions for running a gimbal BLDC motor is to use one of the dual DC motor motor drivers such as:
4454

4555
Examples | Description | Specifications | Link | Price
@@ -54,7 +64,7 @@ It can also be a good board for beginner users, to get familiar with the FOC as
5464
</blockquote>
5565

5666
## High performance boards
57-
<span class="simple">Simple<span class="foc">FOC</span>library</span> will support basically any BLDC motor driver which can be controlled using 3 PWM or 6 PWM signals. Additionally, drivers with current sensing can directly control torque, whereas all other drivers can use estimated current ([more info](voltage_torque_control)).
67+
<span class="simple">Simple<span class="foc">FOC</span>library</span> will support basically any BLDC motor driver which can be controlled using 3 PWM or 6 PWM signals. Additionally, drivers with current sensing can directly control torque, whereas all other drivers can use estimated current ([more info](torque_control)).
5868

5969
Here are the boards that have been tested and are compatible with the library:
6070

@@ -67,12 +77,28 @@ Examples | Description | Specifications | Link | Price
6777
[<img src="https://simplefoc.com/assets/img/dagor/Dagor_iso.png" style="height:120px">](https://github.com/byDagor/Dagor-Brushless-Controller)| [@byDagor](https://github.com/byDagor) <br> Dagor Brushless Controller | - DRV8305 driver <br> - 1 motor <br>- 25V/40A <br> - Current sensing <br> - Integrated sensor<br> - Esp32 based<br> - fault protection | [simplefoc shop](https://simplefoc.com/shop)<br> <i>alpha batch sold out</i> | 40€
6878
[<img src="extras/Images/powershield.jpg" style="height:120px">](https://github.com/simplefoc/Arduino-SimpleFOC-PowerShield)| Arduino<br> <span class="simple">Simple<span class="foc">FOC</span><span class="power">Power</span>Shield</span> | - BTN8982 half-bridges <br> - 1 motor <br>- 40V/30A<br> - fault protection <br> <b>Release v1:</b> <br> - In-line current sensing <br> - I2C/Hall/Encoder pullups*<br> - 2x Stackable* | [fabricate](https://github.com/simplefoc/Arduino-SimpleFOC-PowerShield) | ~20€
6979
[<img src="extras/Images/high_perf_new.png" style="height:100px">](https://github.com/ChenDMLSY/FOC-SimpleFOC-MotorDriveDevelopmentBoard)| FOC-SimpleFOC-MotorDriveDevelopmentBoard | - IR2103 drivers <br> - 1 motor <br>- 36V/20A <br> - low-side current sensing| [Aliexpress](https://fr.aliexpress.com/item/1005002852603523.html?spm=a2g0o.productlist.0.0.76861dc3dEgETJ&algo_pvid=48101b3f-ba22-40b0-b6de-421d79a675b8&algo_exp_id=48101b3f-ba22-40b0-b6de-421d79a675b8-2&pdp_ext_f=%7B%22sku_id%22%3A%2212000022467783080%22%7D) [Ebay](https://www.ebay.com/itm/373689972247?hash=item5701a87617:g:i0IAAOSwrKlhHf~r) | 30€
70-
[<img src="extras/Images/odrive.jpg" style="height:100px">](https://odriverobotics.com/shop/odrive-v36)| ODRIVE V3.6 | - STlink programmer needed <br> - 2 motors <br>- 12-48V <br> - 60A (120A peak) <br> - low-side current sensing| [Aliexpress](https://www.aliexpress.com/item/1005002349959313.html?spm=a2g0o.productlist.0.0.6248381eOCYTRO&algo_pvid=30554e7d-0b77-44fc-a790-e35040ce3de9&algo_exp_id=30554e7d-0b77-44fc-a790-e35040ce3de9-0&pdp_ext_f=%7B%22sku_id%22%3A%2212000020231141543%22%7D) <br> [ODive shop](https://odriverobotics.com/shop) | 70-100€ <br> 200€
80+
[<img src="extras/Images/odrive.jpg" style="height:100px">](https://odriverobotics.com/shop/odrive-v36)| ODRIVE V3.6 | - STlink programmer needed <br> - 2 motors <br>- 12-48V <br> - 60A (120A peak) <br> - low-side current sensing| [Aliexpress](https://de.aliexpress.com/w/wholesale-odrive.html?spm=a2g0o.productlist.search.0) <br> [ODive shop](https://odriverobotics.com/shop) | 70-100€ <br> 200€
81+
[<img src="extras/Images/focn.png" style="height:100px">](https://www.tindie.com/products/plab/focn-bldc-driver-module/)| FOCn - BLDC driver module | - ESP32-S3 <br> - DRV8323 <br> - up to 45V <br> - 10A (25A peak) <br> - inline current sensing| [Tindie](https://www.tindie.com/products/plab/focn-bldc-driver-module/) <br> [Github](https://github.com/mrmp17/FOCn?tab=readme-ov-file) | 20€
82+
[<img src="extras/Images/driveshiled.png" style="height:100px">](https://github.com/simplefoc/SimpleFOC-DriveShield)| Arduino<br> <span class="simple">Simple<span class="foc">FOC</span>Drive</span> | - Arduino shield <br> - BSZ0904NSI MOSFETs <br> - 3PWM <br>- 8-30V <br> - 20A (30A peak) <br> - inline current sensing| [Aliexpress](https://de.aliexpress.com/item/1005010323309788.html) <br> [Github](https://github.com/simplefoc/SimpleFOC-DriveShield) | 20€
7183

7284

7385
<blockquote class="warning">
7486
<p class="heading">IFX007T and BTN8982 chips limitations</p>
7587
IFX007T and BTN8982 are based on relatively old transistor technology and have relatively long transistor rise times which can produce non-smooth operation.
7688
We suggest the boards based on these chips to be used only in closed loop mode, as the position sensor can correct possible noise from the driver.
7789
It can also be a good board for beginner users, to get familiar with the high-current FOC as an inexpensive solution, but with certain performance limits.
90+
</blockquote>
91+
92+
<blockquote class="info" markdown="1">
93+
<p class="heading">🔎 Find more boards</p>
94+
95+
There are many more boards compatible with the library, the above tables bring just a few examples.
96+
To find more boards, you can search for the BLDC drivers mentioned in the tables, or simply search for "simplefoc" on your favourite shopping website.
97+
98+
For example:
99+
- Aliexpress: ["simplefoc" search](https://de.aliexpress.com/w/wholesale-simplefoc.html?spm=a2g0o.productlist.search.0)
100+
- Ebay: ["simplefoc" search](https://www.ebay.com/sch/i.html?_nkw=simplefoc)
101+
102+
You can also check the [community projects](https://simplefoc.com/community) to see what other users are using in their projects, and share your own project as well!
103+
78104
</blockquote>

docs/simplefoc_library/hardware/drivers/index.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,15 @@ Selecting the right hardware is a balance of motor type, power requirements, and
3333

3434
### 1. Motor Type
3535
- **BLDC Motors**: Requires a [BLDC driver](bldc_drivers). Ensure the current and voltage ratings match your motor's specs.
36+
- <blockquote class="warning" markdown="1">⚠️ **No Drone ESCs**
37+
Traditional drone ESCs are not suitable for FOC because they typically use a fixed commutation scheme and lack the necessary control interfaces.
38+
</blockquote>
3639
- **Stepper Motors**:
3740
- **Dedicated [Stepper Driver](stepper_drivers)**: Best for 2-phase motors within standard current ranges (ex.NEMA17)
38-
- **Hybrid Mode**: You can actually use any [BLDC driver](bldc_drivers) to run a stepper motor.
39-
- ⚠️ **No Step/Dir Drivers**: Traditional "EasyDrivers" or A4988s (in step/dir mode) cannot be used for FOC because they do not allow direct phase voltage control.
41+
- **Hybrid Mode**: You can actually use any [BLDC driver](bldc_drivers) to run a stepper motor. - [See example](stepper_control_shield)
42+
- <blockquote class="warning" markdown="1">⚠️ **No Step/Dir Drivers**
43+
Traditional "EasyDrivers" or A4988s (in step/dir mode) cannot be used for FOC because they do not allow direct phase voltage control.
44+
</blockquote>
4045

4146
### 2. Current Requirements
4247
- **Low Current (< 5A)**: Integrated driver ICs are cost-effective and easy to use.
@@ -57,4 +62,4 @@ $$I_{max} = \frac{V_{DC}}{R}$$
5762
**Safety Steps:**
5863
- **Compare**: If $$I_{max}$$ exceeds your driver's rating, you must limit the voltage in software.
5964
- **Software Limit**: Use `driver.voltage_limit` and (`motor.voltage_limit` and/or `motor.current_limit`) to stay within safe bounds. - [see motor docs](motors_config)
60-
- **Power Supply**: If you can, use a current-limited lab bench power supply for your initial tests.
65+
- **Power Supply**: If you can, use a current-limited lab bench power supply for your initial tests.

docs/simplefoc_library/hardware/drivers/stepper_drivers.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,21 @@ This library will be compatible with most of the 2 phase stepper motor driver bo
1919
This library does not support stepper drivers with DIR+STEP (step and direction) interface such as A4988, DRV8825, TB6600, TB6560 and similar.
2020
</blockquote>
2121

22+
<blockquote class="info" markdown="1"><p class="heading">💡 Driving stepper motors with BLDC drivers</p>
23+
24+
You can also use any (6PWM and 3PWM) 3-phase [BLDC motor drivers](bldc_drivers) to drive any stepper motor, using the hybrid stepper mode. This is sometimes a simpler solution as you can use the same board for both BLDC and stepper motors, and it can also provide better performance as the BLDC drivers are usually more powerful than the stepper drivers. See an example of NEMA17 with <span class="simple">Simple<span class="foc">FOC</span>Shield</span> in the [example projects](stepper_control_shield).
25+
26+
</blockquote>
27+
2228
The choice of stepper driver depends directly of the stepper motor you are using, basically make sure the stepper driver can provide the current the motor needs to perform.
2329

2430

2531

2632
## Supported board examples
2733
Here are some stepper driver boards that are supported by this library.
2834

35+
In short: use a dedicated stepper driver for the simplest setup, two DC drivers for higher current options, or two BLDC drivers when you also want hybrid stepper mode and board reuse.
36+
2937
Examples | Description | Specifications | Link | Price
3038
---- | ---- | ---- | ---
3139
[<img src="extras/Images/ms1508.jpg" style="height:100px">](https://www.ebay.com/itm/Dual-Channel-DC-Motor-Driver-Mini-Module-PWM-Speed-Control-Beyond-L298N-S2U/124342998274?hash=item1cf36b9502:g:zJoAAOSwFuZbSF25)| Stepper driver MX1508| - MX1508 chip <br> - 1 motor <br>- 5V-10V <br> - 2.5A | [Ebay](https://www.ebay.com/itm/Dual-Channel-DC-Motor-Driver-Mini-Module-PWM-Speed-Control-Beyond-L298N-S2U/124342998274?hash=item1cf36b9502:g:zJoAAOSwFuZbSF25) | 1€
@@ -50,4 +58,3 @@ Examples | Description | Specifications | Link | Price
5058
[<img src="extras/Images/BTS7960B.jpg" style="height:100px">](https://fr.aliexpress.com/item/32965904058.html)| Aideepen BTS7960B| - BTS7960B chip <br> - 1 motor <br>- 5V-30V <br> - 43A MAX| [Aliexpress](https://fr.aliexpress.com/item/32965904058.html) | 10€
5159

5260

53-
Finally you can also use two 3-phase [BLDC motor drivers](bldc_drivers). Each of the BLDC drivers has 3 half-bridges, from which you will need to use 2. When you combine two of them you will be using 4 output pins out of 6 they have.

extras/Images/driveshiled.png

251 KB
Loading

extras/Images/focn.png

334 KB
Loading

extras/Images/nanoshield.png

195 KB
Loading

0 commit comments

Comments
 (0)