Well, by "get grub2 menu", I was implying "visible". Hopefully ch33w1z has more ideas because I don't.
The fact it's booting to Ubuntu is great, the system isn't dead. However, this is getting in the way and clouding the PD process IMO. If you want to get this thing going, it's minimum config (including unplugging the Ubuntu drive) and starting from scratch to see where the problem is.
Problem as I understand it (please correct me if I'm wrong here!)
1. No video at a hardware level
2. Can't boot windows
Consult the HMM for beep codes, memory plugging rules, etc...
https://download.lenovo.com/pccbbs/thinkcentre_pdf/p520_hmm_en.pdf
-beep codes on page 93+94
Goal is to "wake up" the system at a hardware level,
after going to minimum config (and you can unplug CMOS battery for these steps as well), proceed to next steps and take your time!
1. Boot without Memory or GPU installed - this should cause a POST error, which is good. Then adding system memory, one stick, and booting again while listening for POST error changes.
2. Next, add in GPU and listen for changes. Since RAM and GPU is now installed, 1 POST beep aka POST complete should happen.
If POST errors aren't changing, pull the GPU again and try another stick of memory.
The big change here is NO boot drive should be installed. You don't want the OS to boot, it's just confusing the matter.
Based on information we're receiving, I suspect one of these steps will render the system to boot and provide video at a hardware level.
Additionally, check your cable for bent pins, try a different cable (as suggested earlier).