Use your Mac keyboard on an Android tablet, as if the tablet were a second screen sitting right below your Mac.
The mouse never leaves the Mac. You touch the tablet directly, and the Mac keyboard follows you there. Free, open source, no account, no cloud: the Mac and the tablet talk to each other over Bluetooth LE.
- ⌘Tab switcher for both devices. One switcher lists your Mac apps and your tablet apps. Pick a tablet app and it launches there and your Mac keyboard is routed to the tablet. Pick a Mac app and the keyboard comes back.
- Touch the tablet, the keyboard follows. Tapping the tablet routes the Mac keyboard to it automatically. A click on the Mac (or ⌘Tab) brings it back.
- Send files. Finder → Open With › LowerDeck, a drop zone, or the menu bar item.
- Shared clipboard, both directions.
- ⌘Q / ⌘W close the app on the tablet.
- USB file transfer through ADB.
| Mac | Apple silicon, macOS 13+. Needs the Accessibility and Bluetooth permissions. |
| Tablet | Android 7+ (API 24+) with Bluetooth LE. Developed and tested on an Amazon Fire (Fire OS, Android 11 based). Other devices are untested. |
- Download
LowerDeck-2.2-mac.zipandLowerDeck-2.2.apkfrom the latest release. - Mac: unzip, drag
LowerDeck.appto/Applications. The app is ad-hoc signed (no Apple developer account), so the first time use right-click → Open. Grant Accessibility and Bluetooth when asked. - Tablet: install the APK (
adb install LowerDeck-2.2.apkor open it on the tablet), then enable the LowerDeck accessibility service in Settings → Accessibility. - Grant the extra permissions once over ADB (they can't be granted from the tablet UI):
adb shell pm grant com.pbw.lowerdeck android.permission.WRITE_SECURE_SETTINGS adb shell pm grant com.pbw.lowerdeck android.permission.DUMP adb shell appops set com.pbw.lowerdeck GET_USAGE_STATS allow - Open LowerDeck on both devices and pair them: both show the same 6-digit code, tap Allow on the tablet. After that they reconnect on their own.
- It only works with a Mac you approved with the pairing code.
- Nothing leaves your devices: no servers, no analytics, no accounts.
- The accessibility service is used to inject text and touches that come from your paired Mac, and to read which app is in the foreground for the switcher.
# Mac (Command Line Tools only)
cd mac && ./build.sh # → mac/dist/LowerDeck.app (./build.sh install copies it to /Applications)
# Android (no Gradle; needs JDK, Android SDK build-tools 35 and platform 33)
cd android && ./build.sh 22 2.2 # → android/LowerDeck.apkandroid/build.sh creates its own release.keystore on the first run. Keep that file private: updates of your own builds must be signed with the same key. It is ignored by git.
GPL-3.0 © PbW Code Engine.