There's currently no code, but wouldn't this will change at some point, like if we gave the user the ability to change capacity after boot? We could also perform the same check in new code, but it seems like the kind of thing that could be missed.

The advantage is that we prevent divide by 0 from ever happening, and thus NaN can't occur. NaN are really nasty, and once you have them in your system they tend to spread since every math operation with a NaN in it returns NaN. However, since this is only for going out over the mavlink it can't spread to anything else so I'm not that concerned. If you don't think it's worth a ```if (batSettings.Capacity == 0) state_of_charge = 0``` then that's fine.