i have thought of that, averaging it to get less noisier input, and thanks for your suggestion and reminder on least square technique. but i think not much point to it, since there is no way on earth a few cents circuit can rival the dedicated C meter, let alone the top class 10K++ capacitance meter, keyword: accuracy and repeatability problem. about choosing which point to do the calculation, thats exactly what i did (nrc_calc.zip), and i did more, the brute force approach, i tried to calculate every points at a predefined step between the 600 points i got from rigol. from my observation, its best (closer to spec'ed capacitance) if we choose the point from starting of decay as V(o) and somewhere at Vo/2 (in the middle of decay) as V(t). (i coded to find those points). well, a picture worth 1K words. you can see how nasty the results are (brute force calculation) below, esp at the far edge.
shown is a measurement of a 470pF smd (ceramic?) capacitor. pls give attention to index1 and index2, thats the data/sample index (array) i choose from 600 samples as Vo and Vt, and attention to "Mid" capacitance value, thats using latest Zs (Mid) measurement of the circuit (by DMM) and thats the one is plotted (the max and min are just ranges the "unstable" DMM ohm measurement gave during my many Zs measurements earlier)
the superimposed windows app showing result using the above mentioned "best observed" method, Vo = start of decay, Vt = somewhere near the middle of decay (from Vo to 0.05Vo, roughly Vo/2, or lower). it supposed that "Mid" Capacitance value should get the answer, Min and Max are just to give me idea on tolerance.