Mot_bat_volt_max & mot_bat_volt_min

I’m setting up to autotune my 3dr x8 and seeing a discrepency as far as what to set for MOT_BAT_VOLT_MAX. In the autotune instructions at https://ardupilot.org/copter/docs/tuning-process-instructions.html it says to use the value, 4.2 x No. Cells. In my 4 cell case, this would be 16.8. However, in Mission Planner, it says to use 4.4 x the number of cells, which would be 17.6… Which is correct?

For MOT_BAT_VOLT_MIN, the story is similar. In the autotune instructions it claims I should multiply by 3.3 and in Mission Planner, it say I should multiply by 3.5…

Why the discrepency? Currently I have them disabled as “0”

This is due to the many different battery chemistries in use today, which different voltages for charged and discharged.
You have LiPo which is 4.2v fully charged and a debatable low voltage before damage but at 3v there is no useful current left, LiPo HV upping the charged voltage to 4.35v, then add Li-ion, LiFe, and a few others.
So this is where the discrepancy in the documentation has arisen.

Just set it to your own battery chemistry in use.

2 Likes

Makes sense - Thanks for the quick reply!

Actually… I just realized… I was looking at instructions for “tuning.” But I am wanting to Autotune, as this is my first flight using Pixhawk… Should I be using the instructions at https://ardupilot.org/copter/docs/autotune.html instead of the ones I was using at https://ardupilot.org/copter/docs/tuning-process-instructions.html
?
The reason I became suspicious is the instructions, when I look up what the parameters mean all say “for advanced users only” … and this is my firs time ever setting up/flying with Arducopter
Where to start for first time autotuning?

Do I do the tuning instructions first, then the autotune instructions?

I think I found my answer… I think I need to tune first, then autotune. Not sure how I got so mixed up. I took a break from my copter building for a few months while I was waiting for the weather to warm up. IF this is incorrect, someone please let me know?

Try this spreadsheet out, it’s set for standard Lipos, but plug in your prop size too and use all these parameters as a starting point for tuning. You should be able move straight to some basic flight tests like hovering, then onto autotune.
It’s still intended that you read and follow the new tuning guide, this just makes it a bit easier.

https://www.dropbox.com/s/gauaan6phvz8we8/Initial%20parameters%20based%20on%20prop%20size.xlsx?dl=0

  • Enter your prop size in inches , and the number of LiPo cells .
  • Copy/Paste the calculated values into notepad++
  • Search, Replace
  • Select Search mode “Extended”
  • Find what: /t {tabs}
  • Replace with: , {commas}
  • Save As some_filename.param

Load the .param file via MissionPlanner to save trying to find and type in all the parameters.

There’s also plenty of discussion here:

2 Likes

Also be aware of the MOT_BAT_CURR_MAX parameter - set it to 0 (the default anyway) if it’s totally unknown. Otherwise it is best to set it to some realistic limit.
Figure out the smallest of these values:

  • maximum current battery current (eg 5000mAh x 20c = 100A)
  • maximum motor current draw (eg 8motors x 15A = 120A)
  • maximum power distribution capability (eg standard 60A “power brick” current sensor)

So in this case you’d set MOT_BAT_CURR_MAX to 60 which would be the maximum of a standard pixhawk style power brick.
If you updated the power brick to a hall effect 100A sensor style, you’d be able to set MOT_BAT_CURR_MAX to 100 to match your battery output.
It doesnt hurt to be a little conservative with this too - after all who believes the cheapest LiPo they could find on the internet will do the full rated current for anything more that a brief blinding flash.

One way to set this parameter is to do some dynamic flying, check in logs what the peak current draw was and set this parameter a bit above that. That way at least if something does start drawing too much current you have half a chance of finding out via logs or a feeling of “something aint right” instead of a catastrophic crash.

The effect of this parameter will be a leveling out of the current draw during big climbs or high speed runs as the flight controller reduces or controls PWMs to stay within that current boundary.
If someone thinks that’s going to be an issue, then they’ve got to up-rate some of their components to cope or plan their build better.

Actually… I barely understand what you replied with. I downloaded the spreadsheet, put in “4” for the number of cells. Some values changed.

As far as your instructions on using Notepad go… they make no sense to me. I know you’re being very helpful and trying to help. I appreciate it very much, but can I just manually enter those values into Mission Planner? Is that what you’re getting at?

