<div dir="ltr">Já už jsem se do té diskuse radši nechtěl motat, protože je to pro mě hóóódně tenký led, ale nedá mi to: <div><br></div><div>Někde v číně jsem koupil USB pedál, který se chová jako klávesnice, takže asi nějaký HID. Je k tomu soft (ve widlích, ale našel jsem něco i pro linux), ve kterém se dá nastavit chování jednotlivých pedálů (kláves). A dá se nastavit, že buď klávesa generuje press a release (scan kódy) nebo znak/řetězec. </div><div><br></div><div>Já jsem si myslel, že HID (chápu, že jsou různé třídy těchto zařízení) může umět i ty scan kódy i to přímé posílání znaků. Je to možné u HID klávesnice? Nebo se to chová jako víc různých HID? Nebo je to řešeno úplně jinak? Na studium specifikace USB HID jsem se rychle vykašlal, protože to na mě byl celý systém složitých žebříků, takže kdyby mi tohle někdo stručně osvětlil, byl bych vděčen. </div><div><br></div><div>Zdravím! </div><div><br></div><div>Jarda V. </div></div><div class="gmail_extra"><br><div class="gmail_quote">Dne 6. dubna 2016 14:52 Hynek Fabian <span dir="ltr"><<a href="mailto:hynek.fabian@firma.seznam.cz" target="_blank">hynek.fabian@firma.seznam.cz</a>></span> napsal(a):<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">raw mode na wydlich:<br>
<br>
<a href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms645543(v=vs.85).aspx" rel="noreferrer" target="_blank">https://msdn.microsoft.com/en-us/library/windows/desktop/ms645543(v=vs.85).aspx</a><br>
<br>
(google, deset sekund)<br>
<br>
Dne 6.4.2016 v 14:48 Hynek Fabian napsal(a):<br>
<div class="HOEnZb"><div class="h5">> To bude proto ze se to tvari jako HID zarizeni. Pokud je znakovy<br>
> zarizeni klavesnice, da se menit vystupni mod v kernelu pres ioctl:<br>
><br>
>   ioctl(fd, KDSKBMODE, K_RAW);<br>
><br>
> V raw modu padaj z tty bajty tak jak lezou z klavesnice, je tam nejaky<br>
> dalsi mod se scan kodama a je to cely slozity jak zebrik, ale je to<br>
> popsany nekde v dokumentaci kernelu. (btw neplest s raw modem tty, to je<br>
> uplne jina pisnicka). Dokonce se to necha zavolat z pajtnu, ve<br>
> standartni knihovne je wrapper nad ioctl, ale kody asi bude potreba<br>
> zjistit z ceckovych headeru.<br>
> Jak je to na wydlich presne nevim, ale jelikoz dostavaj z klavesnice ty<br>
> stejny raw kody a vyrabi z toho zase klavesnicovy znaky, tak se to snad<br>
> nemuze moc lisit.<br>
><br>
><br>
> Dne 6.4.2016 v 09:44 Petr Blahos napsal(a):<br>
>> Ano ano, úplně stejné je to i na debianu s Gnome3 (tedy při české<br>
>> klávesnici to píše česká písmenka<br>
>> místo čísel, přesněji řečeno nepíše to čísla místo písmenek).<br>
>> --<br>
>> Petr<br>
>><br>
>><br>
>> 2016-04-04 8:48 GMT+02:00 Petr Blahos <<a href="mailto:petrblahos@gmail.com">petrblahos@gmail.com</a><br>
>> <mailto:<a href="mailto:petrblahos@gmail.com">petrblahos@gmail.com</a>>>:<br>
>><br>
>>     To, co jsem psal jsou jenom moje doměnky, ale jestli to tak je, tak<br>
>>     to bude<br>
>>     fungovat stejně na každým OS. Až půjdu s počítačem kolem USB čtečky,<br>
>>     tak to vyzkouším...<br>
>><br>
>><br>
>>     --<br>
>>     Petr<br>
>><br>
>><br>
>>     2016-04-04 1:50 GMT+02:00 Jakub Vysoky <<a href="mailto:jakub@borka.cz">jakub@borka.cz</a><br>
>>     <mailto:<a href="mailto:jakub@borka.cz">jakub@borka.cz</a>>>:<br>
>><br>
>>         Hehe, omlouvam se, obcas proste zapomenu, jak uzasna<br>
>>         architektura ty windows jsou :)) Diky za objasneni.<br>
>><br>
>><br>
>>         On Sunday, April 3, 2016, Petr Blahos <<a href="mailto:petrblahos@gmail.com">petrblahos@gmail.com</a><br>
>>         <mailto:<a href="mailto:petrblahos@gmail.com">petrblahos@gmail.com</a>>> wrote:<br>
>><br>
>>             Ahoj, nevím, jak čtečky karet, ale u USB čteček barkódů je<br>
>>             tohle naprosto standardní<br>
>>             chování. HID standard jsem nestudoval, ale jelikož<br>
>>             klávesnice neví, jaká je na počítači<br>
>>             nastavená klávesníce, tak nemůže poslat, že je to znak 9,<br>
>>             ale musí poslat 10. klávesa<br>
>>             ve 2. řadě (čili scan kód). Z toho prostě moc není cesta ven.<br>
>><br>
>>             Zatím všechny čtečky barkódů, který jsem potkal měly možnost<br>
>>             nastavení, aby neposílaly<br>
>>             čísla z horní řady klávesníce, ale z numerické klávesnice, a<br>
>>             aby posílaly vždy velká/malá<br>
>>             písmenka.<br>
>><br>
>>             To, že to posílá do aktivního okna (dokonce do políčka s<br>
>>             focusem), to tak prostě opravdu je.<br>
>>             Existuje hack - detekovat, jestli to píše opravdu rychle -<br>
>>             pak je to čtečka.<br>
>>             Proto mám raději sériové verze těchto zařízení (u čteček<br>
>>             barkódů vždy existuje),<br>
>>             ale s tím se zase blbě leze do web browseru (jde to, ale blbě).<br>
>><br>
>>             --<br>
>>             Petr<br>
>><br>
>><br>
>><br>
>><br>
>><br>
>> _______________________________________________<br>
>> Python mailing list<br>
>> <a href="mailto:python@py.cz">python@py.cz</a><br>
>> <a href="http://www.py.cz/mailman/listinfo/python" rel="noreferrer" target="_blank">http://www.py.cz/mailman/listinfo/python</a><br>
>><br>
>> Visit: <a href="http://www.py.cz" rel="noreferrer" target="_blank">http://www.py.cz</a><br>
>><br>
> _______________________________________________<br>
> Python mailing list<br>
> <a href="mailto:python@py.cz">python@py.cz</a><br>
> <a href="http://www.py.cz/mailman/listinfo/python" rel="noreferrer" target="_blank">http://www.py.cz/mailman/listinfo/python</a><br>
><br>
> Visit: <a href="http://www.py.cz" rel="noreferrer" target="_blank">http://www.py.cz</a><br>
><br>
_______________________________________________<br>
Python mailing list<br>
<a href="mailto:python@py.cz">python@py.cz</a><br>
<a href="http://www.py.cz/mailman/listinfo/python" rel="noreferrer" target="_blank">http://www.py.cz/mailman/listinfo/python</a><br>
<br>
Visit: <a href="http://www.py.cz" rel="noreferrer" target="_blank">http://www.py.cz</a><br>
</div></div></blockquote></div><br></div>