# 360controller/360controller

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/360controller-360controller).**

6,724 stars · 525 forks · C++ · GPL-2.0

## Links

- GitHub: https://github.com/360Controller/360Controller
- awesome-repositories: https://awesome-repositories.com/repository/360controller-360controller.md

## Description

360Controller is a macOS system extension and driver that enables wired Xbox 360, Xbox One, and original Xbox controllers to function as standard gamepad inputs. It maps hardware identifiers to system inputs to provide compatibility for these specific game controllers on macOS.

The driver includes support for haptic force feedback and the management of integrated LED indicators on compatible hardware. It also provides a mechanism for third-party gamepad integration, allowing users to manually register unsupported controllers by specifying vendor and product identifiers.

The project encompasses hardware administration tools, including a system preference interface for adjusting device behavior and verifying driver installation. It handles low-level tasks such as USB device descriptor parsing and HID report mapping to translate raw hardware packets into system events.

## Tags

### Operating Systems & Systems Programming

- [Gamepad Hardware Drivers](https://awesome-repositories.com/f/operating-systems-systems-programming/gamepad-hardware-drivers.md) — Provides essential driver support to make wired Xbox controllers functional on macOS.
- [Gamepad Driver Managers](https://awesome-repositories.com/f/operating-systems-systems-programming/kernel-driver-control-utilities/gamepad-driver-managers.md) — Enables support for wired Xbox 360 and Xbox One controllers via a dedicated macOS driver.
- [Kernel Hardware Interfaces](https://awesome-repositories.com/f/operating-systems-systems-programming/kernel-hardware-interfaces.md) — Provides a privileged kernel interface for direct communication with USB game controller hardware.
- [macOS Gamepad Drivers](https://awesome-repositories.com/f/operating-systems-systems-programming/macos-gamepad-drivers.md) — Provides a macOS system extension that maps Xbox hardware identifiers to standard gamepad inputs.
- [Hardware Drivers](https://awesome-repositories.com/f/operating-systems-systems-programming/hardware-interfacing-drivers/hardware-drivers.md) — Implements the low-level software required to communicate with and control Xbox gamepad peripherals. ([source](https://github.com/360controller/360controller#readme))
- [Kernel-to-User Bridges](https://awesome-repositories.com/f/operating-systems-systems-programming/kernel-to-user-bridges.md) — Bridges a user-space preference pane to the kernel driver for hardware setting adjustments.

### Part of an Awesome List

- [Hardware ID Resolvers](https://awesome-repositories.com/f/awesome-lists/devtools/device-and-hardware-identification/hardware-id-resolvers.md) — Matches connected USB devices against a registry of vendor and product IDs to apply correct driver logic.
- [Gamepad Support](https://awesome-repositories.com/f/awesome-lists/more/hardware-and-system-control/macos-hardware-controllers/gamepad-support.md) — Ensures Xbox 360 controllers are recognized and functional as standard inputs on macOS. ([source](https://github.com/360Controller/360Controller/wiki/Games))
- [Gamepad Haptics](https://awesome-repositories.com/f/awesome-lists/devtools/input-and-controllers/gamepad-haptics.md) — Manages force feedback vibrations and LED indicators to enhance the immersive gaming experience.

### Hardware & IoT

- [USB Device Descriptors](https://awesome-repositories.com/f/hardware-iot/connectivity-iot/internet-of-things/device-management/usb-device-enumerators/usb-interface-configuration/usb-device-descriptors.md) — Parses USB device descriptors to identify compatible hardware and support third-party controller clones.
- [Hardware Controller Mappings](https://awesome-repositories.com/f/hardware-iot/hardware-controller-interfaces/hardware-controller-mappings.md) — Maps wired Xbox 360, Xbox One, and original Xbox controllers to standard macOS gamepad inputs. ([source](https://github.com/360controller/360controller#readme))
- [USB HID Input Managers](https://awesome-repositories.com/f/hardware-iot/usb-hid-input-managers.md) — Translates raw USB HID reports from controllers into standardized system input events.
- [Controller Haptic and LED Configurations](https://awesome-repositories.com/f/hardware-iot/controller-haptic-and-led-configurations.md) — Controls tactile haptic feedback and visual LED indicators on compatible gamepad hardware. ([source](https://github.com/360controller/360controller#readme))
- [Controller Hardware Configuration Tools](https://awesome-repositories.com/f/hardware-iot/controller-hardware-configuration-tools.md) — Provides a system interface for tuning gamepad hardware behavior and verifying driver installation.
- [Third-Party Hardware Integration](https://awesome-repositories.com/f/hardware-iot/third-party-hardware-integration.md) — Enables the registration of unsupported controllers by manually specifying vendor and product identifiers.

### User Interface & Experience

- [Haptic Feedback Controllers](https://awesome-repositories.com/f/user-interface-experience/haptic-feedback-controllers.md) — Acts as a driver interface for triggering tactile responses and vibration on Xbox controllers.
