joy icon indicating copy to clipboard operation
joy copied to clipboard

Library and tools for working with Nintendo Switch JoyCon/Pro Controller

joy

Suite of tools and libraries for interactions with Nintendo Switch and DualShock 4 controllers.

External dependencies

On Linux, you'll need libusb, libbluetooth and libudev. On Ubuntu, you can install these by running:

sudo apt-get install libusb-1.0-0-dev libbluetooth-dev libudev-dev

Tools

The tools can be run with cargo run --bin <tool>.

  • joytk: main front-facing tool.
  • joy-infrared: visualize the images captured by the infrared camera of the Joycon(R) as a realtime 3D view.

Libraries

  • joycon-sys: decoding and encoding HID reports. Doesn't include any I/O.
  • joycon: implements I/O and communication protocols on top of joycon-sys.
  • dualshock: decoding HID reports from the DS4 controller.
  • hid-gamepad: abstraction above dualshock and joycon.