Başlangıçta bir Bluetooth Klavye Otomatik Bağlantı'ya nasıl sahip olabilirim?


10

HTPC'im için bir bluetooth klavyem var. Bluetooth ile bilgisayarımla eşleştiriyorum ve iyi çalışıyor. Ancak, klavyeyi veya bilgisayarımı kapattığımda, tekrar açtığımda tekrar bağlanmalı (bilgisayar ve klavyede bir şifre girmem gerekiyor). Ben birçok forumlar üzerinden baktım ve bu aracılığıyla bazı hayati görünen bluetooth dosyaları eksik bulduk:

/etc/default/bluetooth

/etc/init.d/bluetooth

/etc/bluetooth/hcid.conf

Şimdiye kadar çevrimiçi bulduğum talimatlarda, bu dosyaların herhangi birindeki belirli satırları değiştirmeliyim. Onlar yok, çünkü yoklar.

Bağımlılık ya da bir şey eksik mi? Ayrıca Blueman'ı yüklemeyi denedim ama bu hiç yardımcı olmadı.

Ubuntu 10.10 (Maverick) kullanıyorum.

Orijinal yayın: http://ubuntuforums.org/showthread.php?t=1643386&highlight=bluetooth

Yanıtlar:


11

Bu cevap thetechdepo.com'da Andrew Martin tarafından yazılmış bir öğreticiden geliyor. Orijinal gönderi için aşağıdaki bağlantıya bakın, ancak bu tam bir yeniden yazmadır. Özellikle bir elma klavyesi için yazılmıştır, ancak birden fazla cihaz için kullandım, bu yüzden elma veya klavyeye özgü değil. Sadece talimatları izleyin ve Ubuntu'da herhangi bir bluetooth cihazına otomatik olarak bağlanacaksınız.

Sistem Ayarları> Bluetooth'a gidin ve yeni bağlanan bluetooth cihazınızı eklemek için talimatları izleyin.

Talimatları izleyin ve istendiğinde pimi girin, ardından cihaz bağlandıktan ve çalıştıktan sonra cihazı kapatın. Şimdi otomatik bağlantı parçasına.

Terminalinizi açın ve aşağıdaki komutları girin:

$ killall bluetooth-applet 
$ sudo /etc/init.d/bluetooth restart 
$ sudo hcitool dev

Son komut, cihazınızın çıktısını aşağıdaki gibi görüntüler:

Devices:
    hci0    00:00:00:00:00:00

Bluetooth'u komut satırı üzerinden bağlamanıza izin vermek için yeni bir paket yükleyin.

$ sudo apt-get install bluez-compat

Bu tamamlandıktan sonra, şimdi hidd programı yüklü olacak. Bu noktada, klavyenizi açın ve aşağıdaki komutu girin. Aşağıda görüldüğü gibi, sonraki komutlara kopyalayıp yapıştırmanız gereken klavyenizin MAC Adresini verir:

$ hcitool scan        
Scanning ...
    AA:BB:CC:DD:EE:FF   Bluetooth Device Name
$ sudo hidd --connect AA:BB:CC:DD:EE:FF

Şimdi pc başladığında cihazı otomatik olarak bağlamak için bir başlangıç ​​dosyası oluşturmalıyız. Terminal üzerinden ...

$ gedit ~/.keyboard.sh

AA: BB: CC: DD: EE: FF yerine yukarıda gördüğünüz donanım kimliğini kullanarak aşağıdaki metni girin. Son olarak dosyayı kaydedin.

#! /bin/bash

address="AA:BB:CC:DD:EE:FF"

while (sleep 1)
do
connected=`sudo hidd --show` > /dev/null
if [[ ! $connected =~ .*${address}.* ]] ; then
sudo hidd --connect ${address} > /dev/null 2>&1
fi
done

Şimdi yeni bir başlangıç ​​dosyası oluşturun. Seçtiğiniz cihaz adı yerine "klavye" kullanın. Bu sadece dosyanın adıdır.

$ sudo gedit /etc/init.d/keyboard

Ubuntu'nuza başlangıçta oluşturduğunuz dosyayı çalıştırmasını söyleyen aşağıdakileri yapıştırın.

#!/bin/sh
/home/username/.keyboard.sh &

exit 0

Şimdi her iki dosya iznini de terminal aracılığıyla yürütülebilir olarak ayarlayın.

$ sudo chmod +x /etc/init.d/keyboard
$ chmod +x ~/.keyboard.sh
$ sudo update-rc.d keyboard defaults

Bilgisayarınızı yeniden başlattığınızda cihazınız otomatik olarak bağlanmalı ve hiçbir şey yapmanıza gerek kalmadan çalışmalıdır.

Umarım bu birkaç kişiye yardımcı olur, sorunuma bir çözüm bulmam uzun zaman aldı ve bu öğreticiyi internete biraz daha derinleştirmek istedim.

Orijinal bağlantı burada bulunabilir .


Hidd'in şimdi /usr/share/docs/bluez/NEWS.Debian.gz'ye göre bluez 4.0'dan udev lehine kaldırıldığına inanıyorum, ancak bluez-uyumlu olmadan nasıl yapılacağına dair herhangi bir belge bulamıyorum.
tu-Reinstate Monica-dor duh

3

Ayrıca ryandlf'in cevabını kendim denedim ama sonunda aynı işi yapacak başka bir kolay kurulum buldum.

Ana fikir, uzak cihaz eşleştirilip güvenilir hale getirildikten sonra, hcitool spinqmevcut tüm cihazların bağlanmasına izin verecek periyodik sorgulama başlatacağıdır.

