Detents are a human factors thing; helps the user estimate the rotation, but they have only a statistical impact on the pulse train; they don't prevent specific states. Code should still expect and handle contact noise. A way to do that is to hide the least significant bit, so the noise that occurs does not affect whatever you're using the data for. Phil wrote: > Is the pulse a fixed width or is it base on shaft rotational speed? For a bare encoder with A & B output only, the width of the pulses will vary by speed of rotation; and you might be able to use the width for something. But it is the rising and falling edges that matter for most purposes. --=20 James Cameron http://quozl.netrek.org/ --=20 http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .