Skip to content

Update #5

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 150 commits into from
Jun 8, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
150 commits
Select commit Hold shift + click to select a range
7902e62
make AREF pin optional in SAMD current sensing
runger1101001 Oct 12, 2021
c99dd26
Merge branch 'dev' of https://github.com/simplefoc/Arduino-FOC.git in…
runger1101001 Oct 12, 2021
063d1d5
Update generic_mcu.cpp
Polyphe Oct 30, 2021
8e77508
Add files via upload
Polyphe Oct 30, 2021
748ff92
fix #121 - add calls to Sensor::init()
runger1101001 Oct 30, 2021
236b955
Merge branch 'master' of https://github.com/Polyphe/Arduino-FOC into …
runger1101001 Oct 30, 2021
28fb9de
Merge branch 'Polyphe-master' into dev
runger1101001 Oct 30, 2021
0fe8e7c
added driver limit to the openloop examples #124
askuric Oct 31, 2021
a1f19c9
merge issue
askuric Oct 31, 2021
35ae169
bug in naming
askuric Oct 31, 2021
396cffd
Merge pull request #127 from runger1101001/dev
askuric Oct 31, 2021
4acf3d6
voltage and current limiting handling bug #118
askuric Oct 31, 2021
92203b6
initial support for common position+velocity+torque setting with comm…
askuric Oct 31, 2021
8532cee
removed string.h
askuric Oct 31, 2021
a6075ec
update release readme
askuric Oct 31, 2021
4555f91
fix for #128 stm32g4xx current sense compile error
runger1101001 Nov 1, 2021
ffd2c5d
Merge pull request #129 from runger1101001/dev
runger1101001 Nov 1, 2021
494ced5
SAMD driver improvements
runger1101001 Nov 10, 2021
64de2e4
SAMD driver - pwm freq settable also on SAMD21
runger1101001 Nov 10, 2021
ddc5ec3
Merge pull request #134 from runger1101001/dev
runger1101001 Nov 12, 2021
930a686
fix nRF52 support to compile for Nano 33 (mbed)
runger1101001 Nov 17, 2021
e24534a
Merge pull request #137 from runger1101001/dev
runger1101001 Nov 17, 2021
e80c72f
define sizes and explicit values for all enums
runger1101001 Nov 27, 2021
6c880c7
Merge pull request #141 from runger1101001/dev
runger1101001 Dec 6, 2021
009686a
support motor intialization status tracking
runger1101001 Dec 6, 2021
eb682ab
enable SPI sensor for RP2040, its now supported
runger1101001 Dec 7, 2021
4fee8da
added implementations of generic position sensor and current sense
askuric Dec 17, 2021
902c5a6
reade update generic sensors
askuric Dec 17, 2021
5de2e75
Merge pull request #143 from runger1101001/motor_status
runger1101001 Dec 18, 2021
94c102b
Merge pull request #144 from runger1101001/dev
runger1101001 Dec 18, 2021
82178dc
Merge pull request #145 from simplefoc/FEAT_generic_sensors
askuric Dec 20, 2021
7d04fa5
separation of the esp32 mcpwm and ledc implementation
askuric Jan 6, 2022
140de3b
separation of the esp32 mcpwm and ledc implementation - typo
askuric Jan 6, 2022
b0ad09e
Merge branch 'dev' of github.com:askuric/Arduino-FOC into dev
askuric Jan 6, 2022
a3d72c0
inital navie support of the esp32s2 and esp32s3 - issue #120, #109
askuric Jan 6, 2022
1ff4c06
Modify PWM timer configuration according to API changes in esp32 offi…
samguns Jan 7, 2022
bc87456
Refine code format
samguns Jan 7, 2022
dbececd
esp32s2/s3 support for multiple motors + cs separation
askuric Jan 7, 2022
cb4da9c
forgotten define
askuric Jan 7, 2022
3816c82
workflow update for esp32 package v2.0.2 and esp32s2
askuric Jan 7, 2022
46ebf64
Merge pull request #149 from samguns/dev
askuric Jan 7, 2022
e4526a0
Merge branch 'dev' of github.com:askuric/Arduino-FOC into dev
askuric Jan 7, 2022
e87dd58
update workflow + refactoring
askuric Jan 7, 2022
1d634b4
center alignement fixed
askuric Jan 8, 2022
25f7b0a
esp v2.0.2 i2c begin issue
askuric Jan 8, 2022
67832d4
readme update esp32 v2.0.2
askuric Jan 8, 2022
ad08e63
contributor added
askuric Jan 8, 2022
34c0399
joss paper badge
askuric Jan 8, 2022
912bfcd
driver refactoring (completely unfinished!)
runger1101001 Jan 23, 2022
7f02b8a
driver API refactor, part 1, the easy ones
runger1101001 Feb 1, 2022
84269cd
commander refactorred and separated motion control into a new callback
askuric Feb 3, 2022
42cf4b4
remove calib current
askuric Feb 3, 2022
a3c80da
Update Commander.h
askuric Feb 3, 2022
9451d96
Update Commander.cpp
askuric Feb 3, 2022
ecd1c25
Update README.md
askuric Feb 3, 2022
47e1a7b
Merge pull request #151 from simplefoc/dev
askuric Feb 3, 2022
e0cceab
Merge branch 'dev' of https://github.com/simplefoc/Arduino-FOC into d…
Feb 3, 2022
898e40e
Merge branch 'master' of https://github.com/simplefoc/Arduino-FOC int…
Feb 3, 2022
30d131c
Update ccpp.yml
askuric Feb 4, 2022
a149896
portenta refactored (but untested)
Feb 5, 2022
fba8876
STM32 refactored (but untested)
Feb 5, 2022
514f1c1
STM32 driver refactor (not yet tested)
Feb 5, 2022
cc3393d
esp32 driver refactor (untested)
Feb 5, 2022
d243cbf
made ESP32 LEDC driver selectable via build flag
Feb 6, 2022
e433f95
refactor and simplify LEDC driver (untested)
Feb 6, 2022
b9257bc
nrf52 driver refactored (but untested)
Feb 6, 2022
a2344ef
make 2-pwm unsupported explicit
Feb 6, 2022
b2773d8
due driver refactor (but untested)
Feb 6, 2022
8db941a
fixup SAMD driver refactor (working, tested)
Feb 7, 2022
3704a14
Merge pull request #153 from runger1101001/driver_refactor
askuric Feb 12, 2022
5889c49
some comments and small typo for atmega328
askuric Feb 12, 2022
aefee3f
initial debug commit for merge
runger1101001 Feb 12, 2022
829de7f
Merge remote-tracking branch 'origin/dev' into dev
runger1101001 Feb 12, 2022
30510c7
intermediate commit for reaftoring of current sense
askuric Feb 12, 2022
452e1b8
pass shaft angle, not electric angle to motor.move in alignment_and_c…
dreusel Feb 12, 2022
0ec82e3
New debug management independent of monitoring
runger1101001 Feb 12, 2022
00e550e
make the old behaviour the default
runger1101001 Feb 12, 2022
4441d36
esp32 adc driver speedup
askuric Feb 13, 2022
6019e9d
esp32 final support for multiple motors + samd refactor for new low l…
askuric Feb 21, 2022
0994853
forgotten debugging code
askuric Feb 21, 2022
92915ff
generic current sense typo
askuric Feb 22, 2022
358f1e3
added example for odrive
askuric Feb 22, 2022
9a94b34
new version increment
askuric Feb 22, 2022
4f38704
added f405 to compile check and updated readme
askuric Feb 22, 2022
0ca956e
typo in action yaml
askuric Feb 22, 2022
0119666
typo in action yaml 2
askuric Feb 22, 2022
942b3d2
added stm32duino v2.2 to the action yaml
askuric Feb 22, 2022
db5bab6
typo in action yaml 3
askuric Feb 22, 2022
5dfb4aa
typo in action yaml 5
askuric Feb 22, 2022
13d67f9
current sense hardware restructuring + added bg431-esc to compile che…
askuric Feb 22, 2022
c2068a3
action yaml typo all files
askuric Feb 22, 2022
cac0484
set driver initialized flag
Feb 27, 2022
401ebe9
Merge branch 'dev' of https://github.com/simplefoc/Arduino-FOC into dev
Feb 27, 2022
41856d3
Fix example. M_PI does not exist, use _PI instead
gagarcr Sep 18, 2021
0066b5e
STM32 driver refactoring
Mar 9, 2022
0051af4
stm32 driver: fix check for low-side channels
Mar 9, 2022
3b7b261
fix channel counting
Mar 10, 2022
9929ade
Remove unsed warnings
Mar 8, 2022
30a72da
Remove unused parameter warning
gagarcr Mar 9, 2022
2d53acc
Remove string to char * warning
gagarcr Mar 9, 2022
e3c2260
Remove warning: ISO C++ forbids converting a string constant to 'char…
gagarcr Mar 9, 2022
8c5fab4
Use _UNUSED(
gagarcr Mar 10, 2022
003e42f
Fix example. M_PI does not exist, use _PI instead
gagarcr Sep 18, 2021
3a066ed
Merge remote-tracking branch 'Github/FixFindPolePairExample' into Fix…
gagarcr Mar 10, 2022
0fec3da
Remove unused warning
gagarcr Mar 10, 2022
5038266
Merge pull request #158 from runger1101001/dev
runger1101001 Mar 16, 2022
458990c
Merge pull request #161 from gagarcr/Remove_warnigs
askuric Mar 17, 2022
a9f4635
Merge pull request #160 from gagarcr/FixFindPolePairExample
askuric Mar 17, 2022
b7c7136
FEAT initial low side current sensing for stm32f4
askuric Mar 17, 2022
bdc9591
FEAT esp32 change the pwm rnage and stm32 driver speration header file
askuric Mar 17, 2022
9fbbf46
odrive example with current sesning
askuric Mar 17, 2022
bc2b355
FEAT current limiting in voltage mode and support for adding the KV r…
askuric Mar 17, 2022
493273f
merge conflict relosution stm32mcu.cpp in drivers
askuric Mar 17, 2022
5d06560
FIX remove init by default of pin names
askuric Mar 17, 2022
daaa0fb
bugfixes and handling only one adc nad no timer 8
askuric Mar 17, 2022
8ddddd2
only print combination if there is one found
Mar 20, 2022
ebeef3b
working to repair software 6-pwm
Mar 21, 2022
cfed655
added example sketch to find linear hall ADC center offsets, plus twe…
nanoparticle Apr 1, 2022
7b91728
intermediate state - fixing problems
Apr 2, 2022
d0edce0
Fixed Software 6-PWM?
Apr 2, 2022
645b976
remove debug statements
Apr 2, 2022
1b2f5a7
Merge pull request #165 from runger1101001/dev
runger1101001 Apr 2, 2022
046e0fb
forgotten unset handling of KV
askuric Apr 3, 2022
0505c73
kv rating to the commander
askuric Apr 3, 2022
0400c38
added odrive examples
askuric Apr 3, 2022
37e1a73
initial tested low-side current sensing for f1 and f4
askuric Apr 6, 2022
c02da01
typo in yaml file
askuric Apr 6, 2022
90880cf
Update ccpp.yml
askuric Apr 6, 2022
6ecb091
g4 initial push
askuric Apr 6, 2022
091046c
Merge branch 'dev' of github.com:askuric/Arduino-FOC into dev
askuric Apr 6, 2022
01e715d
removed old odrive example + extended simplefoc debug
askuric Apr 18, 2022
0a99d94
readme update
askuric Apr 18, 2022
bed08d7
index search bugfix
askuric Apr 18, 2022
678c578
refactored the back-emf support using KV rating of the motor - rpm/V
askuric Apr 18, 2022
0ff0112
Merge pull request #157 from dreusel/patch-1
askuric Apr 18, 2022
519efac
Merge pull request #164 from nanoparticle/dev
runger1101001 Apr 23, 2022
249e6a3
enabled support for _NC in current sense definition
Apr 25, 2022
daaa3e1
removed K_bemf and added KV_rating
Apr 26, 2022
4101a6e
kv rating find examples
Apr 30, 2022
2d1edbd
type in KV examples
Apr 30, 2022
b4128e4
typo 2 KV rating
Apr 30, 2022
bc0f5a4
current sense better align + example refactoring
askuric May 1, 2022
79ea4f6
forgotten 10k samples at start
askuric May 1, 2022
d3aee2b
readme update
askuric May 1, 2022
76ef2fc
update readme
askuric May 1, 2022
b3884a4
readme update release
askuric May 1, 2022
b36c026
Update issue templates
askuric May 15, 2022
97da237
Create CODE_OF_CONDUCT.md
askuric May 15, 2022
bb70738
Merge pull request #179 from simplefoc/add-code-of-conduct-1
askuric May 15, 2022
817f459
Update README.md
askuric May 15, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
name: Bug report
about: Create a report to help us improve
title: "[BUG]"
labels: possible bug
assignees: ''

---

This is a simplified template, feel free to change it if it does not fit your case.

**Describe the bug**
A clear and concise description of what the bug is.

**Describe the hardware setup**
For us it is very important to know what is the hardware setup you're using in order to be able to help more directly
- Which motor
- Which driver
- Which microcontroller
- Which position sensor
- Current sensing used?

**IDE you are using**
- Arduino IDE
- Platformio
- Something else

**Tried the Getting started guide? - if applicable**
Have you tried the getting started guide and at which step are you blocked in
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: "[FEATURE]"
labels: enhancement
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
Description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
Description of what you want to happen.

**Describe alternatives you've considered**
Description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
35 changes: 25 additions & 10 deletions .github/workflows/ccpp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,19 @@ jobs:
- arduino:sam:arduino_due_x # arduino due
- arduino:samd:nano_33_iot # samd21
- adafruit:samd:adafruit_metro_m4 # samd51
- esp32:esp32:esp32doit-devkit-v1 # esm32
- STM32:stm32:GenF1:pnum=BLUEPILL_F103C8 # stm32 bluepill
- STM32:stm32:Nucleo_64:pnum=NUCLEO_F411RE # stm32 nucleo
- esp32:esp32:esp32doit-devkit-v1 # esp32
- esp32:esp32:esp32s2 # esp32s2
- STMicroelectronics:stm32:GenF1:pnum=BLUEPILL_F103C8 # stm32 bluepill
- STMicroelectronics:stm32:Nucleo_64:pnum=NUCLEO_F411RE # stm32 nucleo
- STMicroelectronics:stm32:GenF4:pnum=GENERIC_F405RGTX # stm32f405 - odrive
- STMicroelectronics:stm32:Disco:pnum=B_G431B_ESC1 # B-G431-ESC1
- arduino:mbed_rp2040:pico # rpi pico

include:
- arduino-boards-fqbn: arduino:avr:uno # arudino uno - compiling almost all examples
sketch-names: '**.ino'
required-libraries: PciManager
sketches-exclude: bluepill_position_control, esp32_position_control, esp32_i2c_dual_bus_example, stm32_i2c_dual_bus_example, magnetic_sensor_spi_alt_example, osc_esp32_3pwm, osc_esp32_fullcontrol, nano33IoT_velocity_control, smartstepper_control,esp32_current_control_low_side, stm32_spi_alt_example, esp32_spi_alt_example, B_G431B_ESC1_position_control
sketches-exclude: bluepill_position_control, esp32_position_control, esp32_i2c_dual_bus_example, stm32_i2c_dual_bus_example, magnetic_sensor_spi_alt_example, osc_esp32_3pwm, osc_esp32_fullcontrol, nano33IoT_velocity_control, smartstepper_control,esp32_current_control_low_side, stm32_spi_alt_example, esp32_spi_alt_example, B_G431B_ESC1, odrive_example_spi, odrive_example_encoder, single_full_control_example, double_full_control_example

- arduino-boards-fqbn: arduino:sam:arduino_due_x # arduino due - one full example
sketch-names: single_full_control_example.ino
Expand All @@ -36,17 +39,29 @@ jobs:
platform-url: https://adafruit.github.io/arduino-board-index/package_adafruit_index.json
sketch-names: single_full_control_example.ino

- arduino-boards-fqbn: esp32:esp32:esp32s2 # esp32s2
platform-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json
sketch-names: bldc_driver_3pwm_standalone.ino, stepper_driver_2pwm_standalone.ino, stepper_driver_4pwm_standalone

- arduino-boards-fqbn: esp32:esp32:esp32doit-devkit-v1 # esp32
platform-url: https://dl.espressif.com/dl/package_esp32_index.json
platform-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json
sketch-names: esp32_position_control.ino, esp32_i2c_dual_bus_example.ino, esp32_current_control_low_side.ino, esp32_spi_alt_example.ino

- arduino-boards-fqbn: STM32:stm32:GenF1:pnum=BLUEPILL_F103C8 # bluepill - hs examples
platform-url: https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json
- arduino-boards-fqbn: STMicroelectronics:stm32:GenF1:pnum=BLUEPILL_F103C8 # bluepill - hs examples
platform-url: https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
sketch-names: bluepill_position_control.ino, stm32_i2c_dual_bus_example.ino, stm32_spi_alt_example.ino

- arduino-boards-fqbn: STMicroelectronics:stm32:Disco:pnum=B_G431B_ESC1 # B-G431-ESC1
platform-url: https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
sketch-names: B_G431B_ESC1.ino

- arduino-boards-fqbn: STMicroelectronics:stm32:GenF4:pnum=GENERIC_F405RGTX # stm32f405 - odrive
platform-url: https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
sketch-names: odrive_example_encoder.ino, odrive_example_spi.ino

- arduino-boards-fqbn: STM32:stm32:Nucleo_64:pnum=NUCLEO_F411RE # one full example
platform-url: https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json
sketch-names: single_full_control_example.ino, stm32_spi_alt_example.ino
- arduino-boards-fqbn: STMicroelectronics:stm32:Nucleo_64:pnum=NUCLEO_F411RE # nucleo one full example
platform-url: https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
sketch-names: single_full_control_example.ino, stm32_spi_alt_example.ino, sdouble_full_control_example.ino



Expand Down
128 changes: 128 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
# Contributor Covenant Code of Conduct

## Our Pledge

We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.

We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.

## Our Standards

Examples of behavior that contributes to a positive environment for our
community include:

* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community

Examples of unacceptable behavior include:

* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting

## Enforcement Responsibilities

Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.

Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.

## Scope

This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
info@simplefoc.com.
All complaints will be reviewed and investigated promptly and fairly.

All community leaders are obligated to respect the privacy and security of the
reporter of any incident.

## Enforcement Guidelines

Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:

### 1. Correction

**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.

**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.

### 2. Warning

**Community Impact**: A violation through a single incident or series
of actions.

**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.

### 3. Temporary Ban

**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.

**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.

### 4. Permanent Ban

**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.

**Consequence**: A permanent ban from any sort of public interaction within
the community.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.

Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).

[homepage]: https://www.contributor-covenant.org

For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.
Loading