Makefile using complementary, mellinger with flow deck

Discussions about all things Bitcraze
Post Reply
Sexydove
Beginner
Posts: 8
Joined: Wed Apr 25, 2018 10:36 pm

Makefile using complementary, mellinger with flow deck

Post by Sexydove »

Thanks to the fast replies!
...

To experience enhanced flight method by quaternion,
I've changed the makefile to below description, but the flow deck doesn't works with one assert.
(Flow deck and loco position deck are the only using decks on cf2)
(Since both estimator_complementary.c and controller_mellinger.c had quaternion based codes, I compiled both.)
Line 29~36

Code: Select all

######### Stabilizer configuration ##########
##### Sets the name of the stabilizer module to use.
ESTIMATOR          ?= complementary
CONTROLLER         ?= mellinger
#pid
POWER_DISTRIBUTION ?= stock
SENSORS 					 ?= cf2
Assert:

Code: Select all

DECK_CORE: Deck 1 test [FAIL].
SYS: Assert failed at src/modules/src/estimator_kalman.c:1398
Is there any solution to use mellinger based controller and estimator with flow deck?
arnaud
Bitcraze
Posts: 2538
Joined: Tue Feb 06, 2007 12:36 pm

Re: Makefile using complementary, mellinger with flow deck

Post by arnaud »

I think this happens because you are forcing the complementary filter: LPS and flow are calling the kalman filter and will not work with the complementary filter. Though this should be catch earlier with a better error message (we check the estimator when we initialize the deck).

Can you test with "ESTIMATOR ?= kalman"?
Sexydove
Beginner
Posts: 8
Joined: Wed Apr 25, 2018 10:36 pm

Re: Makefile using complementary, mellinger with flow deck

Post by Sexydove »

Thanks but the attempt to change estimator = complementary <-> kalman, (same as pid <-> mellinger)
was not worked with all probable ways.

Thanks for the fast reply, and this problem is maybe not be related to flow deck.
(Also, the lopo deck is looks well but not working with thrust command. i.e it turns off when the take off step.)

I guess it is on the connect problem of crazyflie. I'll change it to the other one.
Post Reply