Code Monkey home page Code Monkey logo

nostromo's People

Contributors

adrianmiriuta avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nostromo's Issues

[Question] Communication means

Hi! Do you have any other communication means except for github issues? Like some forum, discord server or telegram channel?
I am super excited after finding this awesome project but it looks like there is no documentation...
I want to test it on my tricopter with SucceX 50A v2, but I'm not sure if it's the same device as SUCCEX50AV2 target. Do I have to replace stock BLHeli32 bootloader with costaguana? And if yes, is it possible to backup original one? Should I do it with STLink or maybe it's possible to reflash the BL without external swd debugger? Any docs or notes would be awesome!
Thanks!

Complementary PWM question

Hi,

First of all I would like to say that your implementation is very clean and readable, thanks for posting such a valuable work. I was searching for a regenerative breaking solution and found your repository. I read the code of motor.c and have a question. Could you please help me with it?

There is a code for pin initialization for fd6288,
And I am trying to understand the logic of complementary PWM and regenerative brake.

#if defined(FD6288)
void motorPhaseA(uint8_t hBridgeMode) {
switch (hBridgeMode) {
case HBRIDGE_PWM:
if (!motor.ComplementaryPWM || motor.BrakeActiveProportional) {
LL_GPIO_SetPinMode(A_FET_LO_GPIO, A_FET_LO_PIN, LL_GPIO_MODE_OUTPUT);
A_FET_LO_GPIO->BRR = A_FET_LO_PIN;
} else {
LL_GPIO_SetPinMode(A_FET_LO_GPIO, A_FET_LO_PIN, LL_GPIO_MODE_ALTERNATE);
}
LL_GPIO_SetPinMode(A_FET_HI_GPIO, A_FET_HI_PIN, LL_GPIO_MODE_ALTERNATE);
break;

It seems that the gate driver pins are not in PWM mode because of this
if (!motor.ComplementaryPWM || motor.BrakeActiveProportional). If complementary pwm is set on, the brake should be set to full mode, in order to configure the pins in alternate function and generate complementary PWM, but in main.c the motorBrakeFull() function is called which sets che pins as GPIO output. So it looks like the regenerative braking could not be used with fd6288, while it looks OK for ncp3420 drivers.

#if defined(NCP3420)
void motorPhaseA(uint8_t hBridgeMode) {
switch (hBridgeMode) {
case HBRIDGE_PWM:
LL_GPIO_SetPinMode(A_FET_OE_GPIO, A_FET_OE_PIN, LL_GPIO_MODE_OUTPUT);
A_FET_OE_GPIO->BSRR = A_FET_OE_PIN;
LL_GPIO_SetPinMode(A_FET_IN_GPIO, A_FET_IN_PIN, LL_GPIO_MODE_ALTERNATE);
break;
I would be very happy if you could help me understanding the regenerative braking approach and the complementary drive mode.

Sorry for my bad English, it is not my native language.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.