[LINUX] IR Blasting (using LIRC to transmit IR signals)?
#1
Question 
i'm trying to get my live installation to blast IR so I can automate turning my A/V receiver on/off. i'm using an mceusb2 ir receiver with 2 blasters built-in.

no clue if i've configured lirc to blast via hardware.conf:

Code:
#Chosen IR Transmitter
TRANSMITTER="None"
TRANSMITTER_MODULES="lirc_dev lirc_mceusb2"
TRANSMITTER_DRIVER=""
TRANSMITTER_DEVICE="/dev/lirc0"
TRANSMITTER_LIRCD_CONF=""
TRANSMITTER_LIRCD_ARGS=""

#Enable lircd
START_LIRCD="true"

#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD="false"

#Try to load appropriate kernel modules
LOAD_MODULES="true"

# Default configuration files for your hardware if any
LIRCMD_CONF=""

#Forcing noninteractive reconfiguration
#If lirc is to be reconfigured by an external application
#that doesn't have a debconf frontend available, the noninteractive
#frontend can be invoked and set to parse REMOTE and TRANSMITTER
#It will then populate all other variables without any user input
#If you would like to configure lirc via standard methods, be sure
#to leave this set to "false"
FORCE_NONINTERACTIVE_RECONFIGURATION="false"
START_LIRCMD=""

but if i run:
Code:
$ irsend --device=/dev/lircd SEND_ONCE pioneer_vsx_07tx MUTE

the talkback LED on the blaster doesn't blink and no IR signal is sent. i have verified that the blaster does blink when it transmits.

irsend does recognize the remote i'm trying to emulate at least:

Code:
$ irsend list pioneer_vsx_07tx ""

irsend: 00000000a55a50af VOL+
irsend: 00000000a55ad02f VOL-
irsend: 00000000a55a38c7 PWR
irsend: 00000000a55a32cd CD
irsend: 00000000a55af00f VCR1
irsend: 00000000a55a708f VCR2
irsend: 00000000a55ab04f VDP
irsend: 00000000a55a30cf TV
irsend: 00000000a55a2ad5 VSEL
irsend: 00000000a55a728d TAPE1
irsend: 00000000a55ab847 TAPE2
irsend: 00000000a55ae21d TUNER
irsend: 00000000a55ab24d PHONO
irsend: 00000000a55a48b7 MUTE
irsend: 0000000025da807f 1
irsend: 0000000025da40bf 2
irsend: 0000000025dac03f 3
irsend: 0000000025da20df 4
irsend: 0000000025daa05f 5
irsend: 0000000025da604f 6
irsend: 0000000025dae01f 7
irsend: 0000000025da10ef 8
irsend: 0000000025da906f 9
irsend: 0000000025da00ff 0
irsend: 0000000025da6a95 FREQ+
irsend: 0000000025daea15 FREQ-
irsend: 0000000025dac837 BAND
irsend: 00000000a55a58a7 POWER_ON
irsend: 00000000a55ad827 POWER_OFF

as a test to make sure that a signal is received and CAN perform some action, i created a simple .lircrc file in /home/xbmc:

Code:
$ cat .lircrc
begin
    remote = pioneer_vsx_07tx
    button = MUTE
    prog   = irexec
    repeat = 0
    config = echo "Hello world!"
end

running irexec and then pressing MUTE on my remote i see:

Code:
$ irexec
Hello world!
Hello world!
Hello world!
Hello world!

so the signal is received and action is taken based on the .lircrc file... but the IR transmit (blasting) piece isn't working.
Reply
#2
You might try setting the transmitters if you are using either port on the mceusb.

Here is my power off script. This powers off a Denon AVR-988 and a sharp Aquos 52" TV. I have the same script for turning on and also one for Volume and mute. I use the regular buttons for vol and mute and then I use hash for power on and pound for power off on the mce remote.

Code:
#!/bin/bash
# turn off tv and stereo
irsend SET_TRANSMITTERS 2
irsend send_once denon Off
sleep 1
irsend SET_TRANSMITTERS 2
irsend send_once sharp TVOFF
~

Here is my hardware.conf file as well. I think you need to set at least some kind of remote even "custom" would do instead of none.

Code:
#
#Chosen Remote Control
REMOTE="Windows Media Center Remotes (new version Philips et al.)"
REMOTE_MODULES="lirc_dev lirc_mceusb2"
REMOTE_DRIVER=""
REMOTE_DEVICE=""
REMOTE_LIRCD_CONF="etc/lircd.conf"
REMOTE_LIRCD_ARGS=""

#Chosen IR Transmitter
TRANSMITTER="Microsoft Windows Media Center V2 (usb) : Dish Receiver"
TRANSMITTER_MODULES="lirc_dev lirc_mceusb2"
TRANSMITTER_DRIVER=""
TRANSMITTER_DEVICE=""
TRANSMITTER_LIRCD_CONF=""
TRANSMITTER_LIRCD_ARGS=""

#Enable lircd
START_LIRCD="true"

#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD="false"
"hardware.conf" 39L, 1191C


Regards,

Dave
Reply
#3
thanks for the help.

here's the REMOTE part of hardware.conf:

