rtlopez / esp-fc

Espressif based flight controller for hobbyist
MIT License
223 stars 51 forks source link

Quad roll forward #68

Closed skimans closed 1 year ago

skimans commented 1 year ago

Hi i have install firmware and setup it. When i test it after armed and try to fly the quad roll forward and is not stable. I have used module GY-87 but also with only MPU6050 i have same problem. How i can solve ? IMG20230824184441 IMG20230824184445

bsvdoom commented 1 year ago

I think your gyro needs to be in the geometric center. Also the MPU6050 X-> has to face forward.

rtlopez commented 1 year ago

Hi @skimans

The amount of information you've provided is too small for me to give you any meaningful advice. Could you write more about your setup? What battery, how mounted, what motors, propellers, esc, protocol, loop rate, flight mode, etc.

First of all, you need to check the endpoints again, with particular emphasis on receiver. With the sticks centered, the channels should indicate exactly 1500.

Your setup in the picture looks quite non-standard, and the default parameters are oriented to 5-inch models. So most likely PID tuning will be needed. In such situations, the blackbox logger is an underrated tool. But before you get to that, you should first take care of the mechanical-electrical design. The gyro can't just be soldered like that, it should be glued firmly to the frame, preferably with a damping tape. Also, take care of filtering the power supply, I don't see any capacitors in the pictures.

skimans commented 1 year ago

Hi @rtlopez

i use battery 4s Liion. The battery uis connected to PDB the have a BEC of 5V. This 5V are connected di VCC pad of ESP32. The gyro/acc is MPU6050 (module GY-521...i can connect also GY-87 that have also baro BMP085...but i prefer GY-521 for 3.3 volt used and not 5v for GY-87). The motors are 2212-912KV mounted on frame F450. The props are 8045. Flight mode i use Acro or Angle mode (you tell me before that if i dont have Angle the is Acro). Loop rate...mmm..i dont know what's..i send to you scheenshot. The receiver is FS-IA6B with radio Flysky I6.

image image image image

skimans commented 1 year ago

one particulary....i dont have put the resistors and other electrical components.. can be this the problem ?

rtlopez commented 1 year ago

Hi @skimans

i use battery 4s Liion. ... The motors are 2212-912KV mounted on frame F450. The props are 8045.

What is total weight including battery? I suppose that the power to weight ratio can be too small and you might need to increase PIDs. With blackbox log it would be a lot easier to identify if issue comes from filtering or PID gains.

Flight mode i use Acro or Angle mode (you tell me before that if i dont have Angle the is Acro).

On screenshot I don't see Angle mode configured, so you are using Acro. Keep in mind that in this mode your model won't back to horizontal automatically and you need to do using sticks. In this mode you control only angular rate of quad. I'm not sure your flying skills.

Loop rate...mmm..i dont know what's..i send to you scheenshot.

I meant Frequenza di loop del PID, 1kHz in your case.

I need to ask few more questions:

  1. how long are you able keep model in the air?
  2. how fast does it roll?
  3. are you able to share a video?

Few things comes to my ming that can be checked

  1. ESC calibration, have you done it?
  2. Center of Gravity - ensure your battery position so that when you keep the model in the middle, it doesn't pull to either side.

If above hints won't help, you can try to increase pid_iterm_limit parameter through CLI.

skimans commented 1 year ago

The total weight battey included it's about 2 kg. I use your PID set in your firmware. Today i have set and use also Angle mode but not change the situation.

The quad not flight in the air becouse when i put gas the quad roll forward. Roll forward very fast. When it's posibile i proceed to do a video.

The sound of music of Esc calibration (Motor tab) is not the normal sound. The position of battery is in normal position respecting the center gravity.

I saw that the stick of radio are much sensitive, infact if a move little rear the quad roll rear, if i move little left quad roll left.

bsvdoom commented 1 year ago

2kg?? what? are you sure? angle should hover, try set the gyro/accel to 180deg: image

skimans commented 1 year ago

@bsvdoom 2 kg all the quad...all included. It's a F450 frame.

i try set the gyro/accel to 180deg..but if i remember not memorized other value, but this evening a try.

thanks for now!

rtlopez commented 1 year ago

@skimans This symtomps looks like wrong gyro orientation or wrong motor order. Go to the setup tab, and ensure that model in configurator moves exactly in the same way as you do, if not try diferrent algnment options in configuration (as @bsvdoom suggest). Then go to the motor tab, and ensure correct motor order. Each motor has to be placed in correct position according to front direction. Then take of props and spin each motor separately in test mode to verify. Ensure that they rotates in correct direction.

skimans commented 1 year ago

@rtlopez gyro orientation can be the problem becouse many time i saw that the quad in Setup tab not move correctly....but this also if i change orientation. It's incredbile this. But i try another time to change orientation. I have also check in Motor tab the position and rotation of the motors and is OK. But i check another time.

thanks

skimans commented 1 year ago

2kg?? what? are you sure? angle should hover, try set the gyro/accel to 180deg: image

hi @bsvdoom

image

when i select CW180 and after Save and Restart....not save 180CW. I can change using CLI ?

skimans commented 1 year ago

these are the PIDs

image

i have reduce also the Rate:

image

rtlopez commented 1 year ago

Hi @skimans

looks like bug in MSP, configurator does not show correct value, but it is saved after change. You can verify in CLI with command get align, then you should see

set gyro_align CW180
set accel_align CW180

ensure that both accel and gyro have same alignment.

eventually you can try this commands in CLI.

