Best PID algorithm

I started 3 months ago studying Quadcopter and after that i starting building my own quadcopter. I am using stm32F as the microcontroller, and sending PID tuning gains to the MCU by a GUI i created using C#. I am using in my quad a P-PID because i read that for big quadcopter this one is the better. So i wonder if anyone can tell me how to choose the best PID controller for my quadcopter especially when i am using manual tuning. i read in some papers and in this site about th auto tune but i can’t understand it and how to implelemt it in C. i wish if u can help me with this situation…