New idea: WAV files to drive IR emitter/blaster

Discussion forum for JP1 software tools currently in use, or being developed, such as IR, KM, RemoteMaster, and other misc apps/tools.

Moderator: Moderators

Kevin Timmerman
Expert
Posts: 142
Joined: Tue Jan 09, 2007 5:52 pm
Location: West Michigan

Post by Kevin Timmerman »

Barf wrote:@Kevin:
(I used an audio amplifier of 110W so I do not have that problem) It is not a technologically sound solution to store the data twice to achieve 3dB more.
That is not what most people are doing - they need the stereo signal for reliable operation or in some cases to have it work at all. It is a practical solution to the limited voltage of headphone amps.

Insisting that someone use a power amp is certainly not a "technologically sound" solution.
Kevin Timmerman
Expert
Posts: 142
Joined: Tue Jan 09, 2007 5:52 pm
Location: West Michigan

Post by Kevin Timmerman »

Here is a simple program to convert pronto hex to audio.

44.1 kHz and 16 bit options are provided for portable music players that don't like 48 kHz or/and 8 bit wav files.

Click picture to download
Image
The Robman
Site Owner
Posts: 21889
Joined: Fri Aug 01, 2003 9:37 am
Location: Chicago, IL
Contact:

Post by The Robman »

Just FYI, if you have Norton Security installed, you will need to disable Anti-Virus Autoprotect in order to get the file to download.

Btw, for people that already have standard IR blaster cables (that have mono jacks), is there any way to drive these using a WAV file?
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
Kevin Timmerman
Expert
Posts: 142
Joined: Tue Jan 09, 2007 5:52 pm
Location: West Michigan

Post by Kevin Timmerman »

This circuit can be used to drive a single LED with the stereo audio signal. It also provides more current than driving the LED directly, so it has increased range.

Image

In some rare cases a single LED driven by one channel may work due to the second harmonic of the audio being the correct IR carrier frequency.
|Alex|
Posts: 17
Joined: Tue May 08, 2012 3:40 am

Post by |Alex| »

Kevin Timmerman wrote:Here is a simple program to convert pronto hex to audio.

44.1 kHz and 16 bit options are provided for portable music players that don't like 48 kHz or/and 8 bit wav files.
Perfect! Simple and effective. Thank you!
Barf
Expert
Posts: 1524
Joined: Fri Oct 24, 2008 1:54 pm
Location: Munich, Germany
Contact:

Post by Barf »

Kevin Timmerman wrote:
Barf wrote:@Kevin:
(I used an audio amplifier of 110W so I do not have that problem) It is not a technologically sound solution to store the data twice to achieve 3dB more.
That is not what most people are doing - they need the stereo signal for reliable operation or in some cases to have it work at all. It is a practical solution to the limited voltage of headphone amps.

Insisting that someone use a power amp is certainly not a "technologically sound" solution.
May I politely ask you to keep that sort of patronizing and unsuitable remarks out of the forum? :evil: I never recommended, much less "insisted", that the hardware I used for development should be used for deployment. If you read my posting you will see that I recognize that anti-phase stereo has a use case, although not universal.

Speaking of stereo, Alex' file in the file section consists of two identical (in-phase) channels. (Combining the disadvantages of the both approaches.)
|Alex| wrote:Then I checked it with a wave editor and its waveform has a very different shape than the other I have. The one I have is just PWM with max amplitude while your has middle values.
I modulated with a sine. Using a square wave has the, at least theoretical problem that (full-wave) rectifying a square wave leaves you with a constant: on all of the time, thus useless to modulate! Now there is, not only "in practice" but also in the theory, a low-pass filter after the DA-converter, rounding the edges, thus rendering a rectified signal with < 100% duty cycle. So I thank you for your comment and will offer something else, at least alternatively, in the next version.

To Kevin' circuit:

Notable is that there is no resistor in series with the LED. So when one transistor is conducting, the voltage source is essentially short circuited to the ground through the LED. This can lead to high currents and destroy the LED, transistor, or the power supply. "Practically" the power supply may be weak (having a high inner resistance), and or course the LED is on only a fraction of the time. This may or may not save the hardware from death, but leaving a series resistor out is not technologically sound (yes, I dared to say it again). Cf http://lirc.org/html/audio.html.

It is also questionable if someone who is not willing to solder two IR LEDs together is willing to build an amplifier with its own power supply... :wink:

The circuit requires a 2-channel antiphase "stereo" signal.

Just using a full wave rectifier (consisting of 4 diodes) would be an alternative without these both disadvantages. For these, iIt might be a good idea to use germanium- or schottky-diodes to keep the diode voltage drop down, which may otherwise require a prohibitively high amplitude of the input signal.
|Alex|
Posts: 17
Joined: Tue May 08, 2012 3:40 am

