- Joined
- Jan 19, 2023
- Messages
- 10
- Reaction score
- 21
- Trophies
- 0
- Age
- 22
- Website
- github.com
- XP
- 184
- Country

This is a lightweight client for the KDE Connect protocol written from scratch for the Switch and implemented as a Sysmodule and an Ultrahand overlay. I originally started this project just to mirror notifications from my Android phone, but it supports a large subset of the protocol's features at this point (the ones that make sense for a game console at least).
KDE Connect allows devices in the same local network to talk to each other and provides features such as sharing files, syncing phone notifications, remotely executing commands, controlling music, etc. It originated from KDE (a Linux desktop environment) with the goal of integrating Android phones into KDE desktops, but now also has official clients for Windows, macOS and iOS (though the iOS version is heavily restricted by Apple and the macOS version doesn't have a stable release yet): https://kdeconnect.kde.org/download.html
The protocol is peer-to-peer and completely contained within your local network, so no data gets proxied through shady third-party servers.
Also, it uses TLS encryption (after the initial pairing step), so sensitive things like notification contents are not exposed in the local network traffic either.
Important: Only Ultrahand (Tesla's successor) is supported! Tesla does not support displaying notifications.
Downloads, instructions and source code are available on GitHub: https://github.com/timschneeb/kdeconnect-nx
It also supports remote keyboard input by simulating a virtual USB keyboard, though the remote mouse/touchscreen support is missing. This might be useful for games like Tomodachi Life that ask for a lot of keyboard input, so you could just pick up your phone and type much faster.
Here's a list of all supported KDE Connect plugins:
From your phone, tablet, PC to your Switch:
The sysmodule that handles all of the networking, TLS encryption, and plugins consumes 2.7MB of memory in total. Since the available memory space in the system pool keeps getting smaller with each system update, I've tried to keep it as small as possible while still leaving 0.5-1MB of breathing room in the heap.
KDE Connect allows devices in the same local network to talk to each other and provides features such as sharing files, syncing phone notifications, remotely executing commands, controlling music, etc. It originated from KDE (a Linux desktop environment) with the goal of integrating Android phones into KDE desktops, but now also has official clients for Windows, macOS and iOS (though the iOS version is heavily restricted by Apple and the macOS version doesn't have a stable release yet): https://kdeconnect.kde.org/download.html
The protocol is peer-to-peer and completely contained within your local network, so no data gets proxied through shady third-party servers.
Also, it uses TLS encryption (after the initial pairing step), so sensitive things like notification contents are not exposed in the local network traffic either.
Important: Only Ultrahand (Tesla's successor) is supported! Tesla does not support displaying notifications.
Downloads, instructions and source code are available on GitHub: https://github.com/timschneeb/kdeconnect-nx
It also supports remote keyboard input by simulating a virtual USB keyboard, though the remote mouse/touchscreen support is missing. This might be useful for games like Tomodachi Life that ask for a lot of keyboard input, so you could just pick up your phone and type much faster.
Here's a list of all supported KDE Connect plugins:
From your phone, tablet, PC to your Switch:
- Receive notifications (from Android/PC)
- Remote keyboard
- Inject USB keyboard strokes on the Switch from another device
- (Limitation: A US English USB keyboard is simulated, so only characters present on a US keyboard can be injected.)
- Remote commands
- Control the Switch with some hardcoded commands (power control, send screenshot to PC/phone, etc.)
- Volume control
- Remotely control the master volume level of your Switch
- File transfer
- Send files to your Switch's SD card (just implemented for completeness' sake, for most use-cases sys-ftpd is better)
- Media playback remote controls
- Remote commands (PC only)
- Trigger predefined commands on a connected PC (custom shell commands; requires setup on the PC)
- Audio output control (PC only)
- Remotely choose between audio devices and set the volume level for each one
- Send screenshot
- Take a screenshot and send it to a device
- Ring device
The sysmodule that handles all of the networking, TLS encryption, and plugins consumes 2.7MB of memory in total. Since the available memory space in the system pool keeps getting smaller with each system update, I've tried to keep it as small as possible while still leaving 0.5-1MB of breathing room in the heap.
Last edited by timschneeb,





