Guest Posted January 26, 2017 Posted January 26, 2017 Hello, I have a special Ir Receiver which works on a raspberry but not on nano pi neo air... input levels are different ? I can receive signal (I have pulses and spaces) but datas are corrupted and I must transmit longer to have a proper result... Is it possible to change Lirc input pin ?
jernej Posted January 26, 2017 Posted January 26, 2017 I have a special Ir Receiver which works on a raspberry but not on nano pi neo air... input levels are different ? Can't tell if you don't provide exact part name and how is it connected to the board. Is it possible to change Lirc input pin ? or set GPIO in pullup or pulldown modes ? Maybe it will solve this problem... No, PL11 pin is the only one which supports IR RX mode. Pull-up/-down resistors are usually external, which means that you need to add it if applicable. Check schematic for any OrangePi board with IR (all of them except zero)
martinayotte Posted January 26, 2017 Posted January 26, 2017 (all of them except zero) Why ? PiZero has the PL11 too ...
jernej Posted January 26, 2017 Posted January 26, 2017 It has a possibility, but it doesn't include IR by default, whereas other boards do. I was talking about schema from which you can clearly see how to properly connect IR.
Guest Posted January 27, 2017 Posted January 27, 2017 Can't tell if you don't provide exact part name and how is it connected to the board. About what can't you tell me ? Nevermind You tell me that schematics are differents and I see PL11 it is pulled up with at 3.3V with a 10k (http://wiki.friendlyarm.com/wiki/images/9/98/NanoPi-NEO-Air-1608-Schematic.pdf Sheet 10) So I better understand now Thank you ^^ I must know now how to change the lirc software input (in order to use a different input pin on which I will be able to add a pullup if necessary) I checked script.fex, lirc hardware.conf, boot.cmd but I can't find how to manage it, I must recompile the driver ?
Guest Posted January 27, 2017 Posted January 27, 2017 I have found something in the fex file https://github.com/linux-sunxi/sunxi-boards/blob/master/sys_config/h3/xunlong_orange_pi_pc.fex [s_cir0] ir_used = 1 ir_rx = port:PL11<2><1><default><default> The wiki tell to use it https://linux-sunxi.org/FriendlyARM_NanoPi_NEO It will be ok if I change port:PL11 => port:PA2 ? (for example) SMC is not used... so PA2 is free I think. After fex to bin then reboot
Guest Posted January 27, 2017 Posted January 27, 2017 Pull-up/-down resistors are usually external Mmmm.... "usually" ? This is a point of view ^^ It protects the board and can be set by software when internal. Now I see the difference with rasp but never mind. I hope I will be able to change the lirc input
zador.blood.stained Posted January 27, 2017 Posted January 27, 2017 Please read the @jernej's message fully No, PL11 pin is the only one which supports IR RX mode.
Guest Posted January 27, 2017 Posted January 27, 2017 Please read the @jernej's message fully Read my message fully please Is it possible to change Lirc input pin ? I don't need the 'IR RX mode' you are talking about. Maybe I can modify the fex file in order to use lirc with another hardware input ? Is it possible to change Lirc input pin ?
Guest Posted January 27, 2017 Posted January 27, 2017 If someone knows how to modify lirc input, I am still interested :)
Guest Posted January 27, 2017 Posted January 27, 2017 It will be ok if I change port:PL11 => port:PA2 ? (for example) SMC is not used... so PA2 is free I think. After fex to bin then reboot Very wrong idea to use PA02
Guest Posted January 27, 2017 Posted January 27, 2017 That's what I do on rapsberry : modprobe lirc_rpi gpio_in_pin=17 How can I do on NanoPiNeoAir ?
jernej Posted January 27, 2017 Posted January 27, 2017 I have found something in the fex file https://github.com/linux-sunxi/sunxi-boards/blob/master/sys_config/h3/xunlong_orange_pi_pc.fex [s_cir0] ir_used = 1 ir_rx = port:PL11<2><1><default><default> The wiki tell to use it https://linux-sunxi.org/FriendlyARM_NanoPi_NEO It will be ok if I change port:PL11 => port:PA2 ? (for example) SMC is not used... so PA2 is free I think. After fex to bin then reboot Actually, ir_rx is not used anywhere, because PL11 is the only pin which supports HW IR receive. I don't need the 'IR RX mode' you are talking about. Which mode you need then? TX? It is not supported by HW. That's what I do on rapsberry : modprobe lirc_rpi gpio_in_pin=17 How can I do on NanoPiNeoAir ? P.S. This driver doesn't use HW unit, you should use sunxi_cir (or something like that, I can't check in this moment) for pin PL11 AFAIK, RPi doesn't have HW IR support. Driver emulates this functionality through GPIO and external interrupts. Some people already fiddle with it, but I did not hear any success story. I'm not sure if those people actually understand what they were doing. One of the prerequirements is that pin must support external interrupt. I never bothered to try to make it work on a GPIO if HW IR on PL11 work flawlessly on basically any Orange and should on any other board too. There are some who managed to hand solder it to One and it worked. You tell me that schematics are differents and I see PL11 it is pulled up with at 3.3V with a 10k (http://wiki.friendlyarm.com/wiki/images/9/98/NanoPi-NEO-Air-1608-Schematic.pdf Sheet 10) According to Orange Pi PC Plus schematic that 10k pull up is ok for IR. Just add 33R resistor between 3.3V and IR receiver power pin and decoupling capacitor and you should be fine. I still don't understand why you are so determined to use it on another pin.
Guest Posted January 27, 2017 Posted January 27, 2017 @jernej Stories ? I don't know. I just want to use lirc like I use it on rasp. I retrieve pulses and spaces with rasp and I want to do it on nanopi. A command line like "modprobe sunxi_cir gpio_in_pin=17" should be great if you have it. I don't want a "pin which supports HW IR receive" if "RPi doesn't have HW IR support" I don't know why you are telling to me that I can't use lirc without it. Just want to change lirc on another input pin because as far as I know PL11 and his hardware doest not do what I want. So Is it possible to change Lirc input pin ?
Guest Posted January 29, 2017 Posted January 29, 2017 I removed the 10k pullup resistance, I expected to have the same input level as on rasp, but I don't... How can I do ? According to Orange Pi PC Plus schematic that 10k pull up is ok for IR. Just add 33R resistor between 3.3V and IR receiver power pin and decoupling capacitor and you should be fine. I still don't understand why you are so determined to use it on another pin. What value of coupling capacitor should I use ? Must I compare the gpio input pin circuitry of the BCM2835 (rasp) with the H3 ? If somebody knows the differences and how to get the same as rasp, it should be great..... I thought NanoPiAir was rasp compatible but it's not ?
jernej Posted January 29, 2017 Posted January 29, 2017 Why do you expect that it will be completely the same as with Raspberry? They have completely different chips with nothing in common, not even the CPU cores. I said that 10k pull-up should be there for receiver, I don't know why did you remove it. If you are really desperate to use same driver as on Raspberry Pi, then you will have to do dirty work of making driver H3 compatible. Please read whole thread: https://forum.armbian.com/index.php/topic/1288-opi-pc-with-lirc-ir-transmit/?p=24200 Still, you didn't answer why do you need this if not for receiver (IR RX). I don't need the 'IR RX mode' you are talking about.
Guest Posted January 29, 2017 Posted January 29, 2017 I don't want to transmit, I just want to have the same result (input level) as I have on rasp. Hello, I have a special Ir Receiver which works on a raspberry but not on nano pi neo air... input levels are different ? I can receive signal (I have pulses and spaces) but datas are corrupted and I must transmit longer to have a proper result... Is it possible to change Lirc input pin ? How can I make lirc working like on rasp
Guest Posted January 29, 2017 Posted January 29, 2017 I said that 10k pull-up should be there for receiver, I don't know why did you remove it. Why did I removed it ? I think you are asking too many existential questions.... I removed it because I don't want to have a pullup (I don't have a pull up as far as I know on rasp) and because according to you it's not possible to use lirc on another input. Does somebody knows how to get the same input level as on rasp ?
jernej Posted January 29, 2017 Posted January 29, 2017 No, I don't, because I happily use already present IR receiver on Oranges (same chip). Maybe someone else can help you.
Guest Posted January 29, 2017 Posted January 29, 2017 I use a remote every day on beelink and it's ok, but it's not the question, please better read my topic ! I have a special receiver and I just want to make it work like on my rasp, so : Does somebody knows how to get the same input level as on rasp ? Or if someone knows the schematic differences ? I still don't understand what's the difference and how make things works like on rasp... What electrical input levels or input filters are different inside the chip ?
Guest Posted January 29, 2017 Posted January 29, 2017 For example this board is sold gpio compatible with rasp, is it ? https://www.alibaba.com/product-detail/Orange-Pi-One-SET5-Orange-Pi_60508338897.html
zador.blood.stained Posted January 29, 2017 Posted January 29, 2017 These boards may be similar to the Raspberry Pi, but they are not compatible with the RPi and generic Raspberry Pi knowledge and instructions may not apply to Orange Pi boards. For example this board is sold gpio compatible with rasp, is it ? https://www.alibaba.com/product-detail/Orange-Pi-One-SET5-Orange-Pi_60508338897.html Similar? Yes. Compatible? No. This board (Orange Pi One), for example, requires soldering to connect IR receiver since PL11 is not present on any pin headers. Most of HW interfaces (UART, SPI, I2C) will be present on the same pins on the pin header, but from software PoV functionality of these pins (PWM, IR receiving, interrupts) will be different.
Guest Posted January 30, 2017 Posted January 30, 2017 Thank you Zador for your answer Actually the sunxi_cir driver gives some pulses and spaces with real time precision, so software is perfect I think. I think it's a hardware problem because when the signal of the receiver is strength enough, it works ! Maybe it's due to insulation or the input level is 5V or that's because it's multiplexed ? I compare http://www.mosaic-industries.com/embedded-systems/microcontroller-projects/raspberry-pi/gpio-pin-electrical-specifications And http://dl.linux-sunxi.org/H3/Allwinner_H3_Datasheet_V1.0.pdf But I can't find an explaination. Why I don't have the same result I have on rasp and how can I have it ?
Guest Posted February 16, 2017 Posted February 16, 2017 I see that sunxi_cir hardware threshold detection can be modified, usually used to reduce noise level. http://lxr.free-electrons.com/source/drivers/media/rc/sunxi-cir.c I don't know if it will increase pulses and spaces detection for my use... I see that there are many drivers when I try a make menuconfig /usr/src/linux-headers-3.4.113-sun8i/drivers/media/rc/Kconfig I tried to use another module so I made modifications in /etc/lirc/hardware.conf # MODULES="sunxi_cir" MODULES="lirc_dev" It does not seems to have effect, I have nearly the same wrong pulses and spaces (still a bad level detection I think). If I modify the sunxi-cir.c how can I generate the ko ?
Recommended Posts