I haven’t tried taking off or anything yet. Since I’ve been trying to get this copter going since October, I’ve put so much time into it that taking off isn’t something I feel comfortable doing until I know things are right. When I have tested the motors and tested without props, I suspect it would fly just fine, but haven’t dared. I don’t even know if the motors are supposed to start spinning when I arm it… and they do. They spin what I think to be too fast too. I’ve got the MOT_THST_HOV set to .38 only because that’s where it was when I got it, but thinking I should change this to .25.

Making things more confusing… Now my motor test in Mission Planner gives me the “Command denied by autopilot” error. I have all the prearm checks disabled, waited for gps lock “green” light. Strangely, it always worked fine before. So at this point, I am very confused and very frustrated. I even went back to previous .params files I have saved over the months where my motors test worked fine and still doesn’t work. When I use my transmitter though, they turn and seem calibrated just fine like they were when I calibrated them.

I’ve watched hundred of YouTube videos, read through thousands of pages… and right now feel like I am more confused than when I started to be honest. I see all these YouTubers who get their drones flying in like a day, and I just don’t understand why every thing I do, seems like I have to read hundreds of forums and still can’t get the definitive answer. Even posting here in these forums. I get answers very fast, and several times have been told I am “ready to fly” but then as I read in forums, I am nowhere near ready to fly. Maybe I am overthinking things? Sometimes I think I should just throw it up in the air and either crash or not, hope for the best… but I’d probably regret that. The last time I couldn’t get the motor test to work I think I had to go into QGroundControl and enable one of the prearm checks, then disable it, then it worked… Any idea why or what I need ot do to get my motor test working again?

1 Like

Yes - You sure can just go find the parameters in MissionPlanner and type in the values.

You can even just use ordinary windows notepad or any standard text editor, but it will probably lack the ability to search and replace tabs that are generated by copying from a spreadsheet. You’d have to pull out the tabs and extra lines by hand to produce a file that looks like:
param1,0.13
param2,0.25
param3,1.47
And then you can load it in bulk via MissionPlanner without making so many typing mistakes.
If you download notepad++ it sure makes life easier and those instructions will make more sense. https://notepad-plus-plus.org/

Yes, setting this to 0.25 or even 0.20 will be fine - it will pull itself back up to the correct setting over time. Starting with a low value is a safety thing for first flights.

Is the Safety switch preventing this from working?

We’ve all been there too. There’s hundreds of pages to read, and it usually means reading it all 3 times to have a chance of understanding it. I’m not saying skip all the reading, but there comes a point when you’ve just got to try it out :slight_smile:
Don’t be sidetracked by people that get their betaflight racing quad going in only 25 mins, or people that just bought some closed-source flight controller package and “it just worked” - because they all have their limitations and specific uses.
Arducopter is much more general purpose, customisable and in the end highly satisfying.

Sorry to contribute to confusion by dragging out the MOT_BAT_CURR_MAX parameter.
I thought I’d mention it since you started the discussion on two of my other favourite parameters that are related. Just set MOT_BAT_CURR_MAX to 0 if it’s not already, and worry about it later.

Before you take off for your first flight, see if you can tie down you craft somehow - or a brave soul could can hold it above their head and keep out of range of props!
Arm in Stabilize mode, test that pitch and roll inputs have the desired effect in the correct directions. Yaw can be tested too but it’s a little harder to tell if it’s working in this situation.
If all is going to plan, you’ll just have to try a first flight in Stabilize an AltHold.
Stabilize is your go-to mode if anything goes wrong ever!

If you set a Fence, you won’t be able to arm until you’ve got a valid 3D GPS fix - this is a good thing! It means your home position will be properly set. Don’t become impatient either, this can sometimes take 5 minutes or more.

FENCE_ACTION,3
FENCE_ALT_MAX,50
FENCE_ENABLE,1
FENCE_RADIUS,300
FENCE_TYPE,3

Your encouraging words help - a lot! Honestly, I can’t tell you how much. I’ve decided after reading that I will go try it. I’m the type of person who likes to double and triple check things to no avail., but also to a fault and I think I’ll just go fly it. What’s the worst that can happen? Lol. The x8 is tough as can be and electronics are pretty durable too. Plus when I bought it, it came with a huge box of spare propellers and a few spare legs. I’ve got hundreds of miles of open space too, and both my girlfriend and I are aware and fast runners, so I won’t be putting anyone in danger. Being the double, triple check type (and decades of programming experience), I am certain I can type in the values correctly too. Should I use ALL the values it gives me in your spreadsheet then? For each and every parameter? I am guessing so…