İlk olarak, sudo Bluetoothctl -aaşağıdaki adımları başlatın ve uygulayın. Bunlar ArchLinux wiki'den ancak Ubuntu'da da aynı şekilde çalıştığı kanıtlandı.

[bluetooth]# power on
[bluetooth]# agent KeyboardOnly
[bluetooth]# pairable on
[bluetooth]# scan on

Son komut böyle tüm kullanılabilir (eşleşmeyi bekliyor) bluetooth klavyeleri gösterecektir.

Discovery started
[CHG] Controller 01:02:03:04:05:06 Discovering: yes

Klavyenizin adresini not edin ve onunla devam edin.

[bluetooth]# pair 01:02:03:04:05:06
[bluetooth]# trust 01:02:03:04:05:06
[bluetooth]# connect 01:02:03:04:05:06
[bluetooth]# quit

Şimdi bu basit betiği /etc/init.d/keyboard

#! /bin/sh
sudo hcitool spinq
exit 0

Sonra bunları yürütün.

sudo chmod +x /etc/init.d/keyboard
sudo service keyboard enable
sudo update-rc.d keyboard defaults
sudo service keyboard start

Bu kadar. Şimdi Bluetooth klavyenizi her açtığınızda, otomatik olarak Linux'unuza bağlanacaktır.


$ sudo update-rc.d keyboard defaults insserv: script keyboard is not an executable regular file, skipped!Çözmek için yaptım sudo chmod +x /etc/init.d/keyboard. Sonra konser verdim sudo update-rc.d keyboard defaults. Alınan uyarı: insserv: warning: script 'keyboard' missing LSB tags and overrides.
orschiro

Ne olmuş sudo service keyboard enable?
orschiro

Evet, doğru yaptın chmod +x.
Ch.Idea

Hata eksik LSB etiketleri yok sayılabilir ve bu görevde gerçekten önemli değildir. İsterseniz, Google'ı kullanarak arayın ve dosyanın üstüne yapıştırın. Basit formdalar.
Ch.Idea

1

Apple BlueTooth klavyede çok benzer bir sorun yaşadım. Satın aldım çünkü anahtarların hissini çok sevdim. Ancak, bağlı kalamadım. Sorun klavye tanımlamasında görünüyordu. Gerçek bir isme sahip olduğu gerçek bir MAC bilgisayarla eşleştiğinde, artık Linux veya Windows'a bağlamakla ilgili bir sorunum yoktu. Karım şimdi bunu sorunsuz kullanıyor.

Durumunuzda bunun nasıl aktarılabileceğini bilmiyorum, ama bu bir başlangıç ​​noktası olabilir. Diğer arkadaşlardan, cihaz kimliğinin burada ana sorun olduğu görülüyor.


1

Bluez 5.35'ten (Eylül 2015) beri , yapılandırma dosyasını /etc/bluetooth/main.confetkinleştirerek değiştirmek yeterli olmalıdır AutoEnable=true.

Bir terminalden yeni bir cihazı eşleştirmek için ( 01:02:03:04:05:06eşleştirmeye çalıştığınız cihazın mac adresi olduğu varsayılarak ):

$ bluetoothctl
# power on
# agent KeyboardOnly
# default-agent
# pairable on
# scan on
# pair 01:02:03:04:05:06
# trust 01:02:03:04:05:06
# connect 01:02:03:04:05:06
# quit
$ exit

Evet, güven kısmı, başlangıçta otomatik olarak bağlanabilmem için farkı yaratan şeydi.
p1l0t

0

Bir bluetooth klavye satın aldım ve bu sayfaya geldim ve ne ryandlf ve Ch.Idea'nın önerdiğini denedim. İşe yaramadı. Bazı analiz ve denemelerden sonra, bu kombinasyonu buldum:

İlk olarak, erkeklerin önerdiği gibi, cihazı GUI'den manuel olarak bağlamayı deneyin. Çalıştığından emin olun. Ardından ayırın ve kapatın. O zaman manuel olarak yeniden başlayacağız.

Kök ayrıcalıklarına sahip olun:

su

Sonra:

hcitool scan

düğmelerine veya cihazdaki her şeye aynı anda basın ve bulunduğundan emin olun. Keşfedilirse, bir adresi, örneğin 20: 73: 00: 01: 90: 65 ve aygıtın bir açıklaması, örneğin Bluetooth klavye yazdırmalıdır. Bu adresi panoya alın.

Sonra, bağlanmaya hazırız. HERKES HER YERDE SUNULMADIĞI UYUŞAN İNTERNET ÖNERİ GİZLİĞİNDE HERKES. Bu yüzden bu işi çok uzun süre yapamadım ... Hito aleti adamına baktıktan sonra, birçok yararlı komut buldum ve dbus veya başka bir şey kullanmaya gerek yok. Bağlamak için şunu yayınlıyoruz:

hcitool cc 20:73:00:01:90:65

ve bu kadar.

Deneyler, cihazı geçici olarak kapattığımda otomatik olarak yeniden bağlandığını gösterdi.

BÖLÜM 2.

Ben de diğer cevaplarda önerdiği gibi bir hizmet oluşturdum. İlk olarak, bu içeriğe sahip bir /etc/init.d/keyboard dosyası oluşturdum:

#! /bin/sh
sudo hcitool cc 20:73:00:01:90:65
exit 0

Sonra kök olarak:

chmod +x /etc/init.d/keyboard
service keyboard enable
update-rc.d keyboard defaults
service keyboard start

Bu kadar. Umarım yardımcı olur.

Oh, ve Debian 9.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.