Thanks for the answers.

Darrel: thanks for the pointer to Bruce. I've got the registers set for a much lower frequency than Bruce's example - my CCS can only work at 200Hz max so I should be running at 154Hz with the values I've picked. Also I made sure with OVDCOND that nothing is over riding the PWM. Well, that's what I think I was doing

Bruce: so what I want is the behaviour you show for 0 and 1, I want to output the inverse of the programmed duty cycle. What I see is PWM.1 ramping up and down while PWM.0 seems to stay constant. If i put them into independent mode (PWMCON0 = %01000011) then PWM.0 and PWM.1 ramp up and down together - same as your signals 2 and 3 - which sanity checks my wiring.

Alas I don't have a logic analyser (until a parcel arrives from Saleae) to check so I'm basing my judgement on the led intensity.

What I'm using this for is LED illumination of a macrophotography stage - in continuous PWM I get what we call modelling light then for an actual shot I'm planning to switch to a single shot so I can get aligned "strobe" pulses of three different lengths from a group of three PWM outputs. There are undoubtedly many different ways to do this but I thought it was an elegant way of using the 18F4431 capabilities, if I can figure out where I've gone wrong.

rgds, Andrew