Home

devhidraw0

/dev/hidraw0 is a character device node that represents the first raw Human Interface Device (HID) interface provided by the Linux kernel. It resides in the /dev directory and is part of the hidraw subsystem, which offers a low‑level, unprocessed communication channel to HID peripherals such as keyboards, mice, game controllers, and specialized input devices. Unlike higher‑level input drivers that interpret and translate HID reports into generic input events, the hidraw interface presents the raw report data exactly as it is transmitted over the USB or Bluetooth bus.

The device node is created automatically by the kernel when a compatible HID device is attached and

Software that requires direct access to HID reports—custom firmware loaders, device configuration utilities, or diagnostic tools—opens

The hidraw subsystem can be disabled at compile time or via kernel configuration options (CONFIG_HIDRAW). When

the
hidraw
driver
is
loaded.
Its
major
number
is
10
and
the
minor
number
is
typically
0
for
the
first
device,
incrementing
for
each
additional
raw
HID
interface
(e.g.,
/dev/hidraw1,
/dev/hidraw2).
Access
permissions
are
governed
by
udev
rules;
by
default
they
are
readable
and
writable
only
by
root,
though
distributions
may
add
rules
to
permit
use
by
specific
user
groups
such
as
“input”.
/dev/hidraw0
with
standard
file
operations
(open,
read,
write,
ioctl).
Data
exchanged
through
the
node
consists
of
binary
report
packets
defined
by
the
device’s
HID
report
descriptor.
Because
the
interface
bypasses
kernel
input
processing,
applications
must
handle
report
parsing,
device-specific
command
structures,
and
error
checking
themselves.
disabled,
the
corresponding
/dev/hidraw*
nodes
are
not
created,
and
only
higher‑level
input
drivers
remain
available.
Use
of
/dev/hidraw0
is
generally
reserved
for
advanced
users
and
developers
who
need
precise
control
over
HID
communication.