Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Microsoft Xbox DVD Kit - dalkove ovladani pro puvidni Xbox v Ubuntu (pulseaudio)  (Přečteno 4178 krát)

karlitos

  • Stálý člen
  • **
  • Příspěvků: 1057
  • Bioinformatics - solutions in-silico
    • homepage
Zdravim

Valel se mi tu puvodni dalkovy ovladac pro Xbox, tak sem popad pajku a pridelal USB kabel podle tohoto obrazku :

Prace na 10 minut, staci odpajet ten puvodni konektor pro Xbox, nebo si udelat redukci Xbox kabel <-> USB, navodu je na netu jak mraku.

Pak jsem nahodil lirc a par dalsich baliku :
Kód: [Vybrat]
sudo apt-get install lirc pulseaudio-module-lirc

Pri instalaci se me to ptalo jaky ovladac a receiver - oboji jsem zadal jako none

Pak nasledovala uprava par konfiguraku :
Kód: [Vybrat]
sudo gedit /etc/lirc/hardware.confu me vypada takto :
Kód: [Vybrat]
# /etc/lirc/hardware.conf
#
#Chosen Remote Control
REMOTE="None"
REMOTE_MODULES="lirc_atiusb lirc_dev"
REMOTE_DRIVER=""
REMOTE_DEVICE="/dev/lirc0"
REMOTE_SOCKET=""
REMOTE_LIRCD_CONF=""
REMOTE_LIRCD_ARGS="-r"

#Chosen IR Transmitter
TRANSMITTER="None"
TRANSMITTER_MODULES=""
TRANSMITTER_DRIVER=""
TRANSMITTER_DEVICE=""
TRANSMITTER_SOCKET=""
TRANSMITTER_LIRCD_CONF=""
TRANSMITTER_LIRCD_ARGS=""

#Enable lircd
START_LIRCD="true"

#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD="false"

#Try to load appropriate kernel modules
LOAD_MODULES="true"

# Default configuration files for your hardware if any
LIRCMD_CONF="lircd.conf"

#Forcing noninteractive reconfiguration
#If lirc is to be reconfigured by an external application
#that doesn't have a debconf frontend available, the noninteractive
#frontend can be invoked and set to parse REMOTE and TRANSMITTER
#It will then populate all other variables without any user input
#If you would like to configure lirc via standard methods, be sure
#to leave this set to "false"
FORCE_NONINTERACTIVE_RECONFIGURATION="true"
START_LIRCMD=""
a jeste :
Kód: [Vybrat]
sudo gedit /etc/lirc/lircd.confktery jsem upravil takto :
Kód: [Vybrat]
#This configuration has been automatically generated via
#the Ubuntu LIRC package maintainer scripts.
#
#It includes the default configuration for the remote and/or
#transmitter that you have selected during package installation.
#
#Feel free to add any custom remotes to the configuration
#via additional include directives or below the existing
#Ubuntu include directives from your selected remote and/or
#transmitter.

# brand: Microsoft Xbox DVD Receiever (also works with generic)
# remote control: Xbox remote or any remote using RCA DVD player codes

begin remote

  name  XboxDVDDongle
  bits            8
  eps            30
  aeps          100

  one             0     0
  zero            0     0
  gap          163983
  toggle_bit_mask 0x0

      begin codes
          LEFT                     0xA9
          UP                       0xA6
          RIGHT                    0xA8
          DOWN                     0xA7
          SELECT                   0x0B
          1                        0xCE
          2                        0xCD
          3                        0xCC
          4                        0xCB
          5                        0xCA
          6                        0xC9
          7                        0xC8
          8                        0xC7
          9                        0xC6
          0                        0xCF
          MENU                     0xF7
          DISPLAY                  0xD5
          REWIND                   0xE2
          FFWD                     0xE3
          PLAY                     0xEA
          PAUSE                    0xE6
          STOP                     0xE0
          SKIP-                    0xDD
          SKIP+                    0xDF
          TITLE                    0xE5
          INFO                     0xC3
          BACK                     0xD8
      end codes

end remote

