An absolute thank you to all those so called experts who didn't reply.
I have now found the solution.
I was trying to run tv_grab_dvb, but it wsa not working.
The reason for this is because I have four dvb cards in my system: 2x DVB-T and 2x DVB-S
The first DVB-T card is located as adapter 2 and not 0
Because tv_grab_dvb demands adapter 0, I needed to change the source to grab from adapter 2.
Code modification on line 59 of tv_grab_dvb.c (ver 0.9) as follows
#define DEMUX "/dev/dvb/adapter2/demux0"
Now works.
How to:
1. dvbtune -c 2 -f 706000 (tune to bbc channels)
2. ./tv_grab_dvb -t 20 -s > epg.xml (get epg from frequency to epg.xml)
Note: must do tv_grab_dvb immediately after dvbtune, or it wont work!
The formatting of the xml needs looking at, but I have gotten much further than asking here
Anyway, thought that might help others who are having difficulty with this. I believe in sharing.