Você pode usar xinput para remover seu mouse do Virtual core pointer . Dessa forma, o cursor do mouse ("
ponteiro do núcleo ") não será mais controlado por ele, e o protocolo principal não produzirá nenhum evento de mouse.
Você ainda pode receber os eventos do mouse na camada de entrada, como já está fazendo (via /dev/input ). Note que isso não é movimento X, mas uma camada abaixo (antes que evdev ou drivers X semelhantes o processem).
Ou você pode receber eventos de entrada X para o mouse desanexado usando a extensão XINPUT X. Veja xinput --test e xinput --test-xi2 para um exemplo de programa que faz isso.