I do not have a safety switch plugged in, so I will try using one and enabling it in the prearm checks. Actually, I think this is what it took before to get it working again. Thanks for the tip there. It’s not the GPS check, because I have been waiting for it to get 6 GPS’s first so ya, probably that safety switch… and maybe I’ll leave it plugged in just so it doesn’t happen again.

If you dont want to use the Safety switch set these:

ARMING_CHECK,5630
BRD_SAFETYENABLE,0

The Fence stuff is just for general use and safety, not related to the motor test. The motor test should work regardless of GPS fix.
But do pay close attention to the motor order and rotation.

I changed my ARMING_CHECK from “0” to “5630” and BRD_SAFETYENABLE was previously set to “0”…

Probably a good thing I did too, because I initially got Battery 1 failsafe critical > low warning in QGroundControl (and I solved it) and then RC7_OPTION had some other error I had to fix (I only have 6 channel controller)… Those are fixed (thanks to forum posts I found here), then I decided to make some changes to my flight modes, namely, I setup a separate switch (channel 6) to be a RTL function…

Thanks for your patient help. I can’t thank you enough and never would’ve figured it out without your help. I am now finally able to use the motor test function, and should be able to continue on with the tuning process, then autotune it.

… Just to be clear. Using your spreadsheet, I’ve entered in “11” propeller size, and “4” for cells. The values I get work for octoquad (what I have) or octocopter (my other project I am saving for after success with this one) or quad… Anything, correct? They’re quite different from what I had previously, so I just want to make sure it hasn’t been assumed I am working on a standard quadcopter… right? I also want ot know for certain I can use it for my octocopter later.

Yes, correct. It works for all.

1 Like

It’s awesome. I don’t think I ever would’ve figured all that out and your help has been more helpful than you can probably imagine, so thanks again. That spreadsheet should probably be included in the official documentation.
I should be ready to test within a day or two (after I quadruple check everything… one more time.

1 Like

Hi @vyoufinder,

Don’t go searching around too much. A large portion of what you read will be wrong. Just follow the instructions on this page:
https://ardupilot.org/copter/docs/tuning-process-instructions.html

Work through the settings one at a time. The spreadsheet that @xfacta posted is based on this and is there to try to make a few parameters based on prop size ect. easier for you to work out.

I would suggest that you double check your ESC calibration and your MOT_SPIN_ARM, and MOT_SPIN_MIN parameters. You can use the motor test in mission planner to check the point that each motor starts spinning. They should all be very close. You want to set MOT_SPIN_ARM to when they all start and run smoothly but slowly. You want MOT_SPIN_MIN to be when they are generating a little thrust but not much.

@xfacta, sorry when you showed me this I missed two things.

  1. Leave AUTOTUNE_AGGR = 0.1. This is a safe value and is more tolerant to noise and gives good results in both (reasonably) noisy and clean airframes. I use 0.1 on all my aircraft as it focuses a little more on disturbance rejection rather than outright response time.

  2. Do not set MOT_BAT_CURR_MAX until you have finished tuning and you know what you want to set it to, based on measurements and hardware specifications. I set this based on my power delivery limits like wiring weight and C rating of my battery. When using light motors you can also set it to the sum of your current limit of your motors (or a little less if you like). I would suggest people leave this as zero initially.

@vyoufinder between that wiki page and some advice on some of the other parameters you have what you need here. Double check that motors are in the right spot and spinning in the right direction. That mission planner shows the attitude of the aircraft correctly. And follow the instructions, start with very low hovers that let you kill the throttle without dropping the aircraft by more than 10 or 20 cm.

If you take some video of your first flights it may help people give you advice too.

Good luck!!

1 Like

Thanks Leonard,
I’ll fix that spreadsheet and I’m going to spend some time getting it into a form that will work in the documentation then follow the process to add it.

1 Like

I think I’ve got it all ready to autotune now. Three’s only one issue that I have now, and that’s the fact that my battery likely doesn’t have enough power to complete a complete autotune. I’ve realized today, after looking up the manual that came with the 3DR X8 that it came with a 10,000 mAh battery, but the one I bought for it is only 5,200 mAh. Anyone have experience with the X8 who thinks I will/won’t have enough power for a complete autotune?

What will happen if I try autotuning it, and then have to bring it back down because hte battey gets too low? Is the a way it save what it learned and then is there a way to resume the autotune after recharging? I thought I had seen someone doing something like this before, but can’t seem to find it.

Tune one axis at a time. Simple parameter change.

Thanks. Searching “autotune axis” found what I need. I think I’ll do the pitch first, then roll, then yaw unless someone tells me I should do otherwise.