Tag Archives: IR

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

AnalysIR Video Tutorial – Reverse Engineering Tool

We have just launched a short 11 minute AnalysIR video tutorial  introducing the use of the Reverse Engineering Tool feature in AnalysIR, which is available via YouTube. The tutorial covers the important points in reverse engineering in infrared signal of a Toshiba Air  Conditioner. We focus in on the temperature field and show the process to identify the bits within the signal related to the temperature. Users of AnalysIR can follow this process to reverse engineer their own signals using this powerful tool.

Continue reading AnalysIR Video Tutorial – Reverse Engineering Tool

AnalysIR Video Tutorial – Checksum Calculator

We have just launched a short 6 minute video tutorial for AnalysIR introducing the use of the Checksum Calculator feature in AnalysIR, which is available via YouTube. The tutorial covers the steps to verify the position and type of checksums that are typically found in Air Conditioner infrared signals. The types of checksums covered include:

  • XOR
  • SUM
  • CRC-6
  • CRC-16
  • …for both bytes and nibbles.

Continue reading AnalysIR Video Tutorial – Checksum Calculator

Simple Infrared PWM on Arduino, Part 3 – Hex IR Signals

In Part 1 of this series, we demonstrated how to send signals using soft or Simple Infrared PWM on Arduino. In our Part 2 post we looked at sending RAW IR signals – specifically a RAW NEC signal and a longer RAW Mitsubishi Air Conditioner signal using soft PWM. We have since improved the PWM method shown in Part 1 Part 2 to provide better performance and improve portability. In this Part 3, we will take the signals from Part 2 and show how to send them using their binary (or Hex) representation, which can save lots of SRAM in many projects, particularly when dealing with longer AC signals.

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

Continue reading Simple Infrared PWM on Arduino, Part 3 – Hex IR Signals

Porting AnalysIR firmware to Particle’s Photon platform

We have just completed porting our (single source) firmware from a range of other ‘Arduino’ type platforms to Particle’s Photon, having received it yesterday & thought it would be useful sharing some of our experiences for other ‘newbies’. The photon is one of a breed of modern IoT devices hitting the market at relatively low cost. It features a STM32F205 120Mhz ARM Cortex M3 processor running at 120MHz with 1MB flash, 128KB RAM and the all important WiFi. We have been wanting to support the previous Spark Core ($39), but couldn’t resist this little device at the low price point. Particle are also offering a similar embedded device in larger quantities of 10+,  for $12, including FCC certification.

Photon from Particle.io along with embedded sibling
Photon from Particle.io along with embedded sibling

Continue reading Porting AnalysIR firmware to Particle’s Photon platform

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

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

Infrared receiver showdown – TSOP34438 vs VS1838B winner revealed

Having helped many makers resolve problems with Infrared remote control projects over on the Arduino forum, we decided to put 2 of the more common 38kHz receivers, TSOP34438 vs VS1838B,  ‘head-to-head’ over 3 rounds in a winner takes all contest. Different people report a wide variety of problems when first attempting infrared remote control, resulting from using the wrong receiver to timer or interrupt conflicts between the various libraries available. Our commentary on the ‘face-off’ will hopefully shed some light on the ability of these 2 common Infrared receivers to deliver results, as expected.

Idle Interference on VS1838B
Idle Interference on VS1838B

Continue reading Infrared receiver showdown – TSOP34438 vs VS1838B winner revealed

AnalysIR supports PSOC 4 from Cypress

AnalysIR now provides support for the PSOC 4 Prototyping kit from Cypress. Effective immediately users of AnalysIR can use the kit to act as an Infrared source for AnalysIR. The PSOC 4 Prototyping kits are available from Cypress and via their global distributors for just US$4 plus shipping. To use the kit with AnalysIR you will also need an IR Receiver and an optional IR Learner, which can also be purchased with AnalysIR. Initially, the PSOC Firmware is available on request and will be included as part of the installation package in a future release.

PSOC4 and AnalysIR
PSOC4 and AnalysIR

Continue reading AnalysIR supports PSOC 4 from Cypress

Preview: DetectIR, advanced infrared receiver

The fourth member of our MakeIR series of devices & kits will be DetectIR. This infrared receiver module can be configured for Visual IR signal detection, Serial over IR or as an Infrared receiver which can handle even the longest Air conditioner signals. DetectIR is built with only the highest quality IR components available.

DetectIR block diagram
DetectIR 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 datasheet for a more detailed description of DetectIR. Continue reading Preview: DetectIR, advanced infrared receiver