Post by |Alex| »

Barf wrote:Speaking of stereo, Alex' file in the file section consists of two identical (in-phase) channels. (Combining the disadvantages of the both approaches.)
You're right, I didn't even notice it. I'm learning a lot with you guys. Thank you!
Barf
Expert
Posts: 1524
Joined: Fri Oct 24, 2008 1:54 pm
Location: Munich, Germany
Contact:

Post by Barf »

I just released version 0.2.0 of IrMaster, which implements everything up until now mentioned, plus a few things more.

Image

Sample frequency (44100, 48000, 96000, 192000Hz) can be selected, as well as bit width (8, 16 bits) and channels (1,2), as well as big/little endian byte order (for 16bit samples). Modulation can take place with square wave or sine wave. The trailing period of silence can be omitted from the generated file. As an experimental feature, for sample frequencies >= 96k and "audio equipment" with high band width, the division of the carrier signal can be turned off. When generating files (using the pane IE Protocols/Export) it is possible to select how many repetitions will be included in the export file.

It is also possible to use the audio setup as a IR output device for supporting IrMaster, e.g. when using the war dialer.

A wave file for this purpose can also be imported and subsequently be plotted, sent to DecodeIR and Graham's Analyze-function, or exported into another format.
andrenatal
Posts: 5
Joined: Wed Jul 04, 2012 9:49 pm

Post by andrenatal »

Kevin Timmerman wrote:Here is a simple program to convert pronto hex to audio.

44.1 kHz and 16 bit options are provided for portable music players that don't like 48 kHz or/and 8 bit wav files.

Click picture to download
Image
Kevin this worked perfect! The source code is available somewhere?
andrenatal
Posts: 5
Joined: Wed Jul 04, 2012 9:49 pm

Post by andrenatal »

Barf wrote:I just released version 0.2.0 of IrMaster, which implements everything up until now mentioned, plus a few things more.

Image

Sample frequency (44100, 48000, 96000, 192000Hz) can be selected, as well as bit width (8, 16 bits) and channels (1,2), as well as big/little endian byte order (for 16bit samples). Modulation can take place with square wave or sine wave. The trailing period of silence can be omitted from the generated file. As an experimental feature, for sample frequencies >= 96k and "audio equipment" with high band width, the division of the carrier signal can be turned off. When generating files (using the pane IE Protocols/Export) it is possible to select how many repetitions will be included in the export file.

It is also possible to use the audio setup as a IR output device for supporting IrMaster, e.g. when using the war dialer.

A wave file for this purpose can also be imported and subsequently be plotted, sent to DecodeIR and Graham's Analyze-function, or exported into another format.
IRMaster can read from lirc format and generate a wave file?
Barf
Expert
Posts: 1524
Joined: Fri Oct 24, 2008 1:54 pm
Location: Munich, Germany
Contact:

Post by Barf »

You can use Lirc2XML to transform Lirc files to CCF, and then import them to IrMaster for generating wave files. The sources are available from my web site.
andrenatal
Posts: 5
Joined: Wed Jul 04, 2012 9:49 pm

Post by andrenatal »

Barf wrote:You can use Lirc2XML to transform Lirc files to CCF, and then import them to IrMaster for generating wave files. The sources are available from my web site.
Hey Barf! Thanks for replying! What an awesome work you made on irmaster!

I had issues with only two appliances codes: One XBox360 and with a Cisco STB. With a pretty old panasonic tv and a new one sony unit, did worked smooth!

XBox I got the following error for this code:
616A 0000 0000 0001 0004 0064
CCF type 0x616a


For Cisco STB
0000 006d 0002 0000 0155 0055 0017 0e3d
Loading C:\Program Files (x86)\IrMaster\Windows\DecodeIR.dll
Loading DecodeIR
Loading of DecodeIR from system path failed.
Error: DecodeIR not found.
Analyzer result: Undetermined
Analyzer result: Undetermined
Analyzer result: Undetermined

The code from cisco I got from winlirc and used lirc2xml. Follows the lirc and xml.
<lircremotes creation-date="Sat Jul 7 14:40:47 2012" creator=",S-1-5-21-175169104-1622763099-3308672374-1000" lircversion="0.9.0" lirc2xml_version="0.1.2" configfile="E:\d_desk_bkp\WinLIRC\plugins\net2.conf" decodeir_version="2.43">
<remote name="E:\d_desk_bkp\WinLIRC\plugins\net2.conf">
<lircdata type="SPACE_ENC" bits="32" flags="16400" eps="30" aeps="100" pthree="0" sthree="0" ptwo="0" stwo="0" pone="577" sone="1656" pzero="577" szero="538" plead="0" ptrail="593" pfoot="0" sfoot="0" prepeat="8983" srepeat="2236" pre_data_bits="0" pre_data="0" post_data_bits="0" post_data="0" pre_p="0" pre_s="0" post_p="0" post_s="0" gap="107742" gap2="0" repeat_gap="0" toggle_bit="0" toggle_bit_mask="0" min_repeat="0" min_code_repeat="0" freq="38000" duty_cycle="0" toggle_mask="0" rc6_mask="0" baud="0" bits_in_byte="0" parity="0" stop_bits="0" ignore_mask="0"/>
<code name="on" codeno="0x00000000E17A48B7">
<ccf>0000 006d 0002 0000 0155 0055 0017 0e3d</ccf>
</code>
</remote>
</lircremotes>


