Отправка инфракрасного шаблона с помощью KitKat API на Samsung Galaxy S4

KitKat IR SDK
http://developer.android.com/reference/android/hardware/ConsumerIrManager.html

LG IR SDK
http://developer.lgmobile.com/MOBILE_HELP/topic/lge.mobilesdk.LGQRemote.api/Documents/reference/com/lge/hardware/IRBlaster/IRBlaster1.htm, int[])

Я разрабатываю приложение для Android, которое использует инфракрасный передатчик. Есть 2 кнопки, которые должны послать данный шаблон. Я использовал raspberry pi с lirc для чтения этих кодов с оригинального пульта для моего устройства.

Мой шаблон для отправки выглядит так (это значения десятичной длительности):

1771     821    3499     823     869

Используя LG IR SDK на LG2, я могу правильно отправить эти данные, используя метод, упомянутый выше:

int frequency=38000;
int[] rawCodes=new int[]{1771,821,3499,823,869};
mIR.sendIRPattern(frequency, rawCodes);

Я снова протестировал отправленные данные с LG G2 на Raspberry Pi с lirc, и декодированные значения практически идентичны значениям в данном массиве. К сожалению, используя KitKat SDK ConsumerIrManager на Samsung Galaxy S4:

int frequency=38000;
int[] rawCodes=new int[]{1771,821,3499,823,869};
irManager.transmit(frequency,rawCodes);

Отправленные данные отличаются от ожидаемых. Считывание данных, отправленных samsung с lirc, похоже, что иногда полученные данные верны, но иногда существуют совершенно разные значения (например, 2 довольно больших значения). Ребята, вы знаете, что я делаю не так? Насколько я знаю, нет никакой разницы между методами LG SDK и Kitkat SDK, поэтому я не знаю, почему эти 2 телефона иногда посылают разные сигналы.

1 ответ

Я размышляю над тем, чтобы сделать это сам, поэтому я еще не пробовал, но, похоже, это то, что вы ищете (Android API): http://developer.android.com/reference/android/hardware/ConsumerIrManager.html

Другие вопросы по тегам