Вот делаю прогу на основе
https://github.com/ksksue/FTDriver/t...riverTutorial1 которая принимает данные с ик пульта с помощью ардуины по serial port и управляет Power Amp-ом и системной громкостью, пока что все недопиленое но работает. Так как это моя первая прога для Андроид то строго не судите, появиться время - доделаю.
Для работы нужно ардуину с подключеным инфракрасным приемником.
Заливаете в ардуину скетч типа этого
Код:
#include <IRremote.h>
int RECV_PIN = 13;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}
void loop() {
if (irrecv.decode(&results)) {
digitalWrite(8,HIGH);
if (results.value==0xFF906F) {//поменяйте на свой код
//Serial.print(results.value, HEX);
Serial.print(1);
delay(100);
}
if (results.value==0xFFC23D) {//поменяйте на свой код
Serial.print(2);
delay(100);
}
if (results.value==0xFFA857) {//поменяйте на свой код
Serial.print(3);
delay(100);
}
if (results.value==0xFF02FD) {//поменяйте на свой код
Serial.print(4);
delay(100);
}
if (results.value==0xFF629D) {//ch+
Serial.print(5);
delay(100);
}
if (results.value==0xFF22DD) {//eq
Serial.print(6);
digitalWrite(A2,HIGH);
delay(100);
digitalWrite(A2,LOW);
}
if (results.value==0xFFE21D) {//ch-
Serial.print(7);
delay(100);
}
if (results.value==0xFFA25D) {//pause
Serial.print(8);
delay(100);
}
irrecv.resume(); // Receive the next value
digitalWrite(8,LOW);
}
}
Меняете коды от пульта на свои. Прога принимает цифры от 1 до 8 делает соотвествующие действия.
VOL_UP_CODE = 2;
VOL_DOWN_CODE = 4;
PREV_CODE = 1;
NEXT_CODE = 3;
UP_CODE = 7;
DOWN_CODE = 5;
SHUFFLE ON/OFF= 6;
PLAY_PAUSE_CODE = 8;
Прога юзает Power Amp api поэтому с другими проигрывателями работать не будет, только громкость получиться регулировать. В планах сделать нормальный юзер интерфейс с возможностью самому выбирать нужное действие под конкретный код кнопки ик пульта. Прога запускает отдельный сервис после старта которого главное активити можно закрыть. Есть пока что не решенная проблема с запросом доступа к юсб девайсам, который даже после нажатия "больше не спрашивать" все равно после отключения/подключения otg спрашивает разрешения, поэтому кнопку Start Service надо нажимать несколько раз пока сервис не подконектиться к юсб сериал. Еще планирую в будущим прикрутить датчики температуры и выводить данные на виджет. Помощь разбирающихся людей приветсвуется. Если кому надо исходники то выложу, может совместными усилиями допилим

П.С. Тестировалось на нексус 7 с тимуровской прошивкой и Sams Galaxy S2.