Skip to content
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

Motor twitching around 83000rpm #21

Closed
damosvil opened this issue Sep 22, 2022 · 3 comments
Closed

Motor twitching around 83000rpm #21

damosvil opened this issue Sep 22, 2022 · 3 comments
Assignees
Labels
documentation Improvements or additions to documentation
Milestone

Comments

@damosvil
Copy link
Contributor

damosvil commented Sep 22, 2022

Describe the issue

When motors are spinning at 83.000 rpm they start twitching. It happens when motors have no load, so they can reach those speeds.

Bluejay 48khz bidir               ESC1 twitching                                            ESC2 twitching
0802 19500kv                       85000rpm - 1421 throttle - 1,1A                   83000rpm - 1491 throttle - 1,1A
1102   19000kv                     83000rpm - 1474 throttle - 1,5A                 83000rpm - 1544 throttle - 1,2A

Bluejay 48khz no bidir           ESC1 twitching                                          ESC2 twitching
0802 19500kv                        1386 throttle                                              1456 throttle
1102   19000kv                      1474 throttle                                              1561 throttle

Bluejay 24khz bidir               ESC1 twitching                                            ESC2 twitching
0802 19500kv                       83000 rpm - 1474 throttle - 1,8A                 84000rpm - 1500 throttle - 1,6A
1102   19000kv                     83000 rpm  - 1561 throttle - 2A                   84000rpm - 1600 throttle - 1,8A

Bluejay 24khz no bidir           ESC1 twitching                                          ESC2 twitching
0802 19500kv                        1474 throttle -  1,8A                                   1500 throttle - 1,6A
1102   19000kv                      1561 throttle - 2A                                       1600 throttle - 1,8A

Blheli_S                                 ESC1 twitching                                         ESC2 twitching
0802 19500kv                        1500 throttle - 1,7A                                   1600 throttle - 1,7A
1102   19000kv                      1600 throttle - 2A                                      1600 throttle - 2A

Notes:
- 19000kv Motors get unstable at 83000rpm, but they get so hot that they can only withstand those rpm for short periods of time (10s and they burn on touch).
- Tests are all without load
- Test voltage is 8V
- Tests made with DSHOT300, Bluejay version PWM 24 & 48khz, Blheli_S PWM 24khz
- Using Bluejay 48khz with DSHOT600 instead DSHOT300 twitching starts about 80000rpm instead 83000rpm.

Additional tests in other escs have thrown the same issue, so it seems a MCU speed limitation.

Bluejay version

0.16

ESC variant

any

PWM frequency

24

DShot bitrate

Any

Bidirectional DShot

Any

FC firmware

Betaflight 4.3.1

Motor size

Any

Configurator debug log

No response

@stylesuxx stylesuxx added the documentation Improvements or additions to documentation label Oct 7, 2022
@damosvil damosvil linked a pull request Feb 25, 2023 that will close this issue
@stylesuxx
Copy link
Contributor

stylesuxx commented Jun 21, 2023

After juggling some numbers around and speaking to a couple of people (shout out to TuneRC in particular) some more findings:

Technically we are limited to around 510k eRPM on 48MHz MCUs, when translating this to our "worst" case scenario which would be motors with 12 poles (6 pairs) resulting in a max of 85000RPM (510k / (motorpoles / 2)) before the hardware reaches it's limits. If we translate that back to motor kV and 1S HV voltage of 4.35V we arrive at a practical kV limit of 19540KV. This is pretty much our worst case: low pole count, 1S HV.

Since motor KV are usually not given under load, this theoretical limit is to be taken with a grain of salt since the effective RPM will be less under load, thus motor kV always need to be looked at under load - otherwise they are a useless spec standing by themselves and only motors with same dimensions could be compared kV wise.

Nonetheless super high kV motors are pushing the ESC to it's absolute limits. Seeing that there are 32500KV motors it is easy to see, that we are moving into territory where the 83kRPM limits could be reached (in certain edge cases) - thus resulting in de-syncs.

This also explains the twitching observed by @damosvil and is basically by design and not much we can change with the hardware used here.

Conclusion: If you insist on running insanely high kV motors, be aware that you are running into real risk of reaching hardware limitations and thus de-syncs. If experiencing de-syncs there are a couple way to mitigate those in this situation:

  • throttle limit (this is a bit tricky since flight controller firmware might still send higher throttles values to the ESC if needed)
  • motor output limit (preferred way since this will limit the actual throttle value sent to the ESCs. Reduce this value until de-syncs stop and you should be fine. You can also monitor this by looking at the RPM OSD element and see if you are coming into the critical RPM area)

Things to look into:

  • Is there a way for us to simply limit commutation speed and try to not go faster once we are reaching our technical limit? Maybe have some safety offset to the max eRPM at which we try not to go faster?

References:

@stylesuxx stylesuxx added this to the v0.21.0 milestone Jul 19, 2023
@stylesuxx stylesuxx self-assigned this Jul 19, 2023
@stylesuxx
Copy link
Contributor

stylesuxx commented Jul 19, 2023

Move to Wiki:

  • New page "Known Limitations"
  • Experiment, explanation, Data, Setup
  • Conclusion about eRPM/RPM limit

@stylesuxx
Copy link
Contributor

Moved to Wiki - closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants