LINUX.ORG.RU

Сообщения Robotex

 

Отправка собственных событий в /dev/uinput. Эмуляция геймпада.

Форум — Development

Пытаюсь сэмулировать геймпад, отправляя собственные события в uinput. Клавиатура эмулируется отлично, а вот с геймпадом отчего-то беда. Его события не регистрируются. Что не так? Вот код: http://pastebin.com/NqA3jKJ3

Собственно, открываю файл:

    fd = open("/dev/uinput", O_WRONLY | O_NONBLOCK);
        if(fd < 0)
            die("error: open");

Разрешаю конкретные события:

    if(ioctl(fd, UI_SET_KEYBIT, BTN_A) < 0)
        die("error: ioctl");
     
    if(ioctl(fd, UI_SET_EVBIT, EV_SYN) < 0)
        die("error: ioctl");

Регистрирую устройство:

    memset(&uidev, 0, sizeof(uidev));
        snprintf(uidev.name, UINPUT_MAX_NAME_SIZE, "uinput-sample");
        uidev.id.bustype = BUS_USB;
        uidev.id.vendor  = 0x1;
        uidev.id.product = 0x1;
        uidev.id.version = 1;
    
        if(write(fd, &uidev, sizeof(uidev)) < 0)
            die("error: write");

И отправляю события:

    memset(&ev, 0, sizeof(struct input_event));
                ev.type = EV_KEY;
                ev.code = BTN_A;
                ev.value = 1;
                if(write(fd, &ev, sizeof(struct input_event)) < 0)
                    die("error: write");
    
                memset(&ev, 0, sizeof(struct input_event));
                ev.type = EV_SYN;
                ev.code = 0;
                ev.value = 0;
                if(write(fd, &ev, sizeof(struct input_event)) < 0)
                    die("error: write");

Что не так?

 , ,

Robotex
()

Debian VS Arch

Форум — General

Решил сменить привычную Ubuntu на что-то, что можно установить с минимального набора, а затем наращивать под свои нужды. Вот не могу выбрать между дебианом и арчем.

Какие есть плюсы и минусы обеих систем?

Robotex
()

Управление Linux-компьютером с помощью КПК с Windows Mobile

Форум — Desktop

Когда-то travise писал, что создал программку реализующую это действите по bluetooth. Можно где нибудь достать ее или аналог?

Robotex
()

RSS подписка на новые темы