My problem was that only the driver's side fan only came on in Defrost and full cooling/heating modes - i.e. it only ran when the ECU decided it needed full air, and tripped the relay.
I'd already taken the fan out, and checked its power MOSFET (which often fails), and it was OK. In fact, I'd replaced the MOSFET about 5 years ago because it had indeed died.
The best diagnostic guide is in Jaguar's "Service Product Training - Delanair Mk III conditioning unit - Fault Diagnosis". It's on the Jaguar Heritage DVD of "XJS Supplementary Information" part no JHM1123 (still available at £25). I expect, but don't know for certain, that the newer combined "Jaguar XJ-S, XJR-S and XJS - 1975 to 1996" DVD (£50) also contains it.
My copy has some paging problems - towards the end, it includes spurious pages from a BL manual on electronic ignition.
It's got a nice series of checks to work through to identify faults in the electronics and vacuum system. However, it starts by suggesting you build a diagnostic box connected to three 15-way plugs to go into the diagnostic sockets on ECU (RHS side of the air-con unit, above the lower air outlet). Good luck with finding a supplier of said plugs!
My alternative was a trip to Maplin to buy a box of 4 "single pin cables" (part no A39GF, see here) for £4.
You solder a wire to lengthen them, and then connect to the other essential, a digital volt meter. (Maplin currently have one suitable, N15BY, at about £10). Insulate any joints, as a short might fry the air-con ECU. With these, you can slide one connector over pin 45 (the lowest pin on the lowest of the three diagnostic sockets) for ground, and another connector over any pin of choice to compare its voltage with the fault-finding instructions. Access is easier if you remove the instrument panel - everything appears to work OK with it removed, though cover its plugs with cling film or a plastic bag to avoid shorts.
The diagnostic guide says to have a means to short a couple of pins together. As above, this is very dangerous - miscount your pins and you fry the ECU. The first short is to get manual mode, but that's identical to pulling out the temperature-setting knob (LHS). The second is to replicate the water temperature sensor, and is only used for the final tests of fan speed. Instead of this shorting link, you can pull the leads of the sensor (it's on the LHS of the air-con unit) and short them together.
When I got to the last section of the tests, the problem with my fan was clear. The voltage to its speed control (pin 32) was nearly 4V, while the corresponding one to the working LH fan (pin 31) was 1-2V, the correct range.
From what I've seen on the web, speed controls for DC motors typically use a power MOSFET to switch the motor power on and off rapidly, varying the ratio of on to off to achieve the desired speed. So the voltages listed will be an average depending on how much the motor's being switched on. The ECU receives a feedback signal from the motor, so it can sense how fast it's spinning. 4V means it was trying to turn it on 100% of the time, which means the signal wasn't getting through.
I therefore used the multimeter to read the control voltage at the fan circuit board while switching the fan speed up and down. Nothing much, bad connection from the meter probe. So I pressed a bit harder - 1.8V, and the fan leapt into life! Peering at the connection with a magnifying glass showed a dry joint where I'd replaced the MOSFET, and pressing hard made a connection. Ouch! So I'd spent the best part of a week, and dismantled half the dashboard, for something fixed in 5 mins with a hot soldering iron. C'est la vie.