No pak nasledoval restart a test pomoci irw
Kód: [Vybrat]
~ $ irw
000000000000000b 00 SELECT XboxDVDDongle
000000000000000b 01 SELECT XboxDVDDongle
000000000000000b 02 SELECT XboxDVDDongle
000000000000000b 00 SELECT_UP XboxDVDDongle
00000000000000a7 00 DOWN XboxDVDDongle
00000000000000a7 01 DOWN XboxDVDDongle
00000000000000a7 02 DOWN XboxDVDDongle
00000000000000a7 03 DOWN XboxDVDDongle
00000000000000a7 04 DOWN XboxDVDDongle
00000000000000a7 00 DOWN_UP XboxDVDDongle
00000000000000a7 00 DOWN XboxDVDDongle
00000000000000a7 01 DOWN XboxDVDDongle
00000000000000a7 00 DOWN_UP XboxDVDDongle
00000000000000a7 00 DOWN XboxDVDDongle
00000000000000a7 01 DOWN XboxDVDDongle
00000000000000a7 00 DOWN_UP XboxDVDDongle
00000000000000a7 00 DOWN XboxDVDDongle
00000000000000a7 00 DOWN_UP XboxDVDDongle
00000000000000a7 00 DOWN XboxDVDDongle
00000000000000a7 01 DOWN XboxDVDDongle
00000000000000a7 00 DOWN_UP XboxDVDDongle
00000000000000a7 00 DOWN XboxDVDDongle
00000000000000a7 01 DOWN XboxDVDDongle
00000000000000a7 00 DOWN_UP XboxDVDDongle
00000000000000a7 00 DOWN XboxDVDDongle
00000000000000a7 01 DOWN XboxDVDDongle
00000000000000a7 00 DOWN_UP XboxDVDDongle
00000000000000a6 00 UP XboxDVDDongle
00000000000000a6 01 UP XboxDVDDongle
00000000000000a6 00 UP_UP XboxDVDDongle
...

FAAAJN uz jsme na pul cesty doma.

No a chtel jsem hlavne ovladat hlasitost kdyz lezim na posteli a posloucham hudbu, takze jsem pridal radek
Kód: [Vybrat]
load-module module-lircdo souboru /etc/pulse/default.pa
Jsou tam zakomentovane radky kde se da zapnout nacitani dalsich modulu tak jsem ten radek pridal pod ne :
Kód: [Vybrat]
...
### Load audio drivers statically (it's probably better to not load
### these drivers manually, but instead use module-hal-detect --
### see below -- for doing this automatically)
#load-module module-alsa-sink
#load-module module-alsa-source device=hw:1,0
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
#load-module module-null-sink
#load-module module-pipe-sink
load-module module-lirc
...
Aby se zmena projevila musi se jeste provest :
Kód: [Vybrat]
killall pulseaudio && pulseaudio -D
No a posednim krokem je vytvoreni souboru .lircrc :
Kód: [Vybrat]
sudo gedit ~/.lircrca vlozeni techto radku :
Kód: [Vybrat]
begin
   remote = XboxDVDDongle
   prog = pulseaudio
   config = volume-down
   button = DOWN
   repeat = 0
end

begin
   remote =  XboxDVDDongle
   prog = pulseaudio
   config = volume-up
   button = UP
   repeat = 0
end

begin
   remote =  XboxDVDDongle
   prog = pulseaudio
   config = mute-toggle
   button = SELECT
end

a SIMSALABIM - kouzlo - sipkama nahoru a dolu rpidavam a ubiram hlasitost a tim tlacitkem uprostred zapinam/vypinam zvuk.
Pro pulseaudio existuji nasledujici moznosti pro soubor .lircrc : volume-up, volume-down, mute, mute-toggle,  reset
Tak doufam ze tohle nekoho inspiruje, docela me prkvapila jak plynule to to slo zprovoznit, stacilo si najit par HOWTO na internetu, tak jsem to tu shrnul.

Budu top jeste muset trochu doladit, mam pocit ze mi to posila vic povelu pri zmacknuti tlacitek - viz vystup z irw.
Kazdopadne dobry gadget aneb jak se hezky cesty rika bastl jak svina  ;D  ;D  ;D
Lenovo ThinkCentre A61 912073G
Athlon X2 5000+ 4GB RAM Nvidia Geforce 9500GT
Linux Mint 9 Isadora , Win7 64Bit

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3176
    • GdH-Notes
irw sbírá data přímo z ovladače a ten většinou posílá kód stisknutého tlačítka opakovaně, dokud ho držíš. Pokud použiješ v konfiguraci DO pro určitý program repeat 0, eliminuje to další pulzy a bere se jeden stisk jako jedna událost, dokud to tlačítko držíš. Pro nastavování hlasitosti je lepší použít repeat 1 a doplnit parametrem delay, který určí, kolik pulzů se má vynechat, než se pošle další událost, čímž si nastavíš rychlost jakou se bude hlasitost měnit, při držení tlačítka.

karlitos

  • Stálý člen
  • **
  • Příspěvků: 1057
  • Bioinformatics - solutions in-silico
    • homepage
