PX4-Autopilot
PX4-Autopilot copied to clipboard
[Bug] Position Mode not arming
Describe the bug
Flying with v1.14 beta.
Despite GPS is receiving good signal, I'm not able to arm in position mode.
To Reproduce
Arming with switch
Expected behavior
Arming in position mode
Screenshot / Media
Flight Log
https://logs.px4.io/plot_app?log=ddb8a7ba-2e3f-4a2d-8d57-d8f63e96427d
Software Version
v.14 beta
Flight controller
px4 v6
Vehicle type
Multicopter
How are the different components wired up (including port information)
No response
Additional context
No response
It seems that you disarm by remote controller, Is your arming control on your rc is a button, not a switch?
No it is a switch, why do you see that?
In the end of the Logged Messages, it says Disarmed by RC (switch)
Nono that was my input, I disarmed it after I saw it was not arming
@fbenti Thanks for the report! Your arm switch works fine as you armed the vehicle and disarmed it again as intended. The problem I assume you see is that the motors do not spin when you arm. That is because the minimum PWM value that is output while the vehicle is armed is 1000us which for the ESC still means the motor should not spin.
Since the current default configuration leads to your exact problem I'm planning to change it (also for 1.14) here: https://github.com/PX4/PX4-Autopilot/pull/21513 and update documentation here: https://github.com/PX4/PX4-user_guide/pull/2599
To fix your vehicle I suggest setting the PWM configuration of all 4 motor outputs according to the defaults I suggest in my change:
- Remove propellers for safety
- Set "disarmed" PWM configuration to 1000, the motors should still not spin
- Set "minimum" PWM configuration to 1100, now if you arm in Position or Altitude mode or move the motor test slider over the initial bump all motors should spin
- Set "maximum" PWM configuration to 1900
- If you find better values for your ESCs by testing feel free to use those (e.g. minimum 1050, maximum 1950)
I'm open to any feedback, please let me know how it goes 🙏
Sidenote: The reason why you currently see spinning motors in Stabilized/Manual mode and just not Position mode is that the minimum collective thrust in Stabilized/Manual mode is MPC_MANTHR_MIN which by default is 8% while in Position mode the collective thrust starts at 0% until you take off. With such a configuration the drone might accidentally stop the motors in the air and likely get unstable whenever you descend quickly in Stabilized/Manual mode so please follow the above suggestions to solve the problem before flying.
This issue has been mentioned on Discussion Forum for PX4, Pixhawk, QGroundControl, MAVSDK, MAVLink. There might be relevant details there:
https://discuss.px4.io/t/quad-crush/33060/5
I have same problem. I am not able to arm in position mode. QGC gives prompt to change to manual mode. Interesting is that it just started doing this. I used to be able to arm in position mode. I have not upgraded anything, but must have changed something.
@jjmmss00 Is that on the main branch? Generally, if you are in a mode and you cannot arm the ground station (if not completely outdated) should tell you why. If you see no error then either the arming trigger e.g. gesture, switch doesn't work or you actually arm (UI changes to Armed
) but your motors don't spin then it's likely a motor configuration issue like the PWM one I described above. Can you check and provide more context?
Could you provide a log of you trying to arm?
For that go to the Console under Analyze > MAVLink Console
- type
logger on - do your tests that fail
- type
logger off - Download the log and upload that to review.px4.io
Matthew,The error in QGC was "switch to manual mode" (even though it was in Position Mode). I now believed this started happening after I ran the ESC calibration procedure. Anyway I reconfigured my radio to add a switch to go to plain "Manual Mode", and drone will now arm.Normally I only get the telemetry log after I arm, so will attempt to go to the log all the time mode and will then send log.Thanks for responding to my issue.--- JohnSent from my iPadOn Feb 12, 2024, at 10:06, Matthias Grob @.***> wrote: @jjmmss00 Is that on the main branch? Generally, if you are in a mode and you cannot arm the ground station (if not completely outdated) should tell you why. If you see no error then either the arming trigger e.g. gesture, switch doesn't work or you actually arm (UI changes to Armed) but your motors don't spin then it's likely a motor configuration issue like the PWM one I described above. Can you check and provide more context? Could you provide a log of you trying to arm? For that go to the Console under Analyze > MAVLink Console image.png (view on web)
type logger on do your tests that fail type logger off Download the log and upload that to review.px4.io
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>
It seems that my problem has vanished. I believe what happened is that I decreased the full charge voltage on the battery to too low a value, and the flight controller was generating voltage spike errors. I have changed voltage back to default value and now drone will arm in position mode.Thanks again for your support.Sent from my iPadOn Feb 12, 2024, at 10:06, Matthias Grob @.***> wrote: @jjmmss00 Is that on the main branch? Generally, if you are in a mode and you cannot arm the ground station (if not completely outdated) should tell you why. If you see no error then either the arming trigger e.g. gesture, switch doesn't work or you actually arm (UI changes to Armed) but your motors don't spin then it's likely a motor configuration issue like the PWM one I described above. Can you check and provide more context? Could you provide a log of you trying to arm? For that go to the Console under Analyze > MAVLink Console image.png (view on web)
type logger on do your tests that fail type logger off Download the log and upload that to review.px4.io
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>