USB HID Mouse¶
Overview¶
The USB HID Mouse sample demonstrates the use of a USB Human Interface Device (HID) driver by the Zephyr project. This very simple driver enumerates a board with a button into a mouse that has a left mouse button and optionally (depending on the number of buttons on the board) a right mouse button, X-axis movement, and Y-axis movement. If the USB peripheral driver supports remote wakeup feature, wakeup request will be performed on every button click if the bus is in suspended state.
Requirements¶
Before you start, check that you have the required hardware and software:
- 1x iMX RT1011 Nano Kit
- 1x USB-C Cable
- A computer running macOS, Linux, or Windows 7 or newer
Building the sample¶
Before you start building, remember to set up the environment first.
Use the following steps to build the USB HID Mouse sample on the command line.
-
Open a terminal window.
-
Go to
zephyrproject/imxrt1011-nanokit
directory created in the Setting up the environment section. -
Build the sample using the
west build
command, specifying the board (following the-b
option) asimxrt1011_nanokit
. To build the sample when working without the UF2 Bootloader, specify-DEXTRA_CONF_FILE=overlay-nouf2.conf
.Tip
The
-p always
option forces a pristine build, and is recommended for new users. Users may also use the-p auto
option, which will use heuristics to determine if a pristine build is required, such as when building another sample. -
After running the
west build
command, the build files can be found inbuild/zephyr
.
Flashing the firmware¶
The sample works with/without the UF2 Bootloader. The firmware can be found in build/zephyr
.
To flash the firmware, complete the following steps:
- Plug your board into the USB port of your computer.
- Double-click the RST button to enter UF2 Bootloader mode.
- The board will mount as a Mass Storage Device called UF2BOOT and the Red LED blinks slow.
- Drag and drop
build/zephyr/zephyr.uf2
onto the UF2BOOT volume. The RGB LED blinks red fast during flashing. - Press RST button on the board and the sample will start running.
- Push and hold the USR/BT button and plug your board into the USB port of your computer.
- Follow Generating bootable image section to convert
build/zephyr/zephyr.hex
into a bootable image. - Follow Writing the bootable image section to flash the firmware.
- Press the RST button on the board and the sample will start running.
Testing¶
After flashing the firmware to your board, complete the following steps to test it:
- Connect iMX RT1011 Nano Kit to your computer using the USB-C Cable.
- The board will be detected as a HID mouse named Zephyr HID Mouse.
- Press the USR/BT button on the board. Observe that a left mouse click is activated and the Red LED blinks.
-
Open up a serial terminal, specifying the correct serial port that your computer uses to communicate with the board:
-
Observe the output of the terminal. You should see the output, similar to what is shown in the following: