# PS Controller Donation - Linux Your hardware controller is not in the PS plug-ins yet? Send us its factory mapping. It takes about three minutes and nothing is sent without your click. There is nothing to install: download one file, start it. ## Download and start 1. Download `ps-controller-spende-1.0.0-linux-x86_64` (PC, Intel/AMD) or `ps-controller-spende-1.0.0-linux-arm64` (Raspberry Pi 4/5 with a 64-bit system, Asahi, other ARM64 PCs); one file, about 6 MB. Optional: check it against `SHA256SUMS` (`sha256sum -c SHA256SUMS`). 2. Allow it to run once: in the file manager open the file's properties and tick *Allow executing file as program* (permissions tab), or in a terminal `chmod +x ps-controller-spende-1.0.0-linux-x86_64`. 3. Double-click it (or run `./ps-controller-spende-1.0.0-linux-x86_64`). If your file manager asks, choose *Run*. 4. Reset the controller to its factory state (or note which preset it uses), connect it by USB and close your DAW before you start. Honest notes: the file is not signed (Linux has no such prompt, nothing to click away). It needs a graphical desktop (X11 or XWayland) and a glibc of version 2.31 or newer (Ubuntu 20.04, Debian 11, Linux Mint 20, Fedora 32, openSUSE Leap 15.3, Arch and newer); older systems say "version `GLIBC_2.xx' not found" - write to apps@petit-souris.de then. MIDI devices are read through ALSA (`libasound.so.2`, present on practically every desktop); without it the device list stays empty. The list shows ALSA sequencer ports, `aconnect -i` shows the same. The mail link is opened with `xdg-open`; if nothing happens, set a default mail program in your desktop settings or use *Save file*. If a device cannot be opened, another program may hold it: close the DAW and try again. The window starts at 100 % size on the monitor where the mouse is and never larger than that monitor's usable area; a larger scale is used only when the system announces one (`GDK_SCALE`, `Xft.dpi`). `Ctrl +` / `Ctrl -` zoom. The language follows `LC_ALL`, `LC_MESSAGES`, `LANG`, `LANGUAGE` (24 languages, window title included). ### Which systems run it The file is built on a Debian 11 base (glibc 2.31), the C++ runtime and the X11 libraries are inside, only glibc is needed (checked: no symbol newer than `GLIBC_2.29`). "Tested" means started and checked here; "expected" means by the symbol check only (no container could be started on the build machine). | System | File | Runs | |---|---|---| | Ubuntu 24.04 (build machine, real X11, 3-monitor simulation, German locale) | x86_64 | yes (tested) | | Raspberry Pi OS / Debian ARM64 class (glibc 2.31+), under qemu-user with a Debian 11 ARM64 system | arm64 | yes (tested, emulated; not on real ARM hardware) | | Ubuntu 20.04 / 22.04, Debian 11 / 12 / 13, Linux Mint 20+ | x86_64 | expected yes (glibc 2.31+) | | Fedora 32+, openSUSE Leap 15.3+ / Tumbleweed, Arch / Manjaro | x86_64 | expected yes | | RHEL / Rocky / Alma 9 (glibc 2.34) | x86_64 | expected yes; version 8 (glibc 2.28): no | | Ubuntu 18.04, Debian 10, CentOS 7 (glibc 2.27 and older) | - | no | | Alpine, Void-musl, other musl systems | - | no: the file is linked against glibc; musl has a different C library. Use a glibc container or ask for a musl build. | | 32-bit systems | - | no (64-bit only) | ## What the program does Station 1 *Device*: pick your controller in the list (press *Refresh list* if it is missing), check the device name, type the firmware version if you know it, read the privacy text and tick the agreement. Press *Start*. Station 2 *Capture*: follow the five steps (knobs, faders, pads, buttons, wheels and pedals). Move each control once, one after another, always in the same order. Turn each knob and move each fader briefly back and forth: it is counted as soon as its first value arrives. If nothing happens after about 3 seconds, the control is probably at its end stop (a knob already at 0 or 127 sends nothing further in that direction) - turn it the other way. Set the number the device has with `-` / `+`. *Skip this step* if the device has none, *Do this step again* if you slipped. Station 3 *Send*: read the text. Press **Send by e-mail**: your mail program opens with the text filled in; press send there. Mail address: data@psorvia.io. No mail program (or it did not open)? Press **Save file**: the program writes `ps-controller-spende--.json` and `.txt` into your Documents folder (or your home folder). Attach the `.json` file to a mail to data@psorvia.io. What is in the mail: device name, the firmware and mode you typed, system name (Linux), program version, date, the MIDI numbers of the controls you moved. Nothing else. The program sends nothing by itself.