DeskHop – Hızlı masaüstü geçişi
(github.com/hrvach)DeskHop - Hızlı masaüstü geçişi
- Ücretsiz ve açık kaynak
- Geçiş sırasında neredeyse hiç gecikme yok
- Fare işaretçisini bilgisayarlar arasında sürükleyerek geçiş yapılabiliyor
- Yazılım kurulumu gerektirmez
- Ucuz ve kolay bulunabilen parçalar kullanır (15 eurodan az)
- 3D yazıcıyla basılabilen snap-fit kasa
- Çıkışlar arasında tam galvanik izolasyon
- Linux, macOS ve Windows'ta çalışır
Nasıl çalışır
- Cihaz, klavye/fare ile bilgisayarlar arasında aracı görevi görür ve iki bilgisayarla aynı anda bağlantıyı sürdürür
- Kullanıcının seçimine göre fare ve tuş girişlerini hangi bilgisayara ileteceğine karar verir
- Fareyi diğer masaüstüne sürüklediğinizde klavye de otomatik olarak geçiş yapar
Fare
- Fare HID report descriptor'ını mutlak koordinatlar kullanacak şekilde değiştirir ve fare raporlarını (göreli hareket) içeride biriktirerek doğru konumu korur
- Diğer monitör yönünde monitör alanının dışına çıkmaya çalışıldığında Y koordinatını korur, maksimum X'i minimum X'e çevirir ve ardından çıkışı değiştirir
- İmlecin diğer monitörde aynı yükseklikte görünmesini sağlayarak geçişin akıcı hissedilmesini sağlar
Klavye
- USB host olarak klavyeyi periyodik şekilde sorgular, önceden ayarlanmış kısayolları (
Caps Lockvb.) arar ve karakterleri diğer çıkışa iletir - Hangi çıkışın kullanımda olduğunu görsel olarak göstermek için klavye LED'lerini yeniden kullanarak geri bildirim sağlar
- Her bilgisayarın LED durumunu hatırlar, böylece çalışmaya önceki durumla devam edebilirsiniz
Hazır derlenmiş imaj kullanımı
- Hazır derlenmiş imajlar kullanılabilir
- Pico kartını PCB üzerindeki A yuvasına takın; kabloyu bağlarken kart üzerindeki düğmeyi basılı tutarsanız sistemde bir USB sürücü olarak görünür
- İlgili
board_A.uf2dosyasını kopyalayın ve B için de aynı işlemi tekrarlayın
Firmware yükseltme
- Seçenek 1: Kasayı açın ve her Pico'yu bağlarken düğmeyi basılı tutup doğru
uf2dosyasını kopyalayın - Seçenek 2: Belirli bir tuş kombinasyonunu (
Right Shift, P, H, X, Left Shift) kullanarak BOOTSEL moduna geçin ve Picos'u bootloader yükseltme moduna alın
Diğer özellikler
- Fareyi ince ayarlamanız gerektiğinde
Right ALTtuşunu basılı tutarak fareyi hareket ettirirseniz fare hızı belirgin şekilde düşer ve hassas işlemler yapılabilir
Donanım
- Devre ucuzdur (adet başına 4.10 euro), elle lehimlenebilir ve çoğu tedarikçide stokta bulunan iki Raspberry Pi Pico kartını temel alır
- Picos, Analog Devices ADuM1201 çift kanallı dijital izolatör (~3 euro) kullanılarak UART üzerinden bağlanır
- RP2040'ın programlanabilir IO sihirinden yararlanarak USB'yi uygulayan etkileyici projeler sayesinde hem USB host hem de device olarak çalışabilir
PCB
- DIY kurulumu olabildiğince basit tutmak için izler yalnızca tek yüzeye yerleştirilmiş ve parça sayısı minimumda tutulmuştur
- USB D+/D- diferansiyel hatlarının uzunlukları eşit olmalıdır; ancak toplam uzunlukların uyuşması için PICO PCB'nin kendi GPIO iz uzunluğu farkını telafi edecek şekilde bilinçli olarak biraz asimetrik tasarlanmıştır
Kasa
- 3D modelleme konusunda çok yetkin olunmadığı için kasa sade ve temel düzeyde, ancak amacına uygun
- Basması kolaydır, yaklaşık 33 g filament kullanır ve birkaç saatte tamamlanır
- Yatay PCB hareketi deliklerden geçen pimlerle, dikey hareket ise yanlardaki snap-fit çıkıntılarla engellenir; bu sayede vida gerekmez
- Micro USB konnektörler kasanın yan yüzeyinden dışarı taşar; bu yüzden biraz daha büyük bir delik açıldığında kablo rahatça geçebilir
- Kapak snap-fit tasarımdadır ve açmak için bir tornavida yuvası vardır
- Üstteki işaretler içe gömülüdür; kontrastı artırmak için mum boya vb. ile doldurulabilir (ya da olduğu gibi bırakılabilir)
Malzeme listesi
- 2 adet Raspberry Pi Pico, 1 adet ADuM1201BRZ, 2 adet Cap 1206 SMD 100nF, 2 adet USB-A PCB konnektörü, 2 adet Headers 2.54 1x03
- Toplam fiyat: 11.53 euro
- USB-A konnektörü olarak Molex MX-67643-0910 veya aynı ölçülere sahip daha ucuz bir muadil kullanılabilir
- Ek adımlar: PCB üretimi (Gerber sağlanıyor, JLC birkaç dolara üretebiliyor, 1.6 mm kalınlık seçin), kasanın 3D baskısı (
stldosyaları sağlanıyor, yaklaşık 33 g filament gerekir)
SSS
- PCB ve izolatör olmadan yalnızca iki Pico ile çalışır mı?
- İzolatör önerilir, ancak onsuz da çalışabilir.
- Monitörlerin çözünürlükleri farklıysa ne olur?
- Fare hareketi soyut bir koordinat uzayında yapılır ve fiziksel ekranla eşleştirmeyi bilgisayar hesapladığı için sorunsuz çalışması gerekir.
- Bu ürünü nereden satın alabilirim?
- Satılmıyor; kişisel, ticari olmayan bir hobi projesidir.
- Fareyle etkin ekran değiştiğinde klavye de onu takip ediyor mu (ve tersi)?
- Evet, tek bir bilgisayarmış gibi çalışacak şekilde yapılmıştır.
- Logitech Unifying Receiver gibi klavye/fare birleşik dongle'larıyla çalışıyor mu?
- Mevcut sürümde fareyin başka bir porta bağlı olduğu varsayıldığı için çalışmaz. Logitech Unifying Receiver'ın davranışının incelenmesi ve desteğin eklenmesi gerekir.
- Fare ve klavyenin ayrı kablosuz alıcıları olduğu durumlarda çalışıyor mu?
- Bu senaryolar test edilmediği için beklenmedik sorunlar olabilir, ancak teorik olarak doğrudan çalışması gerekir.
Dezavantajlar
- Dikkat: Bu özelliği kullanmak için iki bilgisayarın da bağlı ve açık olması gerekir (her kart gücünü bağlı olduğu bilgisayardan alır).
- Kodun temizlenmesi, refactor edilmesi vb. gerekiyor.
- Zaman zaman hatalar ve garip davranışlar yaşanıyor.
- Farklı cihazlarla test edilmediği için kullanıcının donanımında nasıl çalışacağı bilinmiyor.
- Pico-PIO-USB, klavye LED kontrolünü desteklemek için patch'lenmiştir; normalde bu iş host modunda TinyUSB tarafından ele alınır.
Feragatname
- Bu projeyi deneyen herkes, her türlü yaralanma, hasar veya diğer sonuçlardan kendisinin sorumlu olduğunu anlamalı ve kabul etmelidir.
- Güvenlik önemlidir; gerekli önlemleri almak ve proje boyunca kendi iyiliğinizden sorumlu olmak önemlidir.
- Elektrik çarpması, yanık, stres veya öfke yaşamadan keyifle çalışmanız ve sürecin tadını çıkarmanız umulur.
GN⁺ görüşü:
- Bu yazı, iki bilgisayar kullanan kişiler için oldukça faydalı olabilir. Özellikle tek bir klavye ve fareyi paylaşarak çalışma verimliliğini artırmak isteyen kullanıcılar için çekici.
- Açık kaynak olması ve DIY yaklaşımı, teknolojiye ilgi duyanlar için ilginç bir proje hâline getiriyor. Kullanıcılar sistemi kendi ihtiyaçlarına göre uyarlayıp geliştirebilir.
- Bu proje, teknik sorunları çözmeye çalışan topluluğun yenilikçi ruhunu gösteriyor. Kullanıcıların sorunlarını kendilerinin çözüp süreci paylaşması, başkalarının da bundan yararlanmasını sağlıyor.
1 yorum
Hacker News görüşleri
İstemci yazılımı olmadan da kenar algılama yapabilmesi dikkat çekici.
Synergy adlı yazılım çözümünü on yılı aşkın süredir kullanıyorum. Wi‑Fi üzerinden anında geçiş yapıyor ve Windows/Mac/Linux arasında da çalışıyor.
YouTube’da kaydırıcıyı belirli bir konuma tam olarak getirmeye çalışırken bazen fare çok hassas hareket ediyor ve elinizi aşırı dikkatli oynatmanız gerekiyor.
,) ve nokta (.) tuşlarıyla videoda kare kare ileri geri sarabilirsiniz.Windows tarafında, Microsoft Garage tarafından geliştirilen ve artık Windows PowerToys’un bir parçası olan Mouse Without Borders adlı araç kullanılabilir.
Benzer başka projelerden ilham alıp kendi sürümünü yapan biri var.
evdev) giriş olaylarını alıyor. Belirli bir tuşa basıldığında tüm olayları tüketip USB seri bağlantısı üzerinden RPI Pico’ya gönderiyor. Tuşa tekrar basıldığında pasif dinleme moduna geçiyor.evdevolaylarını USB HID olaylarına çevirip başka bir Windows PC’ye gönderecek şekilde programlanmış.Klavye ve fareyi değiştirmek için 4 USB hub satın aldım ama cihazların çoğu o kadar kötüydü ki günde birkaç kez hub’ı fiziksel olarak çıkarıp takmam gerekiyordu.
İki PC arasında fare ve klavye girişini değiştirmek için bir USB 3.0 anahtarı kullanmak en büyük şikayetlerimden biri.
Şu anda bir KVM switch kullanıyorum ve geçiş 2-3 saniye sürdüğü için çoğu zaman diğer bilgisayara SSH ile bağlanıp
tmuxoturumu kullanıyorum.Bu gerçekten harika bir gelişme.
Synergy bu sorunu yalnızca yazılımla iyi çözüyor. Ücretsiz ya da açık kaynak değil, ancak nispeten ucuz.