Effective: 8 August 2026 · Applies to: app versions 1.0.3 and later
This replaces the version dated 8 July 2026. It corrects one statement that was
wrong (the Bluetooth address of the PC you connect to is stored on your
device, so that the app can reconnect to it) and adds three things the previous
version did not mention: the notification permission, the link-keeper
notification, and the optional desk background image.
Magnus Brühl (magfish)
Wilhelm-Elfes-Straße 46
41065 Mönchengladbach, Germany
contact@magfish.de · +49 1522 6959868 · https://magfish.de
VAT identification number pursuant to § 27a UStG: DE360704718
magfish is the distributor of the app, the controller within the meaning of the
GDPR, the personal information handling business operator for the purposes of
Japan's APPI, and the contact point for privacy enquiries under Korea's PIPA.
HOTAS Controller turns your Android device into a Bluetooth joystick for your
PC. It runs entirely offline. It does not request the Android internet
permission, so the app is technically unable to send anything anywhere. There
is no account, no advertising, no analytics, no tracking, and no profiling.
Everything the app keeps, it keeps on your device, and all of it is removed
when you uninstall the app.
Your desks. Control layouts — positions, sizes, rotation, labels,
engravings, tuning, HID slot assignments — plus the desk's name and any notes
you typed into it. Stored in the app's private storage.
App settings. Screen orientation, brightness, haptics, editor grid,
play-mode safety options, Bluetooth device name, and whether you have seen the
first-run tour.
The Bluetooth address of the PC you last connected to. This is stored so
the app can reconnect to that PC by itself the next time you start it, instead
of making you pick it out of a list every session. It is a device identifier,
so it is treated differently from everything else:
If you switch Auto-reconnect off in the Bluetooth settings, the address is
still recorded but is not used to connect.
Nothing else. No name, e-mail address, contacts, calendar, photos, files,
location, advertising identifier, or any other identifier is collected.
| Permission | Why it is needed |
|---|---|
Nearby devices (BLUETOOTH_CONNECT, BLUETOOTH_ADVERTISE, Android 12+) |
To present this device to your PC as a HID joystick, to make it discoverable while you pair, and to list PCs you have already paired so you can pick one. |
| Bluetooth / Bluetooth Admin (Android 11 and older) | The same thing, under the older permission model. |
Notifications (POST_NOTIFICATIONS, Android 13+) |
Only to show the link-keeper notice described below. Declining it does not disable anything else; the link keeper still runs, you just do not see it. |
Foreground service (FOREGROUND_SERVICE, FOREGROUND_SERVICE_CONNECTED_DEVICE) |
To keep the Bluetooth link alive while the app is not in the foreground, so the controller does not drop when you switch away mid-flight. |
The app requests no location permission and does not scan for Bluetooth
devices. Bluetooth is never used to determine your location.
While the link keeper is running it shows an ongoing notification that says
whether the link is up and, when it is, the name of the connected PC. That
notification is drawn on your device only. You can stop the link keeper from
the notification itself, or switch it off in the app's Bluetooth settings.
Paired device names and addresses are read from the Android Bluetooth system so
the connect list can show them. Apart from the last-connected address described
in section 3, they are held in memory only.
You can put one of your own images behind a desk. When you pick one, Android
gives the app permission to read that single file, and the app keeps that
permission so the image is still there the next time you open the desk. The app
stores only the reference Android gave it — it does not copy, read the contents
of, upload, or otherwise process your photo library.
Remove the background from the desk to drop the reference, or revoke the app's
access from Android's own settings.
Desk files (.hotasdesk) and desk packs (.hotaspack) are created only when
you ask for one, and go where you send them. They contain layout data and the
free text you typed: desk names, control labels, engravings and desk notes.
Files staged for the share sheet are held in the app's cache and cleared the
next time you start the app. Importing a file reads it on your device; nothing
is uploaded.
No account or sign-in. No advertising, and no advertising identifier. No
analytics, telemetry, crash reporting SDK, tracking, or fingerprinting. No
profiling and no automated decision-making within the meaning of Article 22
GDPR. No special-category data within the meaning of Article 9 GDPR. No sale of
personal information and no sharing of it for cross-context behavioural
advertising within the meaning of US state privacy laws — there is nothing
collected to sell or share. No international transfer, because nothing is
transferred at all.
Google Play processes every payment. Your card details are never received by
the distributor.
The distributor receives the order record Google provides — order number,
product, date, price, currency, and the tax-relevant data (country or region,
and postal code where applicable). Payment card details are not part of it.
This data is processed to fulfil the contract and to meet legal obligations
(Article 6(1)(b) and (c) GDPR) and is retained for as long as German commercial
and tax law requires — up to ten years under § 257 HGB and § 147 AO — after
which it is deleted. Order records may be shown to our tax advisor and to the
tax authorities where legally required.
Google also provides the distributor with aggregated, non-identifying
statistics such as install counts and crash and ANR rates through Android
Vitals. Whether your device contributes to those is governed by your Android
and Google account settings, not by this app.
If you have Android backup switched on, Android may include this app's desks
and settings in the encrypted backup of your device to your own Google account.
The app deliberately excludes the last-connected PC's Bluetooth address and its
rolling desk backups from that. Any backup that is made is between you and
Google under Google's privacy policy; the distributor has no access to it. You
can exclude the app or turn backups off in Android's own settings.
No personal data is shared with third parties, except that order records may be
shown to our tax advisor and to the tax authorities where legally required.
Google processes payment and distribution data under its own responsibility;
where that involves transfers to the USA, Google relies on the EU–US Data
Privacy Framework and on standard contractual clauses.
Wherever you live, you can ask for access to your data, a copy of it,
rectification, erasure, restriction of processing, portability, or object to
processing — free of charge — using the contact details in section 1. Under the
GDPR these are Articles 15, 16, 17, 18, 20 and 21.
Because the app collects nothing, there is usually nothing to hand over, and
you will get that answer in writing. Data held on your device is yours to
delete: use Settings ? Reset app, or uninstall the app. Order records covered
by statutory retention periods cannot be deleted before those periods expire.
Users in the EU/EEA and the UK may also lodge a complaint with a supervisory
authority under Article 77 GDPR. The competent authority here is:
Landesbeauftragte für Datenschutz und Informationsfreiheit Nordrhein-Westfalen
Kavalleriestraße 2–4, 40213 Düsseldorf, Germany — www.ldi.nrw.de
The app is a general-purpose utility, is not directed at children, and collects
no data from anyone, at any age.
If a future version of the app changes how data is handled, this policy is
updated and its effective date raised before that version ships. The current
version is published at https://magfish.de/hotas/privacy.html and is reachable
in the app under ? ? Privacy at a glance ? Full policy.