I choose that name because Wacom + Off = WacOff (Sheikh Assim Al Hakeem don't call me)
WacOff is a Free and Open Source CLI app designed to pass through the Samsung Galaxy Note 9's S-Pen to your Linux machine using the network and show up as a drawing tablet.... and turns your Note 9 into a Wacom without you needing to work at McDonald's again (don't gotta put the fries in the bag)
-
Debian/Ubuntu/Ubuntu-based:
sudo apt install gcc-aarch64-linux-gnu gcc-aarch64-linux-gnu libc6-dev-arm64-cross linux-headers-$(uname -r)-arm64-cross gcc make git xf86-input-wacom android-tools-adb -
Fedora/Fedora-based:
sudo dnf install @development-tools gcc-aarch64-linux-gnu binutils-aarch64-linux-gnu glibc-aarch64-linux-gnu glibc-devel-aarch64-linux-gnu linux-headers gcc make git xorg-x11-drv-wacom android-tools -
Arch/Arch-based:
sudo pacman -S --noconfirm aarch64-linux-gnu-gcc aarch64-linux-gnu-binutils aarch64-linux-gnu-glibc aarch64-linux-gnu-linux-api-headers gcc make git xf86-input-wacom android-tools
¯_(ツ)_/¯
Make sure you have Developer Mode enabled and USB Debugging enabled before you actually use this and your little brother didn't break the S-Pen
Open src/config.h in your favorite text editor and comment out (using "//" at the start of the line) any line that doesn't look similar to the model of your Galaxy Note 9
Compile WacOff by running this command
make allTo run WacOff firstly you will need to run the server as root on your PC using this command (you need to have the uinput module loaded)
sudo ./serverIn this stage you will need to put the client in an app's data folder (in /data/data/) in the guide I will use com.android.shell (you can change it to your heart's liking) because that's the most standard and exists in almost every Android install
Run this command on your PC to put the client on your phone
adb push build/client /data/data/com.android.shell/wacoff_clientIf your Galaxy Note 9 told you to allow a debugger, just allow it so you can get a shell
If you want to test with a different Note 9 model other than the SM-N960F put this file too
adb push build/client_info /data/data/com.android.shell/wacoff_client_infoTo get a shell on your Note 9 just run this command
adb shellRun this command on your Galaxy Note 9's shell
/data/data/com.android.shell/wacoff_clientIt will ask you for the server's (Your PC) IP just enter it and yippy you have a drawing tablet
If you want to test with the Note 9 and see how it behaves and make an issue and give me the output of the command and the model of your Note 9 in the issue
Run this command while you are in a shell on your Note 9
/data/data/com.android.shell/wacoff_client_infoIf you want to use the tablet as a landscape tablet (instead of a portrait one) you can just run this command on your PC after the Note 9 is connected
xsetwacom set "Note9 S-Pen Tablet stylus" Rotate cw- Full X, Y and hover work as expected
- Pressure-sensitivity works
- Works as a standard Linux compatible drawing tablet
- 280Hz works perfectly (lags sometimes if your link is bad)
- The button on the S-Pen works
- SM-N960F (This is my Note 9's model, others might work tho let me know if one did)
The server and client both use port 5000 to communicate with each other so on your firewall you will have to open port 5000
This project is licensed under the GNU GPL-3.0 license.
For support or questions, please contact me at ahmed.retroflexos.dev@protonmail.com