Tag Archives: IRremote

Backdoor uPWM Hack on Photon for Infrared signals using UART

Since we received our Photon several months ago it has been difficult to find a working example of Hardware PWM on the Photon. Initially, we ported our softPWM approach to the Photon, which is excellent. However, we figured it must be possible to use at least one of the spare UARTs on the Photon to achieve our goal. So first we started prototyping on the Arduino and quickly got a working example with some limitations – only 40 kHz and 33 kHz carrier frequencies were possible with the UART without delving into the registers a bit more. Then we moved the code over to the Photon, leveraging our previous softPWM examples, upgraded with the Arduino code – EUREKA! The Backdoor uPWM Hack on Photon for Infrared signals.

uPWM Circuit diagram for Photon
uPWM Circuit diagram for Photon using UART

Continue reading Backdoor uPWM Hack on Photon for Infrared signals using UART

Preview: A.IR Shield Nano, a high-end Infrared Shield for AnalysIR, IRremote & IRLib

The fifth member of our MakeIR series of devices & kits is the A.IR Shield Nano. This shield works out of the box with AnalysIR and is essentially plug & play , with additional prototyping options. The shield comes attached to an Arduino nano compatible device (clone). Although designed specifically for AnalysIR, users can also upload IRremote, IRLib or any Arduino sketches that run on the Nano. A.IR shield is built with only the highest quality IR components available and boasts dual Infrared emitters with configurable IR Power.

A.IR block diagram
A.IR Shield Nano block diagram

We have provided a link below to the preliminary product data sheet and would welcome feedback on additional, nice to have or missing features, if any. Please read the data sheet for a more detailed description of the A.IR shield. Continue reading Preview: A.IR Shield Nano, a high-end Infrared Shield for AnalysIR, IRremote & IRLib

Simple Infrared PWM on Arduino, Part 2- RAW IR Signals

In Part 1 of this series, we demonstrated how to send signals using simple Infrared PWM on Arduino. In this Part 2 post we look at sending RAW IR signals – specifically a RAW NEC signal and a longer RAW Mitsubishi Air Conditioner signal. We have also improved the method shown in Part 1 due to some issues we identified when sending ‘real’ signals versus the ‘test’ signal we used before. (More on that later). In Part 3, we will take the signals from this post and show how to send them using their binary (or Hex) representation, which saves lots of SRAM.

Original NEC 32-bit and Mitsubishi 88-bit Signals displayed using AnalysIR
Original NEC 32-bit and Mitsubishi 88-bit Signals displayed using AnalysIR

Continue reading Simple Infrared PWM on Arduino, Part 2- RAW IR Signals

Simple Infrared PWM on Arduino

We are often asked on discussion boards, about conflicts between IRremote or IRLib and other Arduino Libraries. In this post, we present a sketch for ‘Simple Infrared PWM on Arduino’. This is the first part in a 3 part series of posts. Part 1 shows how to generate the Simple Infrared PWM on Arduino (AKA carrier frequency), using any available IO pin and without conflicting with other libraries. Part 2 will show how to send a RAW infrared signal using this approach and Part 3 will show how to send a common NEC signal from the binary or HEX value.

Example 56kHz generated Infrared signal @ 50% duty cycle
Example 56 kHz generated Infrared signal @ 50% duty cycle

Continue reading Simple Infrared PWM on Arduino

Latest release of AnalysIR V1 preview #2 is now available for download

Dublin, Ireland – 17th April 2015. We are happy to announce the latest release of AnalysIR V1 preview #2 is now available for download by our backers & supporters. Existing users of AnalysIR will receive an email with instructions on how to download this version. New users will receive the details as part of the registration process.

AnalysIR Screenshot
AnalysIR Screenshot

A major highlight of this release is full AnalysIR support for our soon to be released LearnIR (IR Learner). LearnIR delivers the best performance available for receiving and sending Infrared signals with excellent accuracy.

View the AnalysIR Product Sheet(PDF)

We would like to extend a big thanks to the many users around the world who have helped with feature requests, new protocols and testing over the last months.

Some Highlights in this latest release include:

Continue reading Latest release of AnalysIR V1 preview #2 is now available for download

