diff --git a/input/drivers_keyboard/keyboard_event_udev.c b/input/drivers_keyboard/keyboard_event_udev.c
index 9b473dd99b..d1c36d4513 100644
--- a/input/drivers_keyboard/keyboard_event_udev.c
+++ b/input/drivers_keyboard/keyboard_event_udev.c
@@ -14,11 +14,11 @@
  */
 
 #include "../input_keymaps.h"
+#include "../input_keyboard.h"
 #include "../../driver.h"
 
 #include "keyboard_event_udev.h"
 
-
 #define UDEV_MAX_KEYS (KEY_MAX + 7) / 8
 
 static uint8_t udev_key_state[UDEV_MAX_KEYS];
@@ -42,6 +42,10 @@ void udev_handle_keyboard(void *data,
 
 #ifdef HAVE_XKBCOMMON
          handle_xkb(event->code, event->value);
+#else
+         input_keyboard_event(event->value,
+               input_keymaps_translate_keysym_to_rk(event->code),
+               0, 0, RETRO_DEVICE_KEYBOARD);
 #endif
          break;