Big quad set up

Discussions about all things Bitcraze
Post Reply
Pdotdeep
Beginner
Posts: 9
Joined: Sun Oct 13, 2019 3:58 pm

Big quad set up

Post by Pdotdeep »

Hi, I just bought the big quad deck and wish to have it set up with the multiranger deck and flow deck v2. i tried to control the crazyflie through the python API and ran the simple script to hover but i realized the motors are not spinning the way i had expected them to. only 2 of the motors are even spinning at any point. If I were to adjust the thruster values higher, then the 3rd motor starts to spin. Reading the wiki on this topic i realized that this might be due to the fact that the big quad is not readily compatible with the flowdeckv2. The following few steps were listed on the website on fixing this compatibility issue. I have a few questions regarding some of these steps and was hoping if you guys could clarify it for me.

1)By removing capacitor C1 on the BigQuad deck. (I just have to desolder this capacitor right?)
2)Not having BQ_DECK_ENABLE_PM defined. (What do you mean by this? is this the part where i ensure that CFLAGS += -DENABLE_BQ_DECK is added to the config.mk file?)
3)Disabling the extRx functionality by commenting out extRxInit() in bigquad.c
4)The Flow HW ChipSelect (IO3) interfere with BigQuad PWM and needs to be moved. Cut trace and solder patch on Flow deck from IO3 to IO1. (What do you mean by this? how do i do this?)
5)Change the CS pin in flowdeck_v1v2.c (IO3 → IO1) (i have to change #define NCS_PIN DECK_GPIO_IO3 to #define NCS_PIN DECK_GPIO_IO1 right?)

Additionally, it also surprises me that i do not see any means of callibrating the crazyflie to better suit the different dimensions of the chassis that i am using. Can i get some assistance on this please? any help is really appreciated.
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: Big quad set up

Post by tobias »

The big-quad functions have gotten way to little love. Could be improved a lot but there is just not been enough time to do it.
4)The Flow HW ChipSelect (IO3) interfere with BigQuad PWM and needs to be moved. Cut trace and solder patch on Flow deck from IO3 to IO1. (What do you mean by this? how do i do this?)
This means actually cutting the trace, with e.g. a knife but it is also possible to do with a jumper wire. You can pull out IO3 (or cut) the pin from the pinheader a bit so it does not make contact between Crazyflie and flow deck (but still big-quad). Do the same with IO1, then solder a wire between pinheader IO3 on flow deck to pinheader IO1 on Crazyflie.

Crazyflie IO1 -> Flow deck IO3
Crazyflie IO3 -> Big-quad IO3
5)Change the CS pin in flowdeck_v1v2.c (IO3 → IO1) (i have to change #define NCS_PIN DECK_GPIO_IO3 to #define NCS_PIN DECK_GPIO_IO1 right?)
Yes

Tuning the bigger quad you can do by altering the relevant PID parametes in the cfclient parameters tab when test flying. But then to save them you need to hard code them in the PID.h file.
Pdotdeep
Beginner
Posts: 9
Joined: Sun Oct 13, 2019 3:58 pm

Re: Big quad set up

Post by Pdotdeep »

Thanks for the reply! I did all that you mentioned however i have more doubts and am hoping you could clarify it for me.
When I tried to test the big quad through the python API, 2 of the motors don't spin at all, one of them does a weird jerking motion. Do you know what may be causing this issue? All I am doing is using the python API to increase the thrust values but the motors dont seem to be working properly. I tested it again without the flow deck as this one the one that was causing conflict issues, but the same observation was observed. I fairly confident that there is no problems with the motors as it had been tested earlier.

Additionally, I came across the following in the config.mk.example file

## Enable biq quad deck features
# CFLAGS += -DENABLE_BQ_DECK
# CFLAGS += -DBQ_DECK_ENABLE_PM
# CFLAGS += -DBQ_DECK_ENABLE_OSD

The wiki only mentioned about adding the first one into the config.mk file. Do I need the other 2? what do the other 2 statements mean? I really appreciate your help.

Thank you so much!!
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: Big quad set up

Post by tobias »

Some follow up questions, what motors are not spinning? When you power on the system do you hear all the motors making the calibrated sound that the ESC generate when they get a motor signal? Run without the Flow deck to rule out other problems.

There are parameters you can set to generate raw motor signal output. This post describes it a bit.

Some explanation of the configs (you should only enable the first one):
# CFLAGS += -DENABLE_BQ_DECK
Enables the big-quad deck base functionality

# CFLAGS += -DBQ_DECK_ENABLE_PM
Enables "Power Management" so that the battery and current measurements can be read on the MON port. This can not be used together with flow deck as it uses those pins.

# CFLAGS += -DBQ_DECK_ENABLE_OSD
If using a OSD (On Screen Display) addon board the OSD information can be sent to this board over UART.
Pdotdeep
Beginner
Posts: 9
Joined: Sun Oct 13, 2019 3:58 pm

Re: Big quad set up

Post by Pdotdeep »

Thank you for the reply, the motors that are not spinning are the big quad motors that i have set-up not the original crazyflie motors. And if i am not wrong, the calibration sequence does not run when the big quad deck is enabled right? Correct me if i am wrong.

These are the list of steps i did.

1) Connected all the ESCs and motors with the chassis and power distribution board. Connected the esc and motors to the power board. I also verified that the output from the ESC for the big quad deck is 5V. All motors are getting 11V
2) I connected the big quad deck to the cf2.
(In this particular example i am not using the flowv2 deck so that i can eliminate any possibility of motor problem)
3) Enabled the following flags in the config.mk file CFLAGS += -DENABLE_BQ_DECK

With this set up, When i try to run the python script to increase thrust, the only one single motor spins, the others dont spin at all. 1 does a jittery movement.

Do you know what might be the problem? I am sorry. been stuck with this for 1 week now unsure how else to debug.
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: Big quad set up

Post by tobias »

Checking the motor signal is one thing you can try. If you don't have access to an oscilloscope you can use your multi-meter to get an idea of the signal. Since the default pwm motor driver will output a 400 hertz servo signal that is high for 1-2ms a DC measurement should show something in between 0V and 5V. You could also try to enable the oneshot 125 driver and see if that makes any difference.

The calibration of the sensors still needs to run for the system to start outputting the motor signal. Which means it need to be on a stable surface and the red M1 led should blink at 2hz when it has calibrated.
Pdotdeep
Beginner
Posts: 9
Joined: Sun Oct 13, 2019 3:58 pm

Re: Big quad set up

Post by Pdotdeep »

Yes i am getting the red M1 led blinking at 2Hz. But still no improvement.

Just wondering. In the wiki, it is mentioned that the crazyflie 2.0 can work with the big quad deck. However there is no mention of it working with crazyflie 2.1? Can i clarify that the big quad would indeed work with the crazyflie 2.1 as well?
Post Reply