esp-cpp / espp Goto Github PK
View Code? Open in Web Editor NEWC++ components for ESP
Home Page: https://esp-cpp.github.io/espp/
License: MIT License
C++ components for ESP
Home Page: https://esp-cpp.github.io/espp/
License: MIT License
Describe the bug
As noticed when working on #5 - when enabling velocity filtering (either using Lowpass
or Butterworth
filters, the PID became unstable, however if I removed all filtering (just returning the raw input from the filter function in main()
), then it stabilized and worked well.
This might not actually be a bug in the filters and may have more to do with the control system itself, but definitely warrants more investigation.
To Reproduce
Expected behavior
Filtering should not destroy the stability of the control system?
Screenshots / Images
Hardware / Software Configuration (please complete the following information):
Additional context
Could be related to the delay that the filters add (esp. since it seems to also occur when using a simple moving average filter with an alpha less than 0.5.
Controlling a motor is nice (having open & closed angle & velocity control), but it's even better to be able to use it to generate different feelings / sounds.
A wrapper class (probably bldc_haptics
that uses a bldc_motor
to allow the user to easily specify and switch between different kinds of haptics settings and effects. Some examples might be proportional resistance, multiple clicky detents, and button press effects.
Not doing this? J/K I'd never think that.
Inspiration & guidance comes from the smartknob project, such as the configurations found here
I am review the bldc_driver code by comparing to your code and found some issue.
bldc_driver.set_pwm(25,25,25);
// for example
I assume the A,B,C high pin should be 25% high, 75% low. But instead, the high pin now is 75% high, 25% low.
ESP_ERROR_CHECK(mcpwm_generator_set_actions_on_compare_event( gen_high, MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_UP, comp, MCPWM_GEN_ACTION_HIGH), MCPWM_GEN_COMPARE_EVENT_ACTION(MCPWM_TIMER_DIRECTION_DOWN, comp, MCPWM_GEN_ACTION_LOW), MCPWM_GEN_COMPARE_EVENT_ACTION_END())); }
This function set gpio high
at up direction
and low
at down direction
.
For a counter counting from 0 -> 100->0, if set to 25%, the gpio will set high
at 24->25
and set low
at 26->25
, which will give high
time from 25->100->25
which is 75% high.
When set pwm to 25%, the high side at a_high_gpio show be 25% high, 75% low.
No response
I know it works with your FOC controller. If this is a issue, what will change in the FOC controller?
All the highs lows are inverted, May only change the motor direction?
I think it would be cool to use the NFC tags I have to allow guests at my house to tap their phone to join the WiFi network nicely and securely.
Add support for WiFi configuration token application/vnd.wfa.wsc to the ndef
component.
Don't always have enough GPIO for all the needs of a project, so having a GPIO expander (i2c, spi) would be helpful.
A component which wraps the MCP23017 / MCP23S17 hardware to configure expandable GPIO with interrupt.
Right now the example READMEs are all templates without any useful information. Since most of the examples have associated documentation (images / videos / text) on their associated PRs, it would be good to move some of that information over to the READMEs themselves for people who are browsing the repo and learning how to run the examples / use the components.
Describe the bug
CodeQL github action doesn't seem to be able to find code when it runs so it thinks there is nothing to analyze.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
CodeQL is able to find the code and analyze it.
Screenshots / Images
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.