CrazyFlie 2.1+ Instabilities and crashes with LOCO #1666
Replies: 4 comments 4 replies
-
We are also facing the same issue by using Qualysis MoCap system. The drone either goes in a spiral and crashes or takes off slightly wobbly, and flips and crashes. The weird part is the drone is able to perform extremely well say 2/10 times. |
Beta Was this translation helpful? Give feedback.
-
This seems to indeed be positioning problem, and with the spiraling it seems that the orientation is off. For the loco positioning system it's important that the Crazyflie is initialized facing the positive X axis every time. Is this what you have been doing. In any way, before flying or flying with a swarm, it is important to check if the positioining is correct. This can be done by keeping the Crazyflie in hand and moving it into directions and see what happens on the CFclient. The coordinate system of the crazyflie will help with what is supposed to be positive or negative: https://www.bitcraze.io/documentation/system/platform/cf2-coordinate-system/ @varadVaidya I would advise to start a new thread. Mocap and the loco positioning are two very different systems so we'd like to evaluate your two errors seperately. |
Beta Was this translation helpful? Give feedback.
-
The accelerating flyout was our mistake, as a result of misheading. The flip-and-crash problem is persist. With controller, we can fly. With CFClient's simplified controlling, sometimes we can take off then do some up-down-left-right. Sometimes the drone does a flip-and crash upon the first "up" press, and sometimes does flip-and-crash immediately after pressing take off. If the proportional values reduced from 6 to 4 in attitude PID, the flip-and-crash becomes rarer, but appears some "pendulum-like" moving. Our goal is autonomous flight, so we tried Skybrush firmware. The results seems similar, except one additional problem: The Skybrush firmware doesn't memorize well the PID changes. After rebooting, the values returned to the originals. The flip-and-crash problem also present in autonomous flight (see videos). Sometimes during take off, sometimes more later. Some drones is more stable than others. Another problem is the poor Z-axis positioning during flight. 20241128-172102_kQyihXhC.mp420241128-164258_tnP4pZ2D.mp4-Does anyone know, how we can avoid the flip-and-crash? Thank You |
Beta Was this translation helpful? Give feedback.
-
Update: After first PID change, the flip-and-crash almost disappeared, regardless of default PID values at reading. Maybe it is a Skybrush firmware problem. The remaining problem is the poor altitude keeping. It seems some Loco-related issue, because drones showed in their correct positions on screen, but makes about a +-half meters difference in the real world. Only on Z axis. The positions on other axises are correct. Next try will be adding more raise to bottom anchors. |
Beta Was this translation helpful? Give feedback.
-
We are currently using Crazyflie 2.1 + drones with the LocoPos positioning system, and during the initial five tests, the performance was stable, except some altitude changing. However, recently, the drones are unable to hover in place and cannot stay stable in the air for more than half a minute.
With a simple USB game controller, we reached acceptable stability in Advanced Flight mode with some PID value modfication. But some insability was observable when the battery was low (below 3.7V during intensive flight): The drone did some flip-and-crash when the pitch/roll arm was used on the controller.
The main problem is in autonomous flight mode. The first some test was performed by a python script (A simplified CrazyFlie demo script). The script sent the drone to some fix position. After the good initial results, the drone started to show instability, did crashes. We tried in the CFClient a simple take off in Position hold mode, but the result was same. Also tried this test with another, previously unused drone, but the result was same.
We are using Windows 10 operation system, controlling our drones with Crazy Flie client version 2023 with python version 3.7, and also tried client version 2024.10. with python 3.13. The first try was in python script used in command mode: position up, one meters left, one right, down. Anchors was in TWr mode. After the first problems detected, we changed to the CrazyFlie client program. Used the take off button. The take off was initiated in Position Hold mode. The drone was placed to the ground or to the top of an about 30 centimeters tall cardboard box at the center of X and Y axis.
We are testing with only one CrazyFlie 2.1+ drone and one radio at same time. But we repeated tests 4 different piece of drones. Our plan is to try more drones (we have 10 pcs), when our results will be stable with one drone.
Our Loco has 8 anchors in a box-shaped arrangement, 3 meters on X, 4 meters on Y and 2 meters on Z axis. The displayed position was accurate in CFClient when the drone was moved by hand between the anchors.
We tested with original factory settings, in 2 different laptop, and got same result. We got 2 different result, depending on which piece of drone was used: take off, then accelerating slide on a curved horizontal way out from the box defined by the anchors (too fast to catch the drone by hand), or a quick flip and crash shortly after take off.
The anchors was switched to TDoA3 mode, prepared to the multi drone testing (not performed yet).
Some changes in the original PID settings prevented one drone to flip, but it's position hold was very poor then. Same settings caused other drone to flip and crash immediately in take off.
Our drones used 2024.10.2 firmware for CrazyFlie 2.1.
How can we reach a stable flying and positioning without crashes?
Beta Was this translation helpful? Give feedback.
All reactions