/XposedLePro3Infrared

Xposed module which makes the IR blaster on several LeEco phones usable for 3rd party apps.

Primary LanguageJavaGNU General Public License v3.0GPL-3.0

Xposed Module "LeEco Infrared Fix"

What's this:

This is a module for the Xposed Framework. You need to have the Xposed framework (which is not made by me) installed on your phone. You may need to have root to be able to install the Xposed framework (but no root is needed for this Xposed module).

What this module can do for you:

Note: This module was initially made for the LeEco LePro 3 phone (LEX720 and LEX727) running EUI. Several XDA users have confirmed that it is working on other LeEco phones too:

  • LeEco Le Pro 3 X720 running EUI 5.8.018S
  • LeEco Le 2 X526 running EUI 5.9.020S
  • LeEco Le Max 2 X820 running Madsurfer's 21s EUI 5.9 Rom
  • maybe other LeEco phones too? Please report in the XDA thread if it works on other phones too!

The LePro 3 contains an infrared (IR) blaster but it can only be used with the preinstalled remote control app from LeEco. Other 3rd party apps from the Play Store don't work. This Xposed module tries to make the IR blaster of the LePro3 usable for all 3rd party Infrared apps.

Short Background

The Le Pro 3 does not support the default Android Infrared API as it doesn't just contain a simple IR emitter LED, but instead contains a complex system-on-a-chip Infrared solution from Universal Electronics, which supports not only sending, but also receiving infrared ("learning mode").

Instead of the Android Infrared API this device uses the QuickSet SDK (from Universal Electronics) which is running as a Service (com.uei.control.Service) which is provided by the package com.uei.quicksetsdk.letv (/system/app/UEIQuicksetSDKLeTV/UEIQuicksetSDKLeTV.apk).

This module here overrides the methods in Androids ConsumerIrService class, tries to bind the UEI Control Service (UEI QuickSet Service) and tries to forward all calls which are received over the standard Android ConsumerIrManager API to the QuickSet SDK API. So this module tries to act as a bridge between these two APIs.

If you are interested in the technical background read this thread on XDA where I explain it in detail: [REF] How Infrared is (not) working on LePro3 - some infos for IR devs

Restrictions:

  • It supports only sending Infrared (simply because the standard Android API has no support yet for receiving infrared). But the original LeEco remote control app should still be able to use the learning-mode.
  • The QuickSet SDK Service must be installed and must not be disabled (on the LePro 3 you can find this app under the name "UEI Android Services SDK(LeTV)". Its package name is: com.uei.quicksetsdk.letv . This is the reason why this module will probably not work on cyanogenmod. Btw, you can remove the original LeEco remote control app if you want to. It's not needed by this module.

Supported EUI Version:

This module was developed and tested on the following device, but it may work on other devices too (I just have this single device for testing):

  • Device LeEco LePro 3 (LEX720)
  • Firmware version: 5.8.018S
  • Build-ID: WAXCNFN5801811012S

It may or may not work on other EUI versions, so just give it a try and look into the logcat logs and search for lines containig the tag: LeEco_Infrared_Fix.

Please leave your feedback in the XDA thread below if you find it working for other versions or ROMs! Thanks! :-)

Support:

If you have any questions or feedback please visit this thread on the XDA developers forum: [MOD][Xposed] Make Infrared Blaster working with all 3rd party apps (on EUI)