Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Idea: Best features of Teleport for Universal Control #120

Open
marcpbailey opened this issue Mar 18, 2022 · 2 comments
Open

Idea: Best features of Teleport for Universal Control #120

marcpbailey opened this issue Mar 18, 2022 · 2 comments

Comments

@marcpbailey
Copy link

MacOS Monterey 12.3 just shipped and with it Universal Control finally reached the public.
Of course, anybody that uses Teleport will be interested in Universal Control, but surprisingly it doesn't actually get Sherlocked after all. Here's why:

  1. Teleport runs on older hardware and software, and allows mix and match. UC requires modern hardware and Monterey. Even with OpenCore Legacy Patcher (which no IT department will ever be willing to run) opening up Monterey to many old machines, down level MacOS compatibility remains impossible.

  2. Teleport works perfectly with third party device drivers. UC doesn't play nice with third party USB HID device drivers. Most notably Logitech's Logi Options Daemon. If it is running, it steals all but the basic left, right and drag mouse events, and these are not transmitted to the slave Mac. This is particularly bad because all fancy Logitech mice are effectively neutered and, worse, behave differently on the slave. Not even the main scroll wheel works, let alone the secondary scroll wheel, gestures, and four additional buttons. Logitech should fix this, but probably won't because they make Flow, their version of software KVM.

  3. If you connect to multiple monitors, UC is irritating because it doesn't remember spatial arrangement on a per display basis, just the last display you connected. This is especially annoying with a hardware KVM. Teleport does this better, although doesn't respond well to dynamic monitor changes (see below).

  4. Teleport doesn't have any cloud dependency. UC requires all computers to be logged in as the same AppleID; problematic for many scenarios including support, test bench, virtual machines and so on.

  5. Teleport offers modifier key constraints, key binding, and conditional drag and drop/clipboard, although finder copying capability has languished and become buggy these days. Switching options don't exist in UC, but the implementation is smooth and invisible.

  6. Teleport syncs sleep and lock status. UC doesn't.

Bottom line: I still love Teleport. Since I can't operate with a crippled Logitech MX mouse I've turned UC back off in 12.3!!

Still, there are many things UC does really elegantly, especially:

a. Network handshaking is invisible, encrypted, and flawless. Extremely simple to setup, and extremely robust when changing network interface configurations (wifi on/off, wired/unwired etc). Teleport can encrypt, but it's a strange and unfamiliar thing to configure, and remains buggy and problematic to troubleshoot.

b. The UC UI for connecting, the "push through bubble" metaphor, and the control panel and system preferences for connecting/disconnecting are logical and integrated with Displays. Impossible for Teleport to compete with this, even though its UI is arguably better than SynergyKVM, Logitech Flow, or any other implementation in the Windows world.

c. UC Monitor changes are reciprocal, and recover when plugging/unplugging external displays, changing resolutions, or AirPlay mirroring/extension. Both sides recognise and reconfigure automatically. With the exception of spatial arrangement (only the origin xy coordinates of only the most recent display are remembered) this means you're never left in a non-working state. Teleport doesn't handle these situations well at all, and frequently results in a buggy spatial arrangement that precludes switching.

Interestingly, for different reasons, the largest operational limitation is common to both UC and Teleport. Namely, they run in user context, so do not work on the login screen, meaning you always have to have another keyboard/mouse (or screen sharing) mechanism to sign in before UC or Teleport starts working. UC will likely never solve this because of the AppleID/iCloud requirement, but Teleport could potentially be modified to run in the loginwindow context, similar to a network driver.

Teleport could borrow many of the innovations from UC to actually become better than either product is today, but it's clear that Teleport's best days are behind us, regrettably. Apple will improve UC over time and it has the massive advantages of ubiquitous marketing, distribution, simplicity and customer awareness. Oh, and funding!

So, here's an idea: Take Teleport, strip it down, and resurrect its best features on top of UC. We'd end up with something useful like MonitorControl, NightOwl, WebcamSettings etc, while ditching the burden of maintaining the low level network code. The candidate featureset might include:

  • UC HID device driver tunnelling, capturing events on the master and transmitting them to the slave.
  • UC Switching interdiction, allowing overlay of the modifier key constraints, key binding, and conditional drag and drop for UC.
  • Spatial origin coordinate memory per display
  • Sleep/lock status tunnelling.

Of course, I haven't looked at technical feasibility of this, but thought it worth posting here as there's no other forum to stimulate teleport discussion. I remain grateful to @johndbritton and other contributors for keeping Teleport alive.

@johndbritton
Copy link
Owner

@marcpbailey thanks for posting this.

I have been meaning to write something about UC.

Originally, I thought it would be the end of Teleport but I heard from users like you and believe there is still a place for Teleport.

Your list of reasons why Teleport should continue is more exhaustive than mine.

My plan is to continue maintaining Teleport to keep it operable. I still don't plan to add any new features but I will review PRs for new features and merge things that don't negatively impact what our current users expect.

Since I'm on all new hardware and always run the latest macOS I have moved on to use Universal Control and I won't be using Teleport anymore.

@X25guru
Copy link

X25guru commented Dec 16, 2023

UC basically doesnt work in Sonoma. I can share displays but it doesnt even give me an option to share keyboards. It was clunky in Monterey.

II've had my 2 systems connected via ethernet which has been great; but I recently connected them via thunderbolt 2 (older systems) and its much better, particularly when dragging large files. A dedicated 4.5Gb/s (real throughput) is completely seamless. It would be great if someday we could spcify a target IP as currently is will sometimes connect via Wifi as I can't tell it what connection to use. It doesnt seem that many others use the direct connect method but it really is the way to go if you're using wifi.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants