Bill, many thanks for your design, I have it built and almost working...

Set up just now with a single PIC in the X position, no callipers connected. The PIC appears to respond to commands, i0 returns data, zx flashes the LED and returns data and then a little more data if I stroke the board. Problem is the returned data is garbled though strangely repeatable.

I've tried two different PNP's 2n5401 and bc556.

I've tweaked the base resistor, 12k and 6k.

As my LED was producing about 1.9v (1) it left only 3v to drive the TX which is a little too close for comfort. I've swapped out the psu LED for a diode string giving about 1.5v/3.5v but data corruption remains identical.

I am using a Prolific USB to serial adaptor, think this could be the problem?

(1) 1.9v worries me as this will power the callipers, should be ok? I can always substitute little diode chains to bring the volgate closer to battery spec.