- DeskHop est un projet matériel open source qui permet, lorsque deux ordinateurs partagent un même clavier/souris, de basculer rapidement la cible d’entrée via des raccourcis clavier et le déplacement du pointeur, au lieu d’utiliser un commutateur USB à bouton
- L’appareil agit comme USB Host/Device entre le clavier/la souris et les deux ordinateurs, maintient simultanément les deux connexions, puis transmet les mouvements de souris et les frappes vers la sortie sélectionnée
- La bascule de la souris repose sur la conversion du descripteur de rapport HID en coordonnées absolues et sur l’accumulation interne des déplacements relatifs, afin que le curseur apparaisse à la même hauteur sur l’écran de l’autre ordinateur lorsqu’il franchit le bord de l’écran
- Principales caractéristiques : aucune latence perceptible, aucune installation logicielle, prise en charge de Linux/macOS/Windows, composants à moins de 15 €, boîtier imprimable en 3D, isolation galvanique entre les sorties
- Les limites sont aussi claires : problème de coordonnées absolues en multi-écran sous Windows 10 après KB5003637, contournement expérimental nécessaire pour le multi-écran sur macOS, et compatibilité non garantie avec les claviers avancés, les souris à nombreux boutons et divers périphériques
Un commutateur matériel pour passer rapidement d’un ordinateur à l’autre
- DeskHop est né d’un cas d’usage : utiliser quotidiennement deux ordinateurs tout en partageant un seul clavier/souris
- Le projet vise à résoudre les limites des boîtiers de commutation USB classiques, trop lents au changement et peu pratiques lorsqu’il faut chercher le bouton
- Deux comportements sont recherchés
- basculer la sortie via un raccourci clavier
- basculer automatiquement en faisant glisser le pointeur de la souris d’un moniteur à l’autre
- Il est conçu pour fonctionner entre des ordinateurs utilisant des systèmes d’exploitation différents
- Un User Manual est fourni
Principales fonctionnalités
- Entièrement gratuit et open source, avec une certification Open Source Hardware
- Aucun délai perceptible lors du basculement
- Possibilité de faire glisser le pointeur de la souris d’un ordinateur à l’autre
- Aucune installation de logiciel supplémentaire sur les ordinateurs
- Coût des composants annoncé à moins de 15 €
- Utilise un boîtier encliquetable imprimable en 3D
- Offre une isolation galvanique complète entre les sorties
- Fonctionne sous Linux, macOS et Windows
Fonctionnement
- L’appareil fonctionne comme un intermédiaire entre le clavier/la souris et les ordinateurs
- Il établit et maintient simultanément les connexions avec les deux ordinateurs
- Selon l’état sélectionné, il décide vers quel ordinateur transmettre les mouvements de souris et les frappes clavier
- Le clavier suit la souris, et la souris suit aussi l’état de bascule du clavier
- si la souris est déplacée vers l’autre bureau, la cible des entrées clavier bascule également
Mise en œuvre de la bascule de la souris
- Pour donner l’impression que le curseur passe d’un écran à l’autre, le descripteur de rapport HID est converti en mode coordonnées absolues
- Les rapports réels de la souris restent en déplacements relatifs, qui sont cumulés à l’intérieur de l’appareil afin de suivre la position actuelle
- Lorsqu’on tente de sortir de la zone de l’écran courant en direction de l’autre moniteur, la coordonnée Y est conservée, la coordonnée X est placée sur la bordure opposée, puis la sortie est basculée
- De cette manière, le curseur apparaît à la même hauteur sur l’écran de l’autre ordinateur, ce qui rend la transition naturelle
- Le basculement réel se produit au moment où la flèche d’un côté s’arrête et où celle de l’autre commence à bouger
Bascule clavier et état des LED
- L’appareil fonctionne en USB Host et interroge périodiquement le clavier
- Lorsqu’il détecte dans le rapport HID un raccourci prédéfini, il envoie ensuite les caractères vers l’autre sortie
- exemple d’usage :
Ctrl + Caps Lock
- exemple d’usage :
- Les LED du clavier peuvent être réutilisées pour indiquer quelle sortie est active
- Comme l’état des LED est mémorisé pour chaque ordinateur, il peut être restauré tel quel
Build et mise à jour du firmware
- Pour réduire les problèmes de versions et de chemins, et éviter de gros téléchargements de SDK, un minimum de pico sdk et tinyusb est inclus
- Sous Debian/Ubuntu, il faut installer
build-essential,cmake,gcc-arm-none-eabi,libnewlib-arm-none-eabi,python3 - Le build par défaut s’effectue avec les commandes suivantes
cmake -S . -B buildcmake --build build
- Un build reproductible via Docker est également proposé
docker-compose -f misc/docker.yml run --rm build_container
- Il est aussi possible d’utiliser des pre-built images
- à partir de la version 0.6, une image universelle unique est fournie
- il suffit de copier le fichier
.uf2sur l’appareil
Méthodes de mise à niveau du firmware
- Option 1 : avec le firmware 0.6 ou supérieur, entrer en mode configuration avec
left ctrl + right shift + c + o- l’appareil auquel le clavier est connecté redémarre et apparaît comme un lecteur USB nommé
DESKHOP - en copiant le fichier
.uf2, l’image est validée, flashée puis l’appareil redémarre ; la mise à niveau de l’autre carte suit ensuite - ce lecteur n’est pas un périphérique de stockage USB classique et ne peut pas être utilisé pour copier des fichiers ordinaires
- l’appareil auquel le clavier est connecté redémarre et apparaît comme un lecteur USB nommé
- Option 2 : utiliser le bootloader ROM en branchant chaque Pico tout en maintenant son bouton de carte enfoncé, puis copier le
.uf2sur le lecteur flash qui apparaît - Option 3 : dans un build debug compilé avec
DH_DEBUG_CDC_FLASH=ON, il est possible d’entrer en mode bootloader via une commande série CDCecho -n 'flash' > /dev/tty.usbmodem11104
Fonctions supplémentaires
-
Mouse slowdown
- active/désactive le mode souris lente avec
right CTRL + right ALT - réduit fortement la vitesse du pointeur pour un positionnement précis
- active/désactive le mode souris lente avec
-
Switch Lock
- verrouille sur l’écran actuel avec
RIGHT CTRL + K - évite de passer accidentellement sur l’autre écran
- verrouille sur l’écran actuel avec
-
Lock Both Screens
- permet de verrouiller simultanément les deux ordinateurs avec
RIGHT CTRL + L - nécessite de configurer le système d’exploitation de chaque sortie
- permet de verrouiller simultanément les deux ordinateurs avec
-
Gaming Mode
- active/désactive avec
LEFT CTRL + RIGHT SHIFT + G - verrouille sur l’écran actuel et fait fonctionner la souris comme une souris standard en coordonnées relatives
- ce mode sert pour les jeux, les machines virtuelles ou les systèmes d’exploitation non encore pris en charge qui ne s’accordent pas avec le mode souris absolu
- active/désactive avec
-
Screensaver
- désactivé par défaut
- une fois activé, après une période d’inactivité, le pointeur rebondit sur l’écran comme une balle de Pong
- il se désactive automatiquement dès qu’une entrée est envoyée vers cet écran
Configuration matérielle
- Le schéma est basé sur deux cartes Raspberry Pi Pico
- les Pico ont été choisis parce qu’ils coûtent 4,10 € pièce, se soudent à la main et sont faciles à obtenir
- Les deux Pico sont reliés par UART
- Les deux côtés sont séparés par des isolateurs numériques
- Analog Devices
ADuM1201coûte environ 3 € - TI
ISO7721DRcoûte environ 1,5 €, et il est préféré car moins cher, plus rapide et compatible broche à broche
- Analog Devices
- Le RP2040 ne prend pas en charge nativement le dual USB, mais Pico-PIO-USB permet d’implémenter l’USB via PIO pour assurer à la fois les rôles USB Host et Device
PCB et boîtier
- Pour faciliter la fabrication DIY, les pistes du PCB sont placées sur une seule face et le nombre de composants est minimisé
- En principe, les lignes différentielles USB D+/D- doivent avoir la même longueur, mais le design est volontairement légèrement asymétrique pour compenser la différence de longueur des pistes GPIO sur le PCB du Pico
- L’impédance différentielle visée est de 90Ω ; en pratique, elle atteint environ 107Ω
- L’épaisseur du PCB est conçue à 1,6 mm pour correspondre au boîtier encliquetable
- Le PCB v1.1 ajoute par rapport à la v1.0
- protection ESD
TPD4E1U06DBVR - condensateurs VBUS pour les connecteurs clavier/souris
- indication d’orientation en sérigraphie
- trous et alignement améliorés pour les cartes clones avec headers déjà soudés
- résistances USB 27Ω
- protection ESD
- La v1.1 est un peu plus difficile à souder à la main à cause du petit circuit TVS et des résistances 0805
- Le boîtier est fourni dans case, utilise environ 33 g de filament et peut être imprimé en quelques heures
- Il se fixe sans vis grâce à une structure encliquetable, et le couvercle comporte une fente permettant de l’ouvrir avec un tournevis
Coût et composants
- Le total du BOM du PCB v1.1 est annoncé à 11,22 €
- Les principaux composants sont les suivants
- 2 Raspberry Pi Pico : 8,20 €
- 2 connecteurs USB-A PCB : 0,40 €
- 1 TI ISO7721DR : 1,40 €
- 2 condensateurs 100nF : 0,18 €
- 4 résistances 27Ω : 0,12 €
- 2 TPD4E1U06DBVR : 0,62 €
- 2 condensateurs 4.7uF : 0,14 €
- 2 headers 2.54mm 1x03 : 0,16 €
- La fabrication du PCB reste nécessaire, et les Gerber sont fournis
- Des fichiers STL pour l’impression 3D sont également disponibles
Raccourcis et configuration
- Pour le firmware 0.68 et supérieur, les principaux raccourcis sont les suivants
Left Ctrl + Right Shift + C + O: entrer en mode configurationRight Shift + F12 + D: supprimer les réglages en flashRight Shift + F12 + Y: enregistrer l’offset de bascule d’écranRight CTRL + Right ALT: activer/désactiver le mode souris lenteRight CTRL + K: verrouiller/déverrouiller le changement de bureau à la sourisRight CTRL + L: verrouiller simultanément les deux sortiesLeft CTRL + Right Shift + G: activer/désactiver le gaming modeLeft CTRL + Right Shift + S: activer le screensaverLeft CTRL + Right Shift + X: désactiver le screensaverLeft CTRL + Caps Lock: changer de sortie
- Le raccourci a été modifié car certains claviers n’envoient pas correctement l’appui simultané sur les deux touches Shift
Mode de configuration web
- À partir du firmware 0.6, un configuration mode amélioré a été introduit
- En appuyant sur
Left Ctrl + Right Shift + C + O, l’appareil redémarre et entre en mode configuration - Un lecteur USB nommé
DESKHOPapparaît, contenant un seul fichierconfig.htm - Ce fichier doit être ouvert dans Chromium ou Chrome
- Firefox n’est pas pris en charge actuellement, car il évite d’implémenter WebHID
- Après avoir autorisé la connexion, il est possible de modifier les options puis de les enregistrer sur l’appareil
- Le choix d’un fichier local plutôt qu’une page de configuration en ligne vise à éviter le risque de sécurité potentiel qu’impliquerait le chargement, depuis un emplacement en ligne arbitraire, de JavaScript interagissant avec un périphérique d’entrée
- En raison des contraintes d’espace de stockage, la page web de configuration utilise une méthode d’auto-décompression ; l’ensemble du code source est inclus dans le dépôt
Conception sécurité et sûreté
- Il n’existe aucune fonction de copier/coller ni de partage d’informations entre systèmes
- il s’agit d’une limitation volontaire pour éviter les fuites d’informations
- Aucune connexion n’entre depuis les ordinateurs de sortie
- à l’exception des messages standard d’activation/désactivation des LED du clavier, limités à 1 octet de données
- Il n’est pas possible de déclencher une mise à jour du firmware depuis les ordinateurs de sortie
- seule une action explicite de l’utilisateur via un raccourci clavier spécial est autorisée
- Les endpoints personnalisés du clavier/de la souris connectés ne sont pas exposés et aucune information n’est transmise vers l’appareil
- Aucun historique de saisie n’est stocké
- L’appareil ne génère pas de frappes arbitraires
- seules les entrées effectuées ou déclenchées par l’utilisateur sont envoyées en sortie
- Les sorties sont physiquement séparées et utilisent une isolation galvanique d’au moins 2 kV
- Les paquets entre appareils ont une longueur fixe et les options de configuration transmises sont limitées à une courte liste
- Aucun Bluetooth, Wi-Fi, réseau ou accès à Internet
- Les ordinateurs connectés ne sont considérés comme dignes de confiance en aucune circonstance
- Le mode configuration se désactive automatiquement après une période d’inactivité
- Le code est fourni en open source, sans blob binaire
FAQ et compatibilité
- Il est possible d’utiliser seulement deux Pico, sans PCB ni isolateur, mais l’usage d’isolateurs est recommandé
- Même avec des résolutions d’écran différentes, cela devrait fonctionner, car le mouvement de la souris est traité dans un espace de coordonnées abstrait puis mappé par chaque ordinateur sur son écran physique
- Ce n’est pas un produit commercial mais un projet hobby personnel non commercial
- Une mise à jour indique qu’il est possible de commander PCB, PCB assemblés et appareils complets à l’unité chez Elecrow
- d’après les retours d’utilisateurs, les cartes arrivent vides et il faut flasher soi-même le firmware
- Les dongles combo clavier/souris comme Logitech Unifying seraient mieux pris en charge depuis une récente mise à jour du firmware
- Les claviers et souris sans fil utilisant des récepteurs distincts fonctionnent ; une souris sans fil Anker a été testée avec succès
- En cas de problème de build, consulter le Troubleshooting Wiki
Alternatives logicielles
- Barrier : gratuit, open source
- Input Leap : gratuit, open source
- Synergy : commercial
- Mouse Without Borders : gratuit, Windows uniquement
- Universal Control : fonctionnalité Apple
Limites connues et feuille de route
- Depuis Windows 10
KB5003637, le fonctionnement HID en coordonnées absolues est cassé, ce qui empêche l’utilisation de plus d’un écran sous Windows- la souris reste sur l’écran principal ; un contournement expérimental existe et un meilleur est en cours de développement
- Le code a besoin de nettoyage et de refactoring
- Le projet n’a pas été suffisamment testé avec une grande variété de périphériques, donc il est possible qu’il ne fonctionne pas immédiatement selon le matériel
- Sur les claviers avancés avec molettes, boutons supplémentaires ou curseurs, ces éléments additionnels peuvent ne pas fonctionner
- Sur les souris modernes avec un très grand nombre de boutons, certains peuvent ne pas se comporter comme attendu
- Les deux ordinateurs doivent être connectés et fournir l’alimentation USB pour que cela fonctionne
- chaque carte est alimentée par l’ordinateur auquel elle est connectée
- macOS présente des problèmes avec deux écrans ou plus ; les firmwares récents proposent un contournement expérimental
- Les fonctionnalités prévues incluent l’amélioration des contournements multi-écrans Windows/macOS, le mode transparent/gaming mode, la prise en charge de plus de deux sorties et une meilleure interface de configuration
- Une version lite offrant les fonctions de base avec une seule carte Pico W est également en préparation
- Le polling de la souris peut actuellement atteindre 1000Hz
1 commentaires
Commentaires sur Hacker News
C’est appréciable de pouvoir détecter les bords de l’écran sans logiciel client
Pour que le curseur de la souris passe naturellement d’un écran à l’autre, le descripteur de rapport HID de la souris est changé en coordonnées absolues, et les rapports de souris qui arrivent en réalité sous forme de déplacements relatifs sont cumulés en interne afin de conserver une position exacte
Cela fonctionne donc comme synergykm / Barrier, avec la fonction presse-papiers et sans logiciel client
Par exemple un script d’automatisation, ou un jeu qui verrouille le curseur au centre de l’écran
Sur YouTube, on peut aussi avancer ou reculer dans une vidéo image par image avec les touches
,et., sans matériel séparéFaire une sélection fine avec un curseur dans une interface tactile, c’est vraiment épouvantable
Je ne sais pas qui les a eus en premier, mais je les ai découverts dans mpv, puis j’ai essayé par hasard sur YouTube et ça a fonctionné
Sous Windows, on peut utiliser Mouse Without Borders, développé par Microsoft Garage et désormais inclus dans Windows PowerToys
Liens :
https://www.microsoft.com/en-us/garage/profiles/mouse-without-borders
https://github.com/microsoft/PowerToys
Cela dit, en regardant maintenant, il n’est plus maintenu ; son successeur est Input Leap
https://github.com/debauchee/barrier
https://github.com/input-leap/input-leap
Cela rend notamment facile la copie de fichiers par glisser-déposer entre ordinateurs
J’ai acheté pas moins de quatre hubs USB pour basculer clavier et souris, mais la plupart des appareils sont tellement mauvais que c’en est agaçant
Il arrive plusieurs fois par jour que je doive débrancher et rebrancher physiquement le hub, et c’est encore pire si j’y connecte aussi une webcam ou un micro USB
J’utilise Synergy avec satisfaction, mais il me faut un vrai KVM capable de gérer correctement webcam, micro et audio, et de déplacer seulement un groupe de périphériques connectés via un raccourci clavier
Les utilisateurs de KVM sont clairement insuffisamment servis
Chaque entrée DisplayPort est associée à des ports USB, et l’USB-C gère à la fois les périphériques, l’entrée vidéo et une alimentation plutôt correcte
La bascule se fait avec un petit interrupteur sur le bureau ; le moniteur fait comme s’il restait connecté même aux entrées qui ne sont pas affichées, ce qui évite à Windows de clignoter en réorganisant tout, et rend la commutation beaucoup plus rapide et fluide
Cela me paraît pourtant être un cas d’usage courant, c’est dommage
On peut aussi passer d’abord par un dock, mais la résolution du moniteur que j’utilise est élevée, si bien que la plupart des docks peinent ou ne prennent en charge que le 30 Hz
Le Mac est connecté avec un seul câble Thunderbolt 4, et le PC en amont via HDMI 2.1 et USB3 10 Gbit/s
J’ai branché l’Ethernet ainsi que le clavier et la souris au moniteur, et la bascule vers le bon appareil se fait via un raccourci clavier ou l’OSD du moniteur
La fonction PIP permet aussi de voir les deux appareils en même temps
Sa limite est qu’il n’a qu’un contrôleur hôte USB 2, ce qui rend difficile la commutation de certains périphériques haut débit comme certaines webcams
Si vous devez intégrer des produits Apple, comme Apple n’aime pas le MST, il faut utiliser deux câbles USB3 physiques côté Mac pour distinguer les deux canaux d’affichage
J’y branche des clés USB pour transférer rapidement des fichiers, et en général tout appareil alimenté par USB fonctionne
Si l’on choisit USB 3+, DP, etc., c’est cher, mais il existe aussi des modèles abordables qui ne commutent que l’USB
En revanche, gros inconvénient : certaines souris et certains claviers avec touches spéciales ne fonctionnent pas à 100 %
J’utilise Synergy pour cet usage depuis plus de 10 ans
https://symless.com/synergy ; c’est rapide, le basculement est instantané même en Wi‑Fi, et Windows/Mac/Linux sont tous pris en charge
Les deux derniers sont gratuits et open source, et Synergy a une bonne façon de configurer les frontières entre les appareils
Cela dit, quelle que soit la solution, j’aimerais qu’elle prenne correctement en charge une disposition personnalisée des moniteurs
Dans mon environnement, les moniteurs ne sont pas alignés, et chaque moniteur peut basculer indépendamment vers chaque appareil ; ce serait donc formidable de pouvoir définir des frontières par moniteur et par appareil, mais cela ne semble exister ni côté logiciel ni côté matériel
J’ai récemment demandé à Synergy, qui m’a répondu que c’était sur la feuille de route en tant que demande de fonctionnalité populaire ; j’espère que cela arrivera bientôt
Il n’est pas nécessaire de se connecter d’abord à l’ordinateur, et l’on peut basculer en dépassant le bord de l’écran ou avec une combinaison de touches
Les périphériques USB connectés peuvent aussi être basculés indépendamment du clavier et de la souris
Ce type de produit est parfois appelé boundless, borderless ou roaming KM switch
https://www.cdw.com/product/siig-4-port-roaming-km-switch-wi...
Personnellement, il a beaucoup mieux fonctionné que Synergy
J’y suis passé après que les développeurs de Synergy n’ont pas réagi à des bugs vieux de plusieurs années, au point que je ne pouvais plus l’utiliser
Exemple : https://github.com/symless/synergy-core/issues/5992
L’inconvénient est qu’au bout d’un an, il faut faire un « renouvellement de maintenance » pour continuer à recevoir les mises à jour, mais je l’utilise toujours très bien sans avoir encore renouvelé
En vérifiant, je me suis rendu compte que la configuration fonctionnait sans problème depuis 4 à 5 ans, et cela fait partie des logiciels payants qui valent vraiment leur prix
La sécurité devrait être incluse par défaut et gratuite partout ; ce n’est pas un luxe, mais un minimum
Cela dit, si je l’essaie et que c’est convaincant, j’envisage d’acheter la licence premium pour la fonction copier-coller
J’ai un projet inspiré d’un projet similaire, https://github.com/jfedor2/screen-hopper
Ma version maison se compose de deux programmes
L’un tourne sur un bureau Linux et écoute les événements d’entrée d’evdev, le sous-système d’entrée de Linux ; quand on appuie sur une touche donnée, il consomme tous les événements et les envoie à un RPI Pico via USB série
En appuyant de nouveau, il revient en mode d’écoute manuel
Le RPI Pico convertit les événements Linux evdev reçus en série en événements USB HID et les envoie à un autre PC Windows
Au final, cela donne un switch KM permettant de basculer instantanément entre un PC Linux et un PC sous n’importe quel OS
Photo du câblage : https://ibb.co/m0zhzgz
J’ai utilisé un autre Pico comme adaptateur USB-série, et pour un débutant en matériel comme moi, le fait de n’avoir besoin que de deux fils était un vrai soulagement
Les deux programmes faisaient moins de 100 lignes chacun, et il existe beaucoup de crates Rust et de packages Python pour écouter Linux evdev
Côté Pico aussi, cela ressemble surtout à une boucle avec un gros
switch, et il existe des crates Rust pour envoyer des événements USB HIDAvec COBS, on peut envoyer en série sans se soucier du framing
À cause d’un bug USB série, je n’ai finalement pas publié le tout en open source : après une déconnexion, il ne se reconnectait pas correctement au bureau Linux
Je ne sais pas si cela venait de Linux ou du Pico, et comme je ne débranche pas le câble, je l’utilise encore sans problème
Comme je joue beaucoup aux FPS, j’ai volontairement laissé de côté les coordonnées absolues, et j’ai assigné la touche de bascule à un bouton latéral de la souris pour pouvoir changer de système sans toucher au clavier
Je n’ai découvert le projet screen-hopper qu’hier, et j’ai eu l’impression de confirmer la théorie selon laquelle, quoi que l’on essaie de construire, quelqu’un de plus malin l’a déjà mieux fait
Comme je ne joue pas du tout, les coordonnées absolues me conviennent aussi, mais j’ai dans ma todo list de rendre cela configurable
Tu pourrais faire du nerd sniping pour pousser quelqu’un à creuser le détail subtil qui provoque le bug
Les sources sont fournies telles quelles ici : https://github.com/null-dev/picokvm
L’un de mes gros sujets d’agacement était de basculer la souris et le clavier entre deux PC avec un switch USB 3.0
Quand je n’ai pas grand-chose à dire pendant une réunion Teams et que quelqu’un prononce mon nom ou m’envoie un message, je me retrouve à chercher fébrilement le bouton pour renvoyer les entrées vers le PC où Teams est ouvert
J’avais envisagé de connecter un ESP32 ou un Rpi Pico W et quelques optocoupleurs aux broches du bouton du switch USB, puis d’exposer un endpoint HTTP pour basculer les entrées entre les deux machines via un script AutoHotkey et un raccourci clavier
Mais j’ai abandonné parce que je n’ai pas trouvé comment déterminer l’entrée actuellement active ; cette solution me plaît bien
Le casque Logitech fourni par mon entreprise a des boutons de volume, de fin d’appel et de sourdine sur le câble, ce qui rend la sortie de sourdine bien plus facile quand on fait plusieurs choses à la fois
Synergy gère très bien cet usage en pur logiciel
Ce n’est ni gratuit ni open source, mais c’est relativement abordable
https://symless.com/synergy
Les deux sont open source
[0] https://github.com/debauchee/barrier
[1] https://github.com/input-leap/input-leap
Il existe aussi un fork open source issu de la version 1.9 : https://github.com/debauchee/barrier#what-is-it
Par exemple, avec un hôte macOS, sur les clients Windows/Linux il utilise la courbe d’accélération de macOS pour calculer la position du curseur, mais pas pour le déplacement réel du curseur
Résultat, quand on essaie de travailler dans le tiers de l’écran Windows le plus proche de l’hôte, on repasse involontairement de l’autre côté
Toutes les solutions semblent ne fonctionner que sur des OS de bureau
Aucune de ces technologies n’est stable, et Synergy m’a même déjà bloqué des claviers connectés à plusieurs reprises, au point que l’ordinateur ne réagissait plus tant qu’il n’était pas éteint puis rallumé
Vraiment impressionnant
Je le ressens d’autant plus que j’utilise depuis au moins 20 ans une configuration de bureau avec, de gauche à droite, des machines Linux-Mac-Windows
Si les langages de programmation ont le multilinguisme, le matériel a les configurations multiplateformes
Heureusement, ces dernières années, la multiplication des conceptions de systèmes sur puce (SoC) a rendu les choses plus faciles
Ma configuration actuelle se compose de deux clones de Mac mini à SoC Ryzen à 250 dollars venus de Shenzhen, et d’un MBP M1
C’est dommage que l’écosystème autrefois robuste des solutions KVM open source comme Synergy se soit transformé en cauchemar récursif de forks, au point qu’il soit devenu difficile de trouver un KVM logiciel open source multiplateforme gratuit qui fonctionne
Pour l’instant, j’ai fini par utiliser un commutateur KVM classique, mais devoir appuyer sur un bouton me déconcentre
J’aimerais un jour réessayer quelque chose comme ça
S’il y a quelqu’un avec qui commercialiser cela, je suis prêt à prendre en charge et à financer l’injection plastique, le marketing, l’assemblage en volume et les autres tâches nécessaires
Mon e-mail est dans mon profil
Pour moi, c’est rédhibitoire
Il suffit de chercher boundless, borderless ou roaming KM switch