FWIW, I re-tried the 2-I/O pin and also 1-I/O pin a2d converter again and got really good results. (The last time I tried a couple of years ago I failed miserably.) The circuit is this: +-----------> PIC (not used in 1-pin version) | Vin o---/\/\/\---+-+-/\/\/\----< PIC | === | --- /// The two resistors were 10k and the capacitor was a 0.56uF mylar film. I didn't experiment much with these values, I basically took some stuff out of one my junk piles. I was able to fairly easily get 12-bits of dynamic range with the 2-I/O pin version and about 8 with the 1-I/O pin version. I haven't attempted to verify linearity, temperature dependence, long term stability, etc. My conclusions on the dynamic range are subjectively based on how much flickering I can observe in the least significant bit. YMMV If you want to see the code go here: http://www.interstice.com/~sdattalo/technical/software/pic/a2d.asm but beware, the code looks almost as bad as my ratsnest prototype :). The trick I employed this time is a pre-charge algorithm. In other words, before beginning the actual a2d conversion I make sure that the voltage on the capacitor is right at the switching threshold of the pic I/O pin. Oh, one more thing; I used only a 4Mhz crystal. and one more thing: The 2 pin version could easily be scaled up for 4 analog inputs. The 1-pin version doesn't scale as nicely, but since it only has 8-bits of dynamic range it is certainly a candidate for vertical counters... Scott PS, the asin and arctan routines are now on my pic page: http://www.interstice.com/~sdattalo/technical/software/software.html