name E:\d_desk_bkp\WinLIRC\plugins\net2.conf
bits 32
flags SPACE_ENC|CONST_LENGTH
eps 30
aeps 100

header 8985 4474
one 577 1656
zero 577 538
ptrail 593
repeat 8983 2236
gap 107742
toggle_bit_mask 0x0

begin codes
on 0xE17A48B7
end codes

end remote


Did you saw this errors before?
Barf
Expert
Posts: 1524
Joined: Fri Oct 24, 2008 1:54 pm
Location: Munich, Germany
Contact:

Post by Barf »

Hi. Glad you liked IrMaster; the forum here seems to mostly ignore it, which I interpret as: It is so easy to use that no usage questions questions occur, it has no bugs, and already contains all the features anyone could think of :wink:
XBox I got the following error for this code:
616A 0000 0000 0001 0004 0064
CCF type 0x616a
To my knowledge, there is no such thing as a CCF code starting with 616A, see this thread and threads linked to therein. So my guess is that it is some other representation. If you give more details on how you "captured" the code, someone is possibly able to help you.

Loading C:\Program Files (x86)\IrMaster\Windows\DecodeIR.dll
Loading DecodeIR
Loading of DecodeIR from system path failed.
Error: DecodeIR not found.
Looks like DecodeIR.dll does not load. This is uncritical for this usecase. (Sorry for the unprecise and verbose loading messages; they come from files from RemoteMaster, which were not really written to be used outside of RemoteMaster.)

The latter signal is correct Pronto, but weird in that it only contains two pulse pairs. I do not think that there are any errors here (assuming LIRC did its job), just the signal is funny. If you tell more details someone might be able to help you. I have seen such a short signal only by Canon cameras, see the "canon" protocol in IrpProtocols.ini
andrenatal
Posts: 5
Joined: Wed Jul 04, 2012 9:49 pm

Post by andrenatal »

Barf, you software is awesome!

Can I use it to capture from an audio receiver, and generate wav files to replicate the emitt?

Thanks

Andre

Barf wrote:Hi. Glad you liked IrMaster; the forum here seems to mostly ignore it, which I interpret as: It is so easy to use that no usage questions questions occur, it has no bugs, and already contains all the features anyone could think of :wink:
XBox I got the following error for this code:
616A 0000 0000 0001 0004 0064
CCF type 0x616a
To my knowledge, there is no such thing as a CCF code starting with 616A, see this thread and threads linked to therein. So my guess is that it is some other representation. If you give more details on how you "captured" the code, someone is possibly able to help you.

Loading C:\Program Files (x86)\IrMaster\Windows\DecodeIR.dll
Loading DecodeIR
Loading of DecodeIR from system path failed.
Error: DecodeIR not found.
Looks like DecodeIR.dll does not load. This is uncritical for this usecase. (Sorry for the unprecise and verbose loading messages; they come from files from RemoteMaster, which were not really written to be used outside of RemoteMaster.)

The latter signal is correct Pronto, but weird in that it only contains two pulse pairs. I do not think that there are any errors here (assuming LIRC did its job), just the signal is funny. If you tell more details someone might be able to help you. I have seen such a short signal only by Canon cameras, see the "canon" protocol in IrpProtocols.ini
Barf
Expert
Posts: 1524
Joined: Fri Oct 24, 2008 1:54 pm
Location: Munich, Germany
Contact:

Post by Barf »

Can I use it to capture from an audio receiver, and generate wav files to replicate the emitt?
IrMaster can import a Wave-file created from a similar tool, utilizing "frequency doubling by full wave rectification". But it does not "capture from an audio receiver". Every modern operating system can in principle do that, Windows, Linux, Mac,.... but there are some issues with this. But you probably do not mean exactly that, but just to "capture" an IR signal using some appropriate hardware. IrMaster, including the upcoming version 0.3, does not do that; you have to use IRScope for that. IRScope's native export, the ict file, can be imported by IrMaster. I hope to support at least some hardware directly in a future version.

Barf, you software is awesome!
:D
Post Reply