Hi Peter, Thanks for your response. I'm afraid I didn't notice if the relative position of the ghost changed slightly during the flight, but it was "on top of me" the whole time. I probably should have fiddled with it some more at the time, but in an unplanned situation I tried to force myself not to get distracted by it too much.
I always get the 3Pi and ADBS-in antennae confused in my head, but if I've got it right, the 3Pi antenna is on the right underside of the fuselage, just aft of the main spar, and the transponder antenna is on the left underside, aft of the back wall of the baggage compartment (and they are 1.3 meters apart). The ADBS-in antenna is in the cockpit, on top of the turtle deck facing the sky and there is a flarm mouse right next to it. The setup has been like this for over two years with no problems. It's a classic PAW and it's mounted by my left knee, so next time I fly I should be able to pull out each USB in turn to see if that makes a difference.
Given your response that it's not MLAT, what is really confusing me is that I'm not getting the problem on the ground. I attach a screenshot taken this morning (the contact is my ground station). The HEX code in the transponder is definitely correct, I even took a photo so I could convince myself afterwards I wasn't going mad!
There were no other EC devices on board. I've been trying to decide between upgrading to a Garmin GTX 355 or just get a Skyecho, but I'm a bit nervous of compounding these sorts of problems if I go for the Skyecho.
Thanks again, John