Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

V-USB klawiatura multimedialna

13 Lip 2012 10:03 7106 30
  • Poziom 42  
    Witam.
    Chcę zrobić klawiaturę multimedialną na AVR-ku jednak nie za bardzo chce to działać.
    O ile "udawanie" zwykłej klawiatury działa prawidłowo z dowolną kombinacją klawiszy to już dodatkowe klawisze multimedialne nie chcą działać.

    Nie pisałem wszystko sam tylko korzystałem z gotowych rozwiązań.

    I tak sama klawiatura to HIDKEYS

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Deskryptor HID jest do zwykłej klawiatury. Jak pisałem zmiana klawiszy na inne działa jednak wg znalezionej specyfikacji pod kodami

    Code:
    Keyboard Mute 07 7F  
    
    Keyboard Volume Up 07 80
    Keyboard Volume Dn 07 81


    regulacja głośności nie działa.


    W sieci znalazłem też projekt takiej klawiatury która niby działa ale jakoś nie za bardzo.

    Kod: c
    Zaloguj się, aby zobaczyć kod


    To też nie działa.
    Ktoś może wie czemu?
  • Poziom 38  
    tzn. jak nie dziala :) sciagnij sobie na PC jakis programik w stylu USBTrace (http://www.sysnucleus.com/) i zobacz czy przesyla prawidlowo dane. Do tego taka klawiatura wymaga osobnego oprogramowania aby obsluzyc dodatkowe klawisze, wiec musisz podszyc sie pod jakies oryginalne rozwiazanie do ktorego jest soft.
  • VIP Zasłużony dla elektroda
    Pod Linuksem w X wystarczy xev... ;)
  • Poziom 42  
    Mam klawiaturę na USB i bez żadnych programików działa ściszanie itd.
    Z USBTrace sprawdzę.
  • Poziom 38  
    Zapewne instalowales jakis soft bo nie ma tutaj jakiegos standardu w klawiaturach multimedialnych...

    Zerknij sobie programem jakie masz kody przesylane z oryginalnej i powinno smigac jak postawisz takie same... A co do softu to bardzo fajne narzedzie, warto zainwestowac jak sie duzo kombinuje z USB w wlasnych projektach.
  • Poziom 42  
    Z tym "mam" to mnie lekko poniosło ale kiedyś miałem przez chwilę taką na USB bezprzewodową i tam na pewno działała głośność i inne multimedialne klawisze bez dodatkowych sterowników.

    Sprawdziłem w USB Trace i wysyłają się właściwe kody ale mimo to nie ma reakcji ze strony komputera i nie wiem czemu :/
  • VIP Zasłużony dla elektroda
    11111olo napisał:
    wysyłają się właściwe kody ale mimo to nie ma reakcji ze strony komputera i nie wiem czemu :/
    tplewa napisał:
    Do tego taka klawiatura wymaga osobnego oprogramowania aby obsluzyc dodatkowe klawisze, wiec musisz podszyc sie pod jakies oryginalne rozwiazanie do ktorego jest soft.
    Mogę tylko dodać, ze pod Linux jest to kwestia odpowiedniej konfiguracji.
  • Poziom 38  
    Tjaa ale to nie Linux - w Linux-e to wiem jak dziala...

    Mam na biurku Logitecha i jest soft do definicji klawiszy (co maja odpalac) i sterownik tez jest Logitecha... Z tym ze dzisiaj raczej nie znajde czasu by przepiac ja na inny komputer - ale jestem raczej pewny ze standardowy sterownik klawiatury 101 klawiszy nie obsluzy dodatkowych funkcji...
  • Poziom 42  
    Może problemem jest deskryptor który niewłaściwie definiuje wykorzystanie tych klawiszy. To wszystko jest takie fajne że do końca nie wiem jak to ugryźć.
    Na YT znalazłem film że ktoś zrobił ściszanie, pogłaśnianie i wyciszenie na ANDURINO - to też jakiś AVR tylko że pod UBUNTU.
  • Poziom 28  
    Potwierdzam, że klawisze multimedialne na klawiaturze działają bez instalacji sterowników. Może to kwestia jakie numery vid i pid zgłasza stworzona przez Ciebie klawiatura? Jak powiesz mi jak sprawdzić te numery to podam jakie ma esperanza ek120, która ma 10 klawiszy multimedialnych.
    // Może rozwinę myśl. Podobnie jest w padach na usb. Po podłączeniu system od razu wie czy ma do czynienia z padem, który posiada analogi czy z takim bez. Jak korzystałem z pada który nazywał się usbjoystick(jakiś chińczyk) to nie działały mi analogi, ale jak zmieniłem nazwę w rejestrze na rumblepad2 to wszystko było ok.
  • Poziom 42  
    HID\VID_4242&PID_E131\6&386C2A56&1&0000

    Mam też prawdziwą klawiaturę na USB (niestety bez klawiszy multimedialnych) i się przedstawia tak

    HID\VID_04F2&PID_0116\6&20566D98&0&0000


    Miszczo może byś zrobił coś takiego.
    Zainstalował USB TRACE i po naciskał klawisze multimedialne a potem byś napisał jakie kody u Ciebie wyskakują?

    V-USB klawiatura multimedialna
  • Poziom 38  
    Pad-y to inny temat... ale mozliwe ze w ktoryms ServicePacku dodali sterowniki do takich klawiatur. Jednak tutaj faktycznie bedzie trzeba podszyc sie pod taka klawiature. Ale na 100% kiedys jak mialem w domu trzeba bylo instalowac soft producenta... choc to bylo dawno...

    Dodano po 16 [minuty]:

    tjaaa i znalazlem nawet potwierdzenie tego ze tak bylo:

    https://www.elektroda.pl/rtvforum/topic373683.html

    Jak jest obecnie to nie wiem bo w 99% uzywam laptopow :( a kilka blaszakow w firmie ma podpiete Logitechy i zainstalowany do nich soft Logitecha. Najlepiej jak by ktos sprawdzil taka klawiature na czystym systemie...
  • Poziom 38  
    tzn. z SP :) ale bez jakichkolwiek sterownikow dodatkowych :) A podaj jaki sterownik obsluguje twoja klawiature (zakladka Sterwonik pole Dostawca Sterownika) - tam gdzie sprawdzales VID i PID

    A jeszcze widac ze ta klawiatura przedstawia sie jako Creative Labs (VID 062a)... wiec moze do popularnych M$ dodal sterowniki w ktoryms SP.
  • Poziom 43  
    Klawiatry MM pod USB działają bez zadnych sterowników. Funkcje zawansowane i skrypty wymagają sterowników.
  • Poziom 38  
    kkknc napisał:
    Klawiatry MM pod USB działają bez zadnych sterowników. Funkcje zawansowane i skrypty wymagają sterowników.


    A co rozumiesz przez funkcje zawansowane ? Dodatkowe klawisze multimedialne czy cos innego. Bo owszem kiedys takie klawiatury dzialaly i to jest normalne, ale aby uzyc dodatkowych klawiszy (multimedialnych) potrzebne bylo oprogramowanie. Z tym ze nie wiem jak jest obecnie...
  • Poziom 42  
    Specyfikacja HID jest bardzo stara i obejmuje nawet WIN98 - nie wiem czy po tym coś zmieniali ale klawiatura USB działa bez dodatkowych sterowników - trzeba tylko klikać DALEJ (tak to jest w WIN98).

    Miszczo widzę że to są kody zgodne z tym co znalazłem.

    Code:
    Scan Next Track 0C 00B5  
    
    Scan Previous Track 0C 00B6
    Stop 0C 00B7 
    Play/ Pause 0C 00CD
    Mute 0C 00E2 
    Bass Boost 0C 00E5 
    Loudness 0C 00E7 
    Volume Up 0C 00E9 
    Volume Down 0C 00EA 
    Bass Up 0C 0152
    Bass Down 0C 0153 
    Treble Up 0C 0154 
    Treble Down 0C 0155 
    Media Select 0C 0183 
    Mail 0C 018A 
    Calculator 0C 0192
    My Computer 0C 0194
    WWW Search 0C 0221 
    WWW Home 0C 0223 
    WWW Back 0C 0224 
    WWW Forward 0C 0225 
    WWW Stop 0C 0226 
    WWW Refresh 0C 0227
    WWW Favorites 0C 022A
  • Poziom 22  
    Ja tylko dodam, że mam dosyć rozbudowaną klawiaturę Logitecha
    http://www.logitech.com/en-us/support/keyboards/183

    Bez sterowników (podłączona poprzez PS/2) działają podstawowe funkcje multimedialne (głośniej-ciszej, odtwarzacz muzyczny, hibernacja, następny-poprzedni, play-pause, itp.). A do zaawansowych funkcji (jak na przykład uruchamianie konkretnego programu danym klawiszem, itp.) wymaga już odpowiedniego softu Logitecha.
  • Poziom 23  
    Ja pracuje na standardowej klawiaturze na PS/2 jednak pełnej przycisków multimedialnych. Wszystkie ale to wszystkie (sterowanie odtwarzaczem, hibernacja, sterowanie głośnością, kalkulator poczta, komputer, home ....) działają poprawnie zarówno na W$7/XP jaki i na Linuxie (gdzie spędzam 99,9% czasu). I gwarantuje że nie są wymagane żadne sterowniki (ma podobną na usb i działa równie poprawnie, co na Chińską firmę MaxCom jest dość nietypowe)
  • Poziom 42  
    Pewnie że działają bo w końcu dobrnąłem i deskryptor jak i całe urządzenie działa.

    Kod: c
    Zaloguj się, aby zobaczyć kod
  • Poziom 10  
    11111olo napisał:
    Pewnie że działają bo w końcu dobrnąłem i deskryptor jak i całe urządzenie działa.

    Kod: c
    Zaloguj się, aby zobaczyć kod

    Też właśnie robię klawiaturę multimedialną opartą na tym projekcie i mam prośbę, mógłbyś umieścić te fragmenty kodu, które należy jeszcze zmienić, żeby przyciski multimedialne działały?
    Bo domyślam się, że oprócz deskryptora, zmieniłeś jeszcze zmienne, gdzie są zapisane kody do poszczególnych klawiszy, czy jakoś inaczej jest to zrobione?
  • Poziom 42  
    To nie jest klawiatura jak sobie wyobrażasz.

    Może inaczej.
    Wysyłasz odpowiednie bajty i to tyle, a jak sobie zrobisz to ze zmiennymi to Twoja sprawa ;)
  • Poziom 10  
    To że to nie jest zwykła klawiatura to ja wiem, bo na zwykłe klawisze mi działa. Chodzi mi o obsługę tych multimedialnych, bo widzę, że w deskryptorze masz wymienione poszczególne klawisze i chciałem zobaczyć jak masz zrealizowane wysyłanie ich.
    Samego deskryptora nie do końca ogarniam i opieram się tylko na przykładzie klawiatury HIDKEYS.
    Cytat:
    Wysyłasz odpowiednie bajty i to tyle, a jak sobie zrobisz to ze zmiennymi to Twoja sprawa Wink

    To też wiem, ale czy bajty od tych multimedialnych muszą być wysłane jako pierwsze czy może muszą być czymś poprzedzone? Bo o tą kolejność mi chodzi.
  • Poziom 42  
    Forma w jakiej to wyślesz jest zdefiniowana w deskryptorze i nie możesz od tak sobie wysyłać tylko w sposób zdefiniowany.
  • Poziom 10  
    11111olo napisał:
    Forma w jakiej to wyślesz jest zdefiniowana w deskryptorze

    Sam powoli do tego dochodzę, ale tak jak pisałem wcześniej nie do końca ogarniam deskryptor.
    Mógłbyś mi zatem objaśnić na tym konkretnym przykładzie w jakiej formie powinienem to wszystko wysyłać, ew. wkleić fragment twojego kodu odpowiedzialny za wysyłanie, żebym mógł go sobie przeanalizować?
  • Poziom 42  
    Kod: c
    Zaloguj się, aby zobaczyć kod


    Wszystko jasne?
  • Poziom 10  
    Dzięki :D
    Teraz już załapałem czemu mi nie działało wcześniej. Nie wiedziałem, że trzeba wysłać REPORT_ID. Dopracuje jeszcze swój kod i myślę że będzie dobrze.
    Jeszcze raz dzięki.