Add role for serial ir receivers
TODO: test role for serial_device=ttyS0 and serial_device=ttyS1
This commit is contained in:
parent
21710fc62b
commit
326c7d3119
1123
Manual.html
1123
Manual.html
File diff suppressed because it is too large
Load Diff
62
Manual.org
62
Manual.org
@ -1669,6 +1669,9 @@ budget_ci rc-tt-1500 /lib/udev/rc_keymaps/rc-tt-1501
|
|||||||
ite-cir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
ite-cir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
||||||
nuvoton-cir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
nuvoton-cir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
||||||
|
|
||||||
|
# serial ir (e.g. Atric V5)
|
||||||
|
serial_ir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
||||||
|
|
||||||
# mceusb
|
# mceusb
|
||||||
mceusb rc-rc6-mce /lib/udev/rc_keymaps/HOPLOrc6
|
mceusb rc-rc6-mce /lib/udev/rc_keymaps/HOPLOrc6
|
||||||
|
|
||||||
@ -5712,6 +5715,65 @@ dependencies:
|
|||||||
state: present
|
state: present
|
||||||
when: '"1209:4444" in usb or "16c0:27d9" in usb'
|
when: '"1209:4444" in usb or "16c0:27d9" in usb'
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
** Serial IR Receivers
|
||||||
|
This role preconfigures the system for serial "homebrew" receivers. Newer kernel versions provide ~serial_ir~ which acts as a rc-core driver, so we don't need lircd (it works with eventircd OOTB).
|
||||||
|
|
||||||
|
As configured in the role yavdr-remote ([[*create /etc/rc_maps.cfg][/etc/rc_maps.cfg]]) a keytable for a RC-6 MCE remote is loaded by default. You can choose a different keymap which may use another ir-protocol.
|
||||||
|
*** defaults
|
||||||
|
#+BEGIN_SRC yaml :tangle roles/serial-ir/defaults/main.yml
|
||||||
|
---
|
||||||
|
serial_device: ttyS0
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
*** tasks
|
||||||
|
#+BEGIN_SRC yaml :tangle roles/serial-ir/tasks/main.yml
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: apt | install setserial
|
||||||
|
apt:
|
||||||
|
name: setserial
|
||||||
|
|
||||||
|
- name: load serial_ir on startup
|
||||||
|
template:
|
||||||
|
src: roles/serial-ir/modules-load.d/serial_ir.conf.j2
|
||||||
|
dest: /etc/modules-load.d/serial_ir.conf
|
||||||
|
|
||||||
|
- name: serial_ir module options
|
||||||
|
template:
|
||||||
|
src: roles/serial-ir/modprobe.d/serial_ir.conf.j2
|
||||||
|
src: /etc/modprobe.d/serial_ir.conf
|
||||||
|
|
||||||
|
- name: setserial options
|
||||||
|
template:
|
||||||
|
src: roles/serial-ir/serial.conf.j2
|
||||||
|
dest: /etc/serial.conf
|
||||||
|
#+END_SRC
|
||||||
|
*** templates
|
||||||
|
**** load serial_ir on startup
|
||||||
|
#+BEGIN_SRC conf :tangle roles/serial-ir/templates/modules-load.d/serial_ir.conf.j2
|
||||||
|
serial_ir
|
||||||
|
#+END_SRC
|
||||||
|
**** serial_ir module options
|
||||||
|
#+BEGIN_SRC jinja2 :tangle roles/serial-ir/templates/modprobe.d/serial_ir.conf.j2
|
||||||
|
#COM1 equivalent, /dev/ttyS0
|
||||||
|
{% if serial_device == "ttyS0" %}
|
||||||
|
options serial_ir irq=4 io=0x3f8
|
||||||
|
{% elif serial_device == "ttyS1" %}
|
||||||
|
#COM2 equivalent, /dev/ttyS1
|
||||||
|
options serial_ir irq=3 io=0x2f8
|
||||||
|
{% endif %}
|
||||||
|
install serial_ir setserial /dev/{{serial_device}} uart none; /sbin/modprobe --ignore-install serial_ir
|
||||||
|
#+END_SRC
|
||||||
|
**** setserial options
|
||||||
|
#+BEGIN_SRC jinja2 :tangle roles/serial-ir/templates/serial.conf.j2
|
||||||
|
{% if serial_device == "ttyS0" %}
|
||||||
|
#COM1 equivalent, /dev/ttyS0
|
||||||
|
/dev/ttyS0 uart none
|
||||||
|
{% elif serial_device == "ttyS1" %}
|
||||||
|
#COM2 equivalent, /dev/ttyS1
|
||||||
|
/dev/ttyS1 uart none
|
||||||
|
{% endif %}
|
||||||
|
#+END_SRC
|
||||||
** kodi
|
** kodi
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:ID: a0f42636-e0ec-4904-a6f9-48f714a2052b
|
:ID: a0f42636-e0ec-4904-a6f9-48f714a2052b
|
||||||
|
2
roles/serial-ir/defaults/main.yml
Normal file
2
roles/serial-ir/defaults/main.yml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
serial_device: ttyS0
|
20
roles/serial-ir/tasks/main.yml
Normal file
20
roles/serial-ir/tasks/main.yml
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
|
||||||
|
- name: apt | install setserial
|
||||||
|
apt:
|
||||||
|
name: setserial
|
||||||
|
|
||||||
|
- name: load serial_ir on startup
|
||||||
|
template:
|
||||||
|
src: roles/serial-ir/modules-load.d/serial_ir.conf.j2
|
||||||
|
dest: /etc/modules-load.d/serial_ir.conf
|
||||||
|
|
||||||
|
- name: serial_ir module options
|
||||||
|
template:
|
||||||
|
src: roles/serial-ir/modprobe.d/serial_ir.conf.j2
|
||||||
|
src: /etc/modprobe.d/serial_ir.conf
|
||||||
|
|
||||||
|
- name: setserial options
|
||||||
|
template:
|
||||||
|
src: roles/serial-ir/serial.conf.j2
|
||||||
|
dest: /etc/serial.conf
|
8
roles/serial-ir/templates/modprobe.d/serial_ir.conf.j2
Normal file
8
roles/serial-ir/templates/modprobe.d/serial_ir.conf.j2
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
#COM1 equivalent, /dev/ttyS0
|
||||||
|
{% if serial_device == "ttyS0" %}
|
||||||
|
options serial_ir irq=4 io=0x3f8
|
||||||
|
{% elif serial_device == "ttyS1" %}
|
||||||
|
#COM2 equivalent, /dev/ttyS1
|
||||||
|
options serial_ir irq=3 io=0x2f8
|
||||||
|
{% endif %}
|
||||||
|
install serial_ir setserial /dev/{{serial_device}} uart none; /sbin/modprobe --ignore-install serial_ir
|
@ -0,0 +1 @@
|
|||||||
|
serial_ir
|
7
roles/serial-ir/templates/serial.conf.j2
Normal file
7
roles/serial-ir/templates/serial.conf.j2
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
{% if serial_device == "ttyS0" %}
|
||||||
|
#COM1 equivalent, /dev/ttyS0
|
||||||
|
/dev/ttyS0 uart none
|
||||||
|
{% elif serial_device == "ttyS1" %}
|
||||||
|
#COM2 equivalent, /dev/ttyS1
|
||||||
|
/dev/ttyS1 uart none
|
||||||
|
{% endif %}
|
@ -171,6 +171,9 @@ budget_ci rc-tt-1500 /lib/udev/rc_keymaps/rc-tt-1501
|
|||||||
ite-cir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
ite-cir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
||||||
nuvoton-cir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
nuvoton-cir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
||||||
|
|
||||||
|
# serial ir (e.g. Atric V5)
|
||||||
|
serial_ir rc-rc6-mce /lib/udev/rc_keymaps/rc-rc6-mce
|
||||||
|
|
||||||
# mceusb
|
# mceusb
|
||||||
mceusb rc-rc6-mce /lib/udev/rc_keymaps/HOPLOrc6
|
mceusb rc-rc6-mce /lib/udev/rc_keymaps/HOPLOrc6
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user