You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We live in very exciting times 😃! BLDC motors are entering the hobby community more and more and many great projects have already emerged leveraging their far superior dynamics and power capabilities. BLDC motors have numerous advantages over regular DC motors but they have one big disadvantage, the complexity of control. Even though it has become relatively easy to design and manufacture PCBs and create our own hardware solutions for driving BLDC motors the proper low-cost solutions are yet to come. One of the reasons for this is the apparent complexity of writing the BLDC driving algorithms, Field oriented control (FOC) being an example of one of the most efficient ones.
9
10
The solutions that can be found on-line are almost exclusively very specific for certain hardware configuration and the microcontroller architecture used.
@@ -17,33 +18,30 @@ Therefore this is an attempt to:
17
18
- See also [@byDagor](https://github.com/byDagor)'s *fully-integrated* ESP32 based board: [Dagor Brushless Controller](https://github.com/byDagor/Dagor-Brushless-Controller)
<li>Sensor floating point error bugfix (initial solution) #83, #37</li>
24
-
<li>Sensor class restructuring - <b>slight API change</b> - <ahref="https://docs.simplefoc.com/sensors">docs</a></li>
25
-
<li>Restructured the generic code and simplified adding new mcus: <b>IMPORTANT: an additional compiler flag needed for PlatformIO</b> see <ahref="https://github.com/simplefoc/Arduino-FOC/issues/99">issue</a> and <ahref="https://docs.simplefoc.com/library_platformio">PlatformIO docs</a></li>
26
-
<li>Removed initial jump #110, #111</li>
27
-
<li>Double to float transformation of the code - performance increase by <ahref="https://github.com/sDessens">@sDessens</a> (#100), <ahref="https://github.com/KaSroka">@KaSroka</a> (#100) </li>
28
-
<li> <ahref="https://docs.simplefoc.com/docs_chinese"><b>Docs webiste translated to Chinese!</b></a> 🎉: Awesome work 😃 by <ahref="https://github.com/MINQING1101">@MINQING1101</a>, <ahref="https://github.com/Deng-ge-open-source">@Deng-ge-open-source</a> and <ahref="https://github.com/mingggggggg">@mingggggggg</a></li>
29
-
<li>New MCU support - <ahref="https://docs.simplefoc.com/microcontrollers">docs</a>
25
+
<li>Sensor class init bugfix <a href="https://github.com/simplefoc/Arduino-FOC/issues/121">#121</a></li>
<li>Added the new motion control interface to the commander <a href="https://docs.simplefoc.com/commander_target">see docs</a>
30
28
<ul>
31
-
<li>Support for arduino leonardo #108 </li>
32
-
<li>Initial support for portenta h7 board in collaboration with <img src="https://docs.simplefoc.com/extras/Images/arduino.png" height="15px"><a href="https://www.arduino.cc/">Arduino</a></li>
33
-
<li>Initial support for esp8266</li>
29
+
<li>New target setting - possible to set the position, velocity and torque target at once</li>
30
+
<li>Separated the motion control interface from full motor callback - only motion control and torque control type, enable disable and target setting</li>
34
31
</ul>
35
-
</li>
36
-
<li>Low side current sensing initial support - <ahref="https://docs.simplefoc.com/current_sense">docs</a>
32
+
</li>
33
+
<li>New MCU support <a href="https://docs.simplefoc.com/microcontrollers">see docs</a>
37
34
<ul>
38
-
<li>Initial support for stm32 B_G431B_ESC1 by <a href="https://github.com/sDessens">@sDessens</a>: PR #73</li>
39
-
<li>Initial support for samd21 by <a href="https://github.com/maxlem">@maxlem</a>: PR #79</li>
40
-
<li>Initial support for esp32 by <a href="https://github.com/maxlem">@byDagor</a></li>
41
-
</ul>
42
-
</li>
43
-
</ul>
35
+
<li>NRF52 series mcus support by <a href="https://github.com/Polyphe">@Polyphe</a></li>
36
+
<li><b>esp32 arduino package transfer to v2.0.1+</b> - helpful <a href="https://github.com/simplefoc/Arduino-FOC/pull/92/149">PR#149</a> by <a href="https://github.com/samguns">samguns</a></li>
37
+
<li>Initial support for esp32s2 and esp32s3 - separation of the esp32 mcpwm and led implementation</li>
38
+
</ul>
39
+
</li>
40
+
<li>Generic sensor class - to implement a new sensor only implement one function <a href="https://docs.simplefoc.com/generic_sensor">see docs</a></li>
41
+
</ul>
44
42
</blockquote>
45
43
46
-
## Arduino *SimpleFOClibrary* v2.1
44
+
## Arduino *SimpleFOClibrary* v2.2
47
45
48
46
<palign="">
49
47
<ahref="https://youtu.be/Y5kLeqTc6Zk">
@@ -73,7 +71,7 @@ This video demonstrates the *Simple**FOC**library* basic usage, electronic conne
Copy file name to clipboardExpand all lines: examples/hardware_specific_examples/SimpleFOCShield/version_v2/single_full_control_example/single_full_control_example.ino
Copy file name to clipboardExpand all lines: examples/utils/calibration/find_pole_pair_number/encoder/find_pole_pairs_number/find_pole_pairs_number.ino
Copy file name to clipboardExpand all lines: examples/utils/calibration/find_pole_pair_number/magnetic_sensor/find_pole_pairs_number/find_pole_pairs_number.ino
Copy file name to clipboardExpand all lines: examples/utils/sensor_test/magnetic_sensors/magnetic_sensor_i2c/magnetic_sensor_i2c_dual_bus_examples/esp32_i2c_dual_bus_example/esp32_i2c_dual_bus_example.ino
+1-1
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,7 @@ void setup() {
18
18
19
19
// Normally SimpleFOC will call begin for i2c but with esp32 begin() is the only way to set pins!
0 commit comments