Diky za tip. Tohle byl zatim spis proof of concept jeste to trochu dopiluju. Jenom by me zajimalo jestli je DO vazane na dany prijmac. Mam totiz Logitech Harmony, ten prijmac funguje out-of-the-box, lze nastavit ze pouzivam treba Microsoft MCE Remote s tim prijmacem od Xboxu ?
Lenovo ThinkCentre A61 912073G
Athlon X2 5000+ 4GB RAM Nvidia Geforce 9500GT
Linux Mint 9 Isadora , Win7 64Bit

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3176
    • GdH-Notes
Diky za tip. Tohle byl zatim spis proof of concept jeste to trochu dopiluju. Jenom by me zajimalo jestli je DO vazane na dany prijmac. Mam totiz Logitech Harmony, ten prijmac funguje out-of-the-box, lze nastavit ze pouzivam treba Microsoft MCE Remote s tim prijmacem od Xboxu ?

Podle letmého pohledu na popis xbox přijímače to vypadá takto:
Citace
The standard codes used by the Xbox IR receiver are RCA DVD player codes. You should be able to program any universal remote to use these codes.

karlitos

  • Stálý člen
  • **
  • Příspěvků: 1057
  • Bioinformatics - solutions in-silico
    • homepage
No to stale neresi mou otazku : lze pouzit jine DO s timto prijmacem ? Jdu to zjistovat, mam tady totiz nejake dalkove ovladani od starsi TV karty a to ma vic tlacitek a i lepsi design. Pokud bych rozchodil to a mohl pak naprogramovat Hramony bylo by to supr - ziskal bych USB IR prijmac zadarmo. To Dd od toho DVD Kitu je sice fajn, ale treba nema vubec tlacitka na ovladani hlasitosti.
Lenovo ThinkCentre A61 912073G
Athlon X2 5000+ 4GB RAM Nvidia Geforce 9500GT
Linux Mint 9 Isadora , Win7 64Bit

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3176
    • GdH-Notes
Otázku jsem přečetl správně a předložená citace je relevantní ;)

Ale karmu jsem ti za to dolu nedával, to jen aby bylo jasno  ;D
« Poslední změna: 29 Listopadu 2010, 10:07:14 od GdH »

karlitos

  • Stálý člen
  • **
  • Příspěvků: 1057
  • Bioinformatics - solutions in-silico
    • homepage
Tak to by me zajimalo kterej dobrak   :-\
Citace
You should be able to program any universal remote to use these codes.

prekladam jako "lze naprogramovat jakekoliv univerzalni DO k pouzivani tech kodu toho DO od toho Xbox DVDkitu" Jenze ja bych rad aby ten PRIJMAC od toho kitu prijmal povely od jineho DO, ktere si pak naprogramuju na tom univerzalu.
Jestli to dobre chapu tak sekce :
Kód: [Vybrat]
# /etc/lirc/hardware.conf
#
#Chosen Remote Control
REMOTE="None"
REMOTE_MODULES="lirc_atiusb lirc_dev"
REMOTE_DRIVER=""
REMOTE_DEVICE="/dev/lirc0"
REMOTE_SOCKET=""
REMOTE_LIRCD_CONF=""
REMOTE_LIRCD_ARGS="-r"
definuje prijmac. O ten se stara ovladac/modul lirc_atiusb lirc_dev
Citace
# remote control: Xbox remote or any remote using RCA DVD player codes
  ???
Dobre, nejlepsi zpusob bude sehnat nekde jine - pro lirc zdokumentovane DO - vymenit sekci lircd.conf a otestovat
Lenovo ThinkCentre A61 912073G
Athlon X2 5000+ 4GB RAM Nvidia Geforce 9500GT
Linux Mint 9 Isadora , Win7 64Bit

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3176
    • GdH-Notes
Jdeš na to moc složitě bych řekl. Ten přijímač je stavěný na určitý protokol a zdá se, že tento poslouchá dálkové ovladače DVD firmy RCA. Hledal bych v seznamu kódů tvého Harmony a zkusil to tam naťukat.

karlitos

  • Stálý člen
  • **
  • Příspěvků: 1057
  • Bioinformatics - solutions in-silico
    • homepage
Jo tak RCA je fimra a vyrabi DVD prehravace ... (AHA-smajlik)
Lenovo ThinkCentre A61 912073G
Athlon X2 5000+ 4GB RAM Nvidia Geforce 9500GT
Linux Mint 9 Isadora , Win7 64Bit

GdH

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 3176
    • GdH-Notes
RCA určitě dělá DVD přehrávače a jejich konfigurace je běžně ve výbavě univerzálních ovladačů. Ten XBOX přijímač možná bude reagovat i na jiné DO, to zjistíš přes irrecord, pak si můžeš udělat vlastní konfiguraci ovladače. Myslím, že na rootu je to popsané celkem dobře..

 

Provoz zaštiťuje spolek OpenAlt.