нестандартная клавиатура

В данном форуме предлагается обсуждать темы связанные с любым "железом", а также его работой под Linux
hagen
Заглянувший
Сообщения: 5
Зарегистрирован: 12 май 2006, 09:01

нестандартная клавиатура

Сообщение hagen »

Ребята, помогите разобраться с проблемой. На работе недавно встала задача организовать ввод с нестандартной клавиатуры (POS - клавиатура для касс в супермаркете). Особенностью её является то, что кроме набора обычных кнопок там присутствуют специальные устройства: замок-ключ и считыватель магнитных карт. Ввод с них производится так - сначала клавиатура эмулирует нажатие и двойное отжатие Ctrl, потом эмулируются нажатия других клавиш, характеризующих новое положение ключа (или данные на карте). Задача в том, чтобы отловить такую пару сообщений об отжатии.
Проблема в том, что под X Windows это второе сообщение об отжатии не регистрируется (приходит KeyPress и KeyRelease). Получается, что как будто просто нажат Ctrl, а это не правильно! Сообщения я просматривал прогой xev.

Клавиатуру я проверял в консоли (без X - ов) просматривая коды клавиш командой
showkey -k
двойной release там был!

Помогите разобраться, как настроить X Windows, чтобы он не проглатывал второй release? только поподробнее, всё-таки я в Линуксе новичёк ))

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

hagen, попрбуйте это
[quote="man 4x keyboard"]
Option "AutoRepeat" "delay rate"
sets the auto repeat behaviour for the keyboard. This is not implemented on all platforms. delay is the
time in milliseconds before a key starts repeating. rate is the number of times a key repeats per second.
Default: "500 30".
[/option]
Опыт растет прямо пропорционально выведенному из строя оборудованию

hagen
Заглянувший
Сообщения: 5
Зарегистрирован: 12 май 2006, 09:01

Сообщение hagen »

смена AutoRepeat не помогает(ставил delay=1000 чтобы точно не было повтора).

У меня возник ещё один вопрос по этой теме - можно ли писать в клавиатуру(на уровне пользователя), это надо для переключения моей нестандартной клавиатуры в другой режим работы.

Ответить