Ich habe die selbe Ausgangslage wie der TE außer, dass AppArmor bei mir an ist. Durch die Lösung aus Post #3 konnte ich zumindest das Problem mit dem "Error: unable to open FTDI device (usb_open() failed) " beheben. Allerdings bekomme ich in irw nach wie vor keine codes angezeigt, auch dann nicht, wenn ich den lirc-daemon manuell als root starte und dann ebenfalls als root irw aufrufe. Die Hardware selbst funktioniert, da ich mit irrecord die Fernbedienung anlernen kann und mit "mode2 --driver ftdi --device serial=FTDI-Chip-Seriennummer"
auch spaces und pulses bekomme.
Jetzt habe ich keine Idee mehr woran es noch liegen könnte. Vor dem Upgrade von openSUSE 15.3 auf 15.4 lief lirc, irw, irexec usw. einwandfrei und es wurde an der Konfiguration nichts geändert.
lircd.service
[Unit]
Documentation=man:lircd(8)
Documentation=http://lirc.org/html/configure.html
Description=Flexible IR remote input/output application support
Wants=lircd-setup.service
After=network.target lircd-setup.service
[Service]
# added automatically, for details please see
# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
#ProtectHostname=true
#ProtectClock=true
#ProtectKernelTunables=true
#ProtectKernelModules=true
#ProtectKernelLogs=true
#ProtectControlGroups=true
#RestrictRealtime=true
# end of automatic additions
Type=simple
ExecStart=/usr/sbin/lircd --nodaemon
;User=lirc
;Group=lirc
; Hardening opts, see systemd.exec(5). Doesn't add much unless
; not running as root.
;
; # Required for dropping privileges in --effective-user.
;CapabilityBoundingSet=CAP_SETEUID
;MemoryDenyWriteExecute=true
;NoNewPrivileges=true
;PrivateTmp=true
;ProtectHome=true
;ProtectSystem=full
[Install]
WantedBy=multi-user.target
Alles anzeigen
lirc_options.conf
# These are the default options to lircd, if installed as
# /etc/lirc/lirc_options.conf. See the lircd(8) and lircmd(8)
# manpages for info on the different options.
#
# Some tools including mode2 and irw uses values such as
# driver, device, plugindir and loglevel as fallback values
# in not defined elsewhere.
[lircd]
nodaemon = False
#driver = devinput
driver = ftdi
#device = auto
device = serial=FTDI-Chip-Seriennummer
output = /var/run/lirc/lircd
pidfile = /var/run/lirc/lircd.pid
plugindir = /usr/lib64/lirc/plugins
permission = 666
allow-simulate = No
repeat-max = 600
effective-user = lirc
#listen = [address:]port
#connect = host[:port]
#loglevel = 6
#uinput = ...
#release = ...
#logfile = ...
[lircmd]
uinput = False
nodaemon = False
# diese Kommandos werden mit "lircd-setup /etc/lirc/lirc_options.conf" als root ausgeführt
[modinit]
# code = /usr/sbin/modprobe lirc_serial
# code1 = /usr/bin/setfacl -m g:lirc:rw /dev/uinput
# code2 = ...
#code = /usr/bin/setserial /dev/ttyS0 uart none port 0 irq 0
#code1 = /usr/sbin/modprobe lirc_serial io=0x3f8 irq=4
# [lircd-uinput]
# release-timeout = 200
Alles anzeigen
Ausgabe:
linux-amd64:/home/user # lircd -n
lircd-0.10.1[1000]: Info: lircd: Opening log, level: Info
lircd-0.10.1[1000]: Notice: Running as user lirc
lircd-0.10.1[1000]: Info: Using remote: Pinnacle_300i.
lircd-0.10.1[1000]: Info: Using remote: Hauppauge_350.
lircd-0.10.1[1000]: Info: Using remote: hauppauge.
lircd-0.10.1[1000]: Notice: lircd(ftdi) ready, using /var/run/lirc/lircd
lircd-0.10.1[1000]: Notice: accepted new client on /var/run/lirc/lircd # << irw auf zweitem root-terminal gestartet
lircd-0.10.1[1000]: Info: Initializing FTDI: serial=FTDI-Chip-Seriennummer