Jump to content

dood

Members
  • Posts

    4
  • Joined

  • Last visited

Posts posted by dood

  1. I’m working a project to do this with a remote that doesn’t support the target device.  If you’re looking to do this without a remote or in a way that doesn’t need the flirc for input, only output, you could still use my setup instructions to get the ir sequences you need to use with sendir.

      I’ve geared this towards using a Raspberry Pi,  but it’ll work on any Linux system.  I haven’t written  instructions for general linux systems, but if you add a user named “pi”, or modify the setup script, it should work on any Debian/ubuntu system.

    Be aware there’s a performance issue that i haven’t figured out how to solve, there’s a delay of a little less than 1s when using sendir and it sending the ir sequence.  It makes using this for volume control pretty laggy.

    Here's my project: https://github.com/andrewfraley/flirc_repeater

    Here are some sendir instructions I wrote recently: 

     

  2. I'm working on a project to use a FLIRC with a Raspberry Pi Zero to send ir commands in response to received ir commands.  The basic use case is using a remote to control a device the remote doesn't support.  The FLIRC sees one command, it sends another.  I have it working well using Python to monitor the USB input device for the key codes, then using flirc_util sendir to send the commands.

    The issue I'm facing is the delay when using sendir.  It's just less than 1s per command, so if I quickly press a remote button five times, it will take a little over 4s to transmit the 5 commands (4.38s to be exact).  This is no big deal if you're reprogramming anything other than volume and maybe channel commands, but my specific use case is actually volume control, so the delay is usable but annoying.

    Any advice on trying to speed up the sendir command?  Any chance I'll get better performance if I write a small C program instead of using flirc_util?  What I'm doing now is spawning a "flirc_util shell" process and keeping that alive, then I send it the sendir command over stdin when a new key press comes in.  I'm going to test on faster hardware (real PC instead of a Pi Zero), but I don't think I'll see much of a difference.

    Here's my project:  https://github.com/andrewfraley/flirc_repeater

  3. I got my POC working, but as expected it's slow.  Each key press needs to invoke a script separately, and long press doesn't work well at all.  It does work, however, and it's usable even.  My next iteration is going to be attempting to write a C daemon with the SDK instead.  I'll share the code if I get it working.

  4. Trying to figure out how to use the flirc to send IR commands is pretty daunting.  For starters, the blog post won't load: http://blog.flirc.tv/index.php/2017/08/06/sdk-release-linux-rpi-ir-transmit-support/

    I've tried to cobble together various ways to do it, but I have seen three different flirc_util commands mentioned that don't work, finally finding the one that currently works with software version 3.25.3, which is the "sendir" command.

    My use case I would think is common, I want to use a remote to control a device the remote doesn't support, so I want Flirc to receive one command and transmit another.  I'll program my remote to control some arbitrary device it supports, then have the Flirc send a different command that controls my actual device.  In my case it's my LG TV remote that I want to use to control the volume on an amplifier, but the LG remote doesn't support it nor does it have a learning function to control arbitrary devices.

    To get started on a proof of concept, I can use the GUI device log to capture the IR sequence I want to transmit.  I press a button on my remote and the device log will show something like:

    :e:17031

     0,9008,4393,614,475,615,470,615,470,615,1584,615,474,615,470,615,470,615,1584,619,1584,614,1584,619,1584,614,470,615,1588,614,1584,614,1589,614,479,605,470,615,1584,618,1584,615,470,614,474,615,480,605,1583,615,474,616,1583,617,472,610,474,615,1584,614,1588,625,1573,615,474,615,1584,615

    :e:40

    0,9007,2157,614

     

    The long string there is the IR code I guess (I really don't know what I'm doing here).  I can then transmit this code by doing something like:

        flirc_util.exe sendir --ik=23000 --repeat=3 --pattern="0,9003,4390,619,470,614,470,614,470,614,1588,614,470,614,474,614,470,614,1588,614,1582,614,1588,614,1587,614,470,614,1588,614,1583,614,1587,615,469,615,474,610,1587,615,1587,615,469,615,470,614,474,615,1583,614,474,614,1583,614,474,610,474,614,1584,614,1587,615,1587,614,470,614,1583,618"

     

    This is enough for me to write a simple script that can be triggered with a keyboard press, but I suspect it will be slow and I'll need to dust off my ancient or now non-existent C skills and see what I can do. 

    What would be end game for me is if I could flash the flirc with my own custom firmware and then connect the flirc to power and use it standalone without any PC.  Is something like this possible?  Assuming it's not possible, I have a Raspberry Pi Zero W on the way to control the flirc instead.

    I'll report back when I've got my setup in production, but hopefully the above will save someone some time.

×
×
  • Create New...