If anyone stumbles upon this thread and is interested.. PHD2 is easy to compile...
My initial guess was that the "Unsupported type or read error loading FITS file" message I got came from the cfitsio library.. so I build the latest cfitsio library and PHD2 code and found the same problems.
Next step was to look at phd2/cam_indi.cpp where the error occurs and I find that the HDU number of axis is expected to be 2.. with INDI Webcam and the IMX290 USB camera I am using OpenAstroGuider with 2.9u pixel size the fits file has NAXIS = 3 / number of data axes .. so the phd2 code can't handle this type of image.
Now I am using Linux so I can look at what the sensor supports:
/dev/video0 Index : 0 Pixel Format: 'MJPG' Discrete 1920x1080 .. 1280x720 .. 640x480 .. 320x240 : 15, 20, 25, 30 fps
/dev/video0 Index : 1 Pixel Format: YUYV 4:2:2 Discrete 640x480 .. 320x240 : 30.000 fps
/dev/video2 Index : 0 Pixel Format: 'H264' Discrete 1920x1080 .. 1280x720 .. 640x480 .. 320x240 : 5, 10, 15, 20, 25, 30 fps
INDI Webcam seems to find it difficult to select /dev/video0 Index : 0 so by default it give me Pixel Format: YUYV 4:2:2.. - unfortunate because I only get 640x480 images.... working on that at the moment.
Anyway back to phd2.. simply by changing the code to accept NAXIS = 3 allows me to at least see an image in phd2 and allows the loop exposures to work so it will be interesting to see how I get on with the guiding part!!