Page 1 of 1

TSOP1738 on Raspberry Pi: No such device

Posted: Sun Jan 06, 2019 4:16 pm
by ^rooker
WARNING: Haven't managed to use the TSOP1738 on RPi's GPIO pins, due to noise-interference.
Maybe some resistor/capacitor as filter might help. This thread might contain hints in the right direction: "IR Receiver - gives out data only while disconnecting/connecting it to ground"?

[PROBLEM]

I had an old TSOP 1738 infrared receiver (that I used with LIRC over serial happily), and wanted to hook it up to a Raspberry Pi (v1 model B) according to "Using an IR Remote with a Raspberry Pi Media Center
Control your Raspberry"
article on Adafruit. My distro was Raspbian Stretch (9.1)

When I try to load the lirc_rpi kernel module, I get the following error message:
modprobe: ERROR: could not insert 'lirc_rpi': No such device

[SOLUTION]

In "/boot/config.txt", search for "lirc" and enable the lirc-rpi module:

Code: Select all

# Uncomment this to enable the lirc-rpi module
dtoverlay=lirc-rpi

Links:
https://github.com/OpenELEC/OpenELEC.tv/issues/3908

Partial read 8 bytes on /dev/lirc0

Posted: Sun Jan 06, 2019 4:54 pm
by ^rooker
[PROBLEM]
After loading the lirc_rpi kernel module, the next step is to check if IR-remote signals can be "seen":

Code: Select all

$ mode2 -d /dev/lirc0
Yet, connecting the power of the TSOP1738 to 3.3V returned nothing, but this:
Using driver devinput on device /dev/lirc0
Trying device: /dev/lirc0
Using device: /dev/lirc0
So I've tried connecting the power to the 5V pin. This quits after a few seconds with this message:
Partial read 8 bytes on /dev/lirc0
[SOLUTION]
Thanks to an answer on stackoverflow.com, I added "--driver default" to get some input from the IR receiver:

Code: Select all

$ mode2 --driver default -d /dev/lirc0 
Unfortunately, this also shows pulse/space outputs even when no remote button is being pressed... Hope it will work reliably anyways.

To make it persistent, edit the following 2 values in "/etc/lirc/lirc_options.conf":

Code: Select all

driver          = default
device          = /dev/lirc0
Summary:
Seems the TSOP1738 requires 5V and driver "default".