The Pin_Read() should return a uint8 from what I see in the PSOC Creator. My guess would be that it is reading the pin, but the value is not what you expect? Or if you are running the code in an isr, then it is taking too long to run, causing issues?
Maybe try reading the pin value, and buffering it to a value in main, and then send the buffered value in the response?
Thanks for your response. It was a timing issue. You are right, I was running the code in an isr. The pin was always reading 0 because I didn't give the light sensitive transistor switch (which the pin was reading) enough time to turn completely on. I powered up the transistor well before calling the isr and the switch read fine. Thanks for your comments.
Glad you figured it out; you're welcome