Hi Cory, I think some more details from you would be helpful to shed some more light on the situation. Then we can gently nudge you in the right direction without explicitly giving you answers. After all the best way to learn is to make mistakes, but sometimes it can be overwhelming in the beginning, so please don't give up! If you have the time, could you answer the following questions for starters?: 1) Are both PICs on the same board? If not, do you have a proper ground connection between both processors? 2) How long is your cable? 3) What are you using to supply Fosc for each PIC and what is the frequency? 4) I know you said you tried both asynchronous and synchronous modes, but which mode do you actually *want* to use? If I were you, I would make an executive decision here and stick to it. Both modes work. 5) What are your configuration bit settings for each PIC? 6) Be mindful of switch bounce: how will your code act upon switch bounce? 7) What supply voltage are you supplying to the PICs? If you decide to use asynchronous mode and have some MAX232 or equivalent RS-232 transceivers handy, may I suggest that you just consider the divide and conquer approach (if you feel comfortable with it): Forget about the other PIC for the time being and use a serial terminal emulator like HyperTerm, Tera Term, etc to act as a replacement for the other PIC. Work on one side at a time until you get things going -- then phase the other PIC back in. I hope this makes sense to you. If not, chime on back with the parts you are not clear on. Best regards, Ken Pergola -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.