Reverse engineering the Mitsubishi AC Infrared protocol

This post is the second in a two-part series about Reverse Engineering AC Infrared protocols. This time we look at the Mitsubishi Air Conditioner IR Protocol. The project was undertaken by  two of our users in France (Vincent & Mathieu), with the help of AnalysIR, who  collaborated to reverse engineer this Mitsubishi and previously the Panasonic AC Infrared protocol, both examples of the more challenging AC Infrared protocols. Not only did they identify the individual field codes & checksum but also provided some impressive documentation. Detailed information is available via GitHub which is linked below. This 288 data bit Mitsubishi AC Infrared protocol is composed of two consecutive frames. Both frames are always identical for each signal sent. In common with most AC units the complete settings are sent with every IR signal (temperature, fan, swing etc…). AnalysIR was used to record and turn the signal into HEX/Binary format from which the reverse engineering of the individual fields was tackled.

Mitsubishi AC AnalysIR Screenshot
Mitsubishi AC AnalysIR Screenshot

Continue reading Reverse engineering the Mitsubishi AC Infrared protocol

Reverse engineering the Panasonic AC Infrared protocol

Recently, two of our users in France (Vincent & Mathieu) collaborated to reverse engineer the Panasonic AC Infrared protocol, one of the more challenging AC Infrared protocols using AnalysIR. Not only did they identify the codes & checksum but also provided some impressive documentation and full source code to help others. Detailed information is available via GitHub which is linked below. This 216 data bit Panasonic AC Infrared protocol is composed of two consecutive frames. The first frame remains constant for every command sent to the AC unit. In common with most AC units the complete configuration is sent with every IR signal (temperature, fan, swing etc…). AnalysIR was used to record and turn the signal into HEX/Binary format from which the reverse engineering of the individual fields was tackled.

AnalysIR - Panasonic AC 216 bit Infrared signal
AnalysIR – Panasonic AC 216 bit Infrared signal

Continue reading Reverse engineering the Panasonic AC Infrared protocol

Controlling Chigo Air Conditioner via Infrared from smart phone

Anyone who has tried  controlling an Air Conditioner unit using an Arduino, USB IR Toy, RPi or any MCU will know how difficult it can be to record the longer infrared signals they use. Typical TV systems use IR signals circa 32 bits long, while this Chigo AC unit uses a signal with 197 marks & spaces (or 97 data bits). One of our users, Sertunc – from Istanbul in Turkey, reported his success using AnalysIR to easily record the signal timings for his AC unit and sent us the details along with some nice photos. After testing the validity of the recorded signals using an Arduino, he then set about loading the signals onto his Samsung smart phone (models S4, s4 mini, S5 and more supported). This was helped by installing the free ‘Samsung IR – Universal Remote‘ app onto his phone via Google Play.

Samsung IR Remote appSamsung IR Remote app

Continue reading Controlling Chigo Air Conditioner via Infrared from smart phone

Infrared Receivers – signal lag and distortion

Many electronics enthusiasts will be familiar with how Infrared receivers demodulate IR signals. In this post we show a visualisation of the time lag and distortion of the signals as they pass through the IR receiver for demodulation and noise filtering.  Most DIY projects use the raw timings from the IR receiver to decode individual signals. However, not many will be aware that IR receivers can distort the signal timings by significant amounts. Fortunately, common IR decoders take this into account and compensate for timing distortions introduced by infrared demodulators / receivers.

Infrared Signal, Modulated & De-modulated
Infrared Signal, Modulated & De-modulated

Continue reading Infrared Receivers – signal lag and distortion

Air Conditioners: Recording long Infrared Remote control signals with Arduino

hRecently we have been helping several members on the Arduino forum to record and playback their remote control signals from their Air Conditioners. These signals are typically much longer than those of TVs or common media devices. The 2 most popular libraries for Arduino, IRremote & IRlib are excellent, but have some limitations which we have covered in a previous post. In this post we address one particular issue that is proving challenging to users.

airconremote
Long Infrared signals prove challenging for Arduino users

Continue reading Air Conditioners: Recording long Infrared Remote control signals with Arduino