IR Receiver
I purchased one Orange PI PC.Write Fedora 22 to SD card, boot up the machine, login via SSH
insmod sunxi_ir_rx,
installed LIRC and evtest.
I see /dev/input/event2 is sunxi_ir, but no /dev/lirc0
When playing with three different IR remote, evtest never gives any output.
Any clue?
Tried Ubuntu too.
Maybe the IR receiver only supported by Android/Orange OS (http://www.orangepi.org/orangepibbsen/forum.php?mod=viewthread&tid=541)?
seems it works if using official Fedora distros
http://www.orangepi.org/orangepibbsen/forum.php?mod=viewthread&tid=80&extra=page%3D5 Edited by joe1203 at 2016-1-3 22:16
After many sleepless night, it seems that the sunxi-ir-rx modules will NOT pass the raw IR signal if it cannot decode the signal.
https://github.com/matzrh/sunxi-lirc/wiki
According to this post, I can get the raw ir output. It proves that my board is working.
http://forum.banana-pi.org/t/how ... bpi-m3-linux-os/940
Maybe the easiest (but ugly) way is writing a script and keep polling and parsing the var/log/messages, or mod + recompile the sunxi-ir-rx module based on the output of my remote
https://github.com/allwinner-zh/linux-3.4-sunxi/blob/master/drivers/input/keyboard/
Edited by joe1203 at 2016-1-20 15:35
Just install Ubuntu 12.04 in virtualbox, clone the source of linux-3.4-sunxi from github, exposed a few more paramteres and compile the modules. But when playing around on Fedora 22, I cannot load the modules and receive "Invalid module format". Here is the output of modinfo, file and readelf -h, any clues?
output of modinfo of bundled sunxi-ir-rx.ko
filename: /lib/modules/3.4.39/kernel/drivers/input/keyboard/sunxi-ir-rx.ko
license: GPL
author: DanielWang
description: Remote IR driver
depends:
intree: Y
vermagic: 3.4.39 SMP preempt mod_unload modversions ARMv7 p2v8
parm: debug_mask:int
output of modinfo of my built, named sunxi-ir-rx-hf.ko
filename: /lib/modules/3.4.39/kernel/drivers/input/keyboard/sunxi-ir-rx-hf.ko
license: GPL
author: DanielWang
description: Remote IR driver
srcversion: 2CEDB65025BE20B385A4605
depends:
vermagic: 3.4.39 SMP preempt mod_unload modversions ARMv7 p2v8
parm: debug_mask:int
parm: IR_RXFILT_VAL:int
parm: IR_RXIDLE_VAL:int
parm: IR_ACTIVE_T:int
parm: IR_ACTIVE_T_C:int
parm: IR_L1_MIN:int
parm: IR_L0_MIN:int
parm: IR_PMAX:int
parm: IR_DMID:int
parm: IR_DMAX:int
output of file of bundled sunxi-ir-rx.ko
sunxi-ir-rx.ko: ELF 32-bit LSB relocatable, ARM, EABI5 version 1 (SYSV), BuildID=32e092d5e778c85bdc07d5e8e54038d53f574f0a, not stripped
output of file of my built, named sunxi-ir-rx-hf.ko
sunxi-ir-rx-hf.ko: ELF 32-bit LSB relocatable, ARM, EABI5 version 1 (SYSV), BuildID=40b3f4abf5c4d2f38aa599a52c126adaee6ed1ee, not stripped
output of readelf -h of bundled sunxi-ir-rx.ko
ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: REL (Relocatable file)
Machine: ARM
Version: 0x1
Entry point address: 0x0
Start of program headers: 0 (bytes into file)
Start of section headers: 80916 (bytes into file)
Flags: 0x5000000, Version5 EABI
Size of this header: 52 (bytes)
Size of program headers: 0 (bytes)
Number of program headers: 0
Size of section headers: 40 (bytes)
Number of section headers: 54
Section header string table index: 51
output of readelf -h of my built, named sunxi-ir-rx-hf.ko
ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: REL (Relocatable file)
Machine: ARM
Version: 0x1
Entry point address: 0x0
Start of program headers: 0 (bytes into file)
Start of section headers: 80860 (bytes into file)
Flags: 0x5000000, Version5 EABI
Size of this header: 52 (bytes)
Size of program headers: 0 (bytes)
Number of program headers: 0
Size of section headers: 40 (bytes)
Number of section headers: 54
Section header string table index: 51
output of insmod of my built
insmod: ERROR: could not insert module sunxi-ir-rx-hf.ko: Invalid module format
*No output for bundled sunxi-ir-rx.ko, since it is loaded successfully
Not sure about your issue, but I backported sunxi IR LIRC driver from mainline kernel:
https://github.com/jernejsk/OpenELEC-OPi2/blob/master/projects/H3/patches/linux/linux-07-backport-lirc-sunxi-driver.patch
That way you can use whatever protocol you want.
page:
[1]