set gyro_align CW180
set accel_align CW180
save
reboot

but ensure later that this settings persists at the end, because it might reset if you change anything in configuration tab.

Your rates are way to low, 20 deg/s make aircraft uncontrollable. At the beginning I recommend 100 or even 200 at least. These values are still very conservative. Most users use 400-600 or even higher. Bu keep in mind, they are used in Acro mode only.

You quad is quite heavy, and it might be underpowered. So after first flights if quad is not responsive you can consider increase PID, using "master multiplier" slider. If you notice that it shakes, that means that PIDs are to high.

skimans commented 1 year ago

hi this evening i have tried to use STM32F411 board with Inav custom firmware 4.00 created from me and the quad work fine. Gyro/acc MPU9250 (SPI) and BMP280 baro (I2c). Then there is not a hardware problem. IMG20230831223832 IMG20230831223840

rtlopez commented 1 year ago

Hi @skimans , there is new release https://github.com/rtlopez/esp-fc/releases/tag/v0.2.0-alpha5 setting sensor alignment is fixed there.

skimans commented 1 year ago

hi @rtlopez thanks but i think is not problem of alignment of gyro/acc. I have also modified this using CLI before. But this evening i try.

I saw that last version of firmware Alpha5 have also included MPU6500. Where i can find the wiring of MPU6500 ? SPI connection...right ?

thanks

AutoPlantBali commented 1 year ago

hi @skimans MPU6500 support I2C and SPI connection. you can choose one of them, SPI connections are faster than I2C. If you use the ESP8266 board it only supports I2C

rtlopez commented 1 year ago

Hi @skimans Yes, MPU6500 suppors either I2C and SPI. I recommend to use SPI on ESP32 if possible. In that case use spi wiring scheme.

skimans commented 1 year ago

Finally flyyy!!!

I want ask if is posible set Yaw Deadband becouse now is not posible save it. It's in Receiver tab.

I have saw also that the motors are little hot after 1 minute of fly. But i think it's a problem of PID..right ?

thanks much @rtlopez @bsvdoom @AutoPlantBali

skimans commented 1 year ago

one problem now is that go drift to right...

other problem is that if i enter in CLI appear many words....

rtlopez commented 1 year ago

Hi @skimans

Finally flyyy!!!

Good to hear that it flies, one more aircraft with esp-fc ;)

I want ask if is posible set Yaw Deadband becouse now is not posible save it.

RC deadband is applied to yaw axis too.

I have saw also that the motors are little hot after 1 minute of fly. But i think it's a problem of PID..right ?

There is no easy answer. The best way to solve issues with hot motors is to record blacbox log to see and understand what actually going on inside firmware. Without that we can only guess what setting we can change and test in the air to verify if it help. Most tips for betaflight that you can find on the internet should works in espfc too. So try google "betaflight hot motors".

one problem now is that go drift to right...

What do you mean drift? in which mode? Have you calibrated accelerometer? Note that there is no any navigation/position hold/GPS mode, so it is normal that your quad drifts a little. Also blackbox log is appreciated here to solve this issue. Eventually try google "betaflight quad drift" or "betaflight pid tuning"

other problem is that if i enter in CLI appear many words....

Show it to me.

skimans commented 1 year ago

What do you mean drift? in which mode? Have you calibrated accelerometer? Note that there is no any navigation/position hold/GPS mode, so it is normal that your quad drifts a little. Also blackbox log is appreciated here to solve this issue. Eventually try google "betaflight quad drift" or "betaflight pid tuning"

other problem is that if i enter in CLI appear many words....

Show it to me.

i have solved partially use RC Deadband. It's also problem of stick of radio, becouse when i move of left or right the stick on the tab receiver i saw value about 1530 or 1470....and not 1500. But using RC Deadband now is best.

thanks

skimans commented 1 year ago

hi @rtlopez in this video you can look what happen when i enter in CLI

https://github.com/rtlopez/esp-fc/assets/78317991/d4c5d97e-dafb-49f9-adb3-3048bb3c7ea5

this happen only in pc of my home. In other pc work fine and i not see this words.

rtlopez commented 1 year ago

Hi @skimans , thanks for your report. At the bottom-right there is "save to file" button. Can you collect some messages, save to disk and attach here? Also tell me which firmware version exactly do you use (connect to other PC and type status or version in CLI)

If it happes on one PC but not on the other it may suggest power issue. Try diferrent cable or diferrent USB port. Disconnect any other devices connected through the USB if possible.

AutoPlantBali commented 1 year ago

hi @skimans From the video it can be seen that there is no gyro sensor detected in SPI and I2C... and it will repeat itself when checking the gyro bias, maybe there is a problem with the USB power on your computer.

skimans commented 1 year ago

Hi @rtlopez @AutoPlantBali i have solved connecting the gyro/acc. With gyro/acc i dont have problem in CLI. thanks much

rtlopez commented 1 year ago

@skimans what was that?

skimans commented 1 year ago

what was that?

@rtlopez was last problem of CLI in my video.

rtlopez commented 1 year ago

@skimans I mean, how did you solved it? Maybe someone else will have a similar problem, so here will find solution.

skimans commented 1 year ago

@rtlopez In my last video i have connected ESP32 with cable USB directly to pc (without gyro/acc) and i haved the problem of CLI. For solve it i have connected gyro/acc (MPU6500...SPI) to ESP32 and connected ESP+gyro/acc to pc with cable USB now work in CLI. I hope that you understand.

rtlopez commented 1 year ago

@skimans now it's clear, thanks :)