--- daemons/lircd.c.old 2009-12-30 14:37:13.000000000 -0600 +++ daemons/lircd.c 2009-12-30 14:39:42.000000000 -0600 @@ -1909,6 +1909,17 @@ logprintf(LOG_ERR, "writing to uinput failed"); logperror(LOG_ERR, NULL); } + + /* Need to write sync event */ + memset(&event, 0, sizeof(event)); + event.type = EV_SYN; + event.code = SYN_REPORT; + event.value = 0; + if(write(uinputfd, &event, sizeof(event)) != sizeof(event)) + { + logprintf(LOG_ERR, "writing EV_SYN to uinput failed"); + logperror(LOG_ERR, NULL); + } } } #endif