I've been using some TSOP2438 infrared receivers to detect trains and the like blocking flashing IR LEDs for quite a while now, but I've been stuck for several days on a project with 3 of them. They're stuck in my breadboard with an arduino and a bunch of wires.
They detect the IR LED just fine. I have the LED flash at 38KHz for 1mS then turn it off for 3mS. The problem is, these 3 only give me a high of about half a volt, way too low for the arduino to detect as a high. I can see the expected waveform. First thought was I had the arduino pin misconfigured, but if I disconnect the output pin from the arduino, the signal stays the same. Power? Nice steady 4.38v, well within the range for the part. The datasheet for the TSOP2438 shows an NPN output transistor and a 33k pullup inside the pack. I've tried it with an external pullup but still get the same low waveform.
Ok. Maybe the high is .6v, but I'm still mystified. The blue trace is the VCC supply. The yellow trace is the unloaded output. You can see a little noise on the VCC as the IR LED is flashing.
(Sorry, toes don't show in either photo, but they are indeed bare.)