Skip to content

Commit 600bf62

Browse files
committed
Initial commit
0 parents  commit 600bf62

20 files changed

+4163
-0
lines changed

.github/FUNDING.yml

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
custom: https://www.paypal.com/donate?hosted_button_id=BWUECKFDNY446

.github/workflows/ci.yml

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Continuous Integration
2+
on: [push, pull_request]
3+
jobs:
4+
build:
5+
# Newer images have CONFIG_SND_PCM disabled
6+
runs-on: ubuntu-16.04
7+
steps:
8+
- name: Install prerequisites
9+
run: sudo apt update && sudo apt install dkms
10+
- name: Checkout
11+
uses: actions/checkout@v2
12+
- name: Install (debug)
13+
run: sudo ./install.sh
14+
- name: Uninstall (debug)
15+
run: sudo ./uninstall.sh
16+
- name: Install (release)
17+
run: sudo ./install.sh --release
18+
- name: Uninstall (release)
19+
run: sudo ./uninstall.sh

.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
internal/*
2+
.vscode/*

Kbuild

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
xone-wired-y := transport/wired.o
2+
xone-gip-bus-y := bus/bus.o bus/protocol.o
3+
xone-gip-common-y := driver/common.o
4+
xone-gip-gamepad-y := driver/gamepad.o
5+
xone-gip-headset-y := driver/headset.o
6+
xone-gip-chatpad-y := driver/chatpad.o
7+
obj-m := xone-wired.o xone-gip-bus.o xone-gip-common.o xone-gip-gamepad.o xone-gip-headset.o xone-gip-chatpad.o

LICENSE

+339
Large diffs are not rendered by default.

README.md

+84
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# xone [![Build Badge](https://img.shields.io/github/workflow/status/medusalix/xone/Continuous%20Integration?logo=github)](https://github.com/medusalix/xone/actions) [![Release Badge](https://img.shields.io/github/v/release/medusalix/xone?logo=github)](https://github.com/medusalix/xone/releases/latest) [![Discord Badge](https://img.shields.io/discord/733964971842732042?label=discord&logo=discord)](https://discord.gg/FDQxwWk) [![Donate Button](https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif)](https://www.paypal.com/donate?hosted_button_id=BWUECKFDNY446)
2+
3+
xone is a Linux kernel driver for Xbox One and Xbox Series X|S accessories. It serves as a modern replacement for `xpad`, aiming to be compatible with Microsoft's *Game Input Protocol* (GIP).
4+
If you are looking for a way to use your controller via Bluetooth, check out [xpadneo](https://github.com/atar-axis/xpadneo).
5+
6+
## Important notes
7+
8+
This driver is still in active development. Use at your own risk!
9+
**Any feedback including bug reports, suggestions or ideas is [*greatly appreciated*](https://discord.gg/FDQxwWk).**
10+
11+
## Features
12+
13+
- [x] Input and force feedback (rumble)
14+
- [x] Battery reporting (`UPower` integration)
15+
- [x] LED brightness control (using `/sys/class/leds`)
16+
- [x] Audio capture/playback (through `ALSA`)
17+
- [x] Power management (suspend/resume)
18+
- [ ] Wireless connectivity (via dongle)
19+
20+
## Supported devices
21+
22+
- [x] Gamepads
23+
- [x] Xbox One Controllers
24+
- [x] Xbox Series X|S Controllers
25+
- [x] Third party controllers (PowerA, PDP, etc.)
26+
- [ ] Headsets
27+
- [x] Xbox One Chat Headset
28+
- [x] Xbox One Stereo Headset (adapter or jack)
29+
- [ ] Xbox Wireless Headset
30+
- [ ] Third party wireless headsets (SteelSeries, Razer, etc.)
31+
- [ ] Racing wheels
32+
- [x] Xbox One Chatpad
33+
- [x] Xbox Adaptive Controller
34+
- [ ] Mad Catz Rock Band 4 Wireless Stratocaster
35+
- [ ] Mad Catz Rock Band 4 Wireless Drum Kit
36+
37+
## Releases
38+
39+
[![Packaging status](https://repology.org/badge/vertical-allrepos/xone.svg)](https://repology.org/project/xone/versions)
40+
41+
Feel free to package xone for any Linux distribution or hardware you like.
42+
Any issues regarding the packaging should be reported to the respective maintainers.
43+
44+
## Installation
45+
46+
### Prerequisites
47+
48+
- Linux (kernel 4.15+ and headers)
49+
- DKMS
50+
51+
Clone the repository:
52+
53+
```
54+
git clone https://github.com/medusalix/xone
55+
```
56+
57+
Install xone using the following command:
58+
59+
```
60+
sudo ./install.sh --release
61+
```
62+
63+
**NOTE:** Please omit the `--release` flag when asked for your debug logs.
64+
65+
### Updating
66+
67+
Make sure to completely uninstall xone before updating:
68+
69+
```
70+
sudo ./uninstall.sh
71+
```
72+
73+
## License
74+
75+
xone is released under the [GNU General Public License, Version 2](LICENSE).
76+
77+
```
78+
Copyright (C) 2021 Severin von Wnuck
79+
80+
This program is free software; you can redistribute it and/or
81+
modify it under the terms of the GNU General Public License
82+
as published by the Free Software Foundation; either version 2
83+
of the License, or (at your option) any later version.
84+
```

0 commit comments

Comments
 (0)