Code:
# /etc/lirc/hardware.conf
#
#Chosen Remote Control
REMOTE="Windows Media Center Remotes (new version Philips et al.)"
REMOTE_MODULES="lirc_dev lirc_mceusb2"
REMOTE_DRIVER=""
#REMOTE_DEVICE="/dev/lirc0"
REMOTE_DEVICE=""
REMOTE_LIRCD_CONF="etc/lircd.conf"
#REMOTE_LIRCD_CONF="mceusb/lircd.conf.mceusb"
REMOTE_LIRCD_ARGS=""

note that i've tried it with and without a REMOTE_DEVICE and with the default REMOTE_LIRCD_CONF (mceusb...) and etc/lircd.conf (copying yours).

i tried setting the transmitter:

Code:
REMOTE_NAME=pioneer_vsx_07tx
irsend SET_TRANSMITTERS 1 2
irsend --device=/dev/lircd SEND_ONCE $REMOTE_NAME POWER_OFF
echo lirc sent POWER_OFF


here's the output of dmesg | grep lirc:
Code:
(T: XBMCLive)xbmc@XBMC-lr:~$ dmesg | grep -i lirc
[   16.935417] lirc_dev: IR Remote Control driver registered, major 61
[   17.325098] lirc_mceusb2: Philips eHome USB IR Transceiver and Microsoft MCE 2005 Remote Control driver for LIRC $Revision: 1.51 $
[   17.325100] lirc_mceusb2: Daniel Melander <[email protected]>, Martin Blatter <[email protected]>
[   17.739160] lirc_dev: lirc_register_plugin: sample_rate: 0
[   17.745158] lirc_mceusb2[2]: Topseed Technology Corp. eHome Infrared Transceiver on usb2:2
[   17.745186] usbcore: registered new interface driver lirc_mceusb2

and lsusb (3rd item down is the mceusb receiver):

Code:
Bus 001 Device 003: ID 13fe:3100 Kingston Technology Company Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 1784:0008 TopSeed Technology Corp.
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub


according to the daemon log, lircd sees the connection from irsend:

Code:
Jun 18 02:10:21 XBMC-lr lircd-0.8.4a[1675]: accepted new client on /dev/lircd
Jun 18 02:10:21 XBMC-lr lircd-0.8.4a[1675]: removed client
Jun 18 02:12:50 XBMC-lr lircd-0.8.4a[1675]: accepted new client on /dev/lircd
Jun 18 02:12:50 XBMC-lr lircd-0.8.4a[1675]: removed client
Jun 18 02:12:50 XBMC-lr lircd-0.8.4a[1675]: accepted new client on /dev/lircd

but i'm still getting bubkus out.
Reply
#4
I was referring to your remote device in your initial post and in the Transmit section of your hardware config that should be set to something other than NONe.

You need to create your own lircd file. In that file you need to place all your devices,

if you edit the one you have now that WORKS for your remote and in the file after your mceusb section you need to place the details for your pioneer and and any other device you want to use.

Mine is like so,

Remote - MCEUSB
Remote - Dish 1 - 16
Remote - sharp
Remote - Denon
Remote - lgbd
Remote - lights

Thw above is not anything to do with the file you need just and idea of how it should be setup.

I am pretty sure you cannot send both transmitters in one line.

you could try

irsend SET_TRANSMITTERS 1 device=/dev/lircd etc... from just a command line and see if it works.

if you google command ir, they have a good section on setting this type of thing up to work with there device, but the theory is very much the same.

I had all this stuff on the top of my head about 3 months ago, but the system has not given me any issues so I have not had to redo it hence the quick answers have faded away, comes with turnin 40 I think.

Regards,

Dave
Reply
#5
rodercot Wrote:I was referring to your remote device in your initial post and in the Transmit section of your hardware config that should be set to something other than NONe.

hrmm... i thought that was just a label string. maybe i'll try that tonight.

rodercot Wrote:You need to create your own lircd file. In that file you need to place all your devices,

if you edit the one you have now that WORKS for your remote and in the file after your mceusb section you need to place the details for your pioneer and and any other device you want to use.

yeah, i have added my devices to lircd.conf. i have:

mceusb
xbox
tivo_s2
pioneer_vsx_07tx

all added. the "irsend list ..." command lists all codes for a given device, so it is definitely seeing them.

rodercot Wrote:I am pretty sure you cannot send both transmitters in one line.

you could try

irsend SET_TRANSMITTERS 1 device=/dev/lircd etc... from just a command line and see if it works.

if you google command ir, they have a good section on setting this type of thing up to work with there device, but the theory is very much the same.

i think i've tried every combination of set_transmitters, specifying the device explicitly, etc, etc... i'm beginning to think the lirc team hasn't enabled transmit for this device yet. it was only added as a receiver last summer (the 1784:0008 device id version specifically), i believe, and no-one has tested the transmitter functionality.

i've sent an email to the lirc support list on SF, so hopefully someone there will be able to help me.

thanks again,

-mike
Reply
#6
Mike,

Did you ever manage to get LIRC set up and blasting, if you did I'd love a walkthrough, slowly getting into XBMC and am slowly finding my way around linux. It'd be great if you could explain how you did it.

Just looking to use my mceusb transceiver, along with a bash script of some sort to turn my TV on and off.

Cheers
Reply
#7
Same here, I'm having similar problems and would like to see the hardware.conf from someone who can successfully transmit IR-codes from the mceusb2.
Thanx,
Jakob
Reply
#8
i could never get my specific mceusb device device to blast. i replaced it with a usb-uirt.
Reply

Logout Mark Read Team Forum Stats Members Help
[LINUX] IR Blasting (using LIRC to transmit IR signals)?0