I ended up with P values in the 150 range though, which seemed quite high
The right number is the right number, I have seen P-gains from 0.001 to 100,000 in the day job. It largely depends on the units of what is being controlled (if it's hPa of fuel pressure with a target of 2,000,000 and the output is a 0.00 to 1.00 duty cycle then you will see a very small P, for example)
[code]I couldn't feel any vibration in the motors up to P values of 250 but watching the f error plots I increased the P value until the error just started to oscillate and then backed off 10.[/quote]
The Zeigler Nichols method has you _halve_ the P gain at oscillation, so backing off by 10 might still be a bit close to the edge:
eng.libretexts.org/Bookshelves/Industria...egler-Nichols_Method