Al, Congrats on your first post. And thanks for not subscribing, and then immediatly asking which programmer is best, or which C compiler kicks butt, or something similar. I don't have a direct solution to your problem, however I have a suggestion. While I have never personally used interrupt on change, the general concensus seems to be that it is best used for wake-on-buttonpress type applications. It can be quite finicky from what I've heard. So...my suggestion - try implementing the timer based polling solution you had semi-working before, but keep the encoder on the new pins. If it works, you know that it's a programming issue (at best - fixable), or an interrupt on change issue (not quite so fixable). If the timer based code doesn't work, there is likely an error in the new hardware configuration you've come up with. Hope that helps, Josh -- A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools. -Douglas Adams Al Young wrote: >I thought that I'd try moving the > encoder's A-channel output to PortB, bit 7, and use the >interrupt-on-change > feature, rather than sampling the inputs. -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu