Come posso avere una tastiera Bluetooth Auto-Connect all'avvio?


10

Ho una tastiera bluetooth per il mio HTPC. Lo abbino al mio computer tramite bluetooth e funziona benissimo. Tuttavia, quando spengo la tastiera o il mio computer, è necessario riconnettersi (il che richiede l'inserimento di un passcode sul computer e sulla tastiera) quando li riaccendo. Ho consultato molti forum e ho scoperto che mi mancano alcuni file bluetooth apparentemente vitali:

/etc/default/bluetooth

/etc/init.d/bluetooth

/etc/bluetooth/hcid.conf

Nelle istruzioni che ho trovato online finora, devo cambiare alcune righe in uno di questi file. Non posso, poiché non esistono.

Mi sto perdendo una dipendenza o qualcosa del genere? Ho anche provato a installare Blueman ma questo non mi ha aiutato affatto.

Sto eseguendo Ubuntu 10.10 (Maverick).

Post originale: http://ubuntuforums.org/showthread.php?t=1643386&highlight=bluetooth

Risposte:


11

Questa risposta proviene da un tutorial scritto da Andrew Martin su thetechdepo.com. Vedi il link qui sotto per il post originale, tuttavia questa è una riscrittura completa. È scritto appositamente per una tastiera Apple, tuttavia l'ho usato per più dispositivi, quindi non è specifico per Apple o per tastiera. Segui semplicemente le istruzioni e avrai qualsiasi dispositivo bluetooth con connessione automatica in Ubuntu.

Vai su Impostazioni di sistema> Bluetooth e segui le istruzioni per aggiungere il tuo dispositivo bluetooth appena connesso.

Seguire le istruzioni e inserire il pin quando richiesto, quindi dopo che il dispositivo è collegato e funzionante, spegnere il dispositivo. Ora sulla parte di connessione automatica.

Apri il tuo terminale e inserisci i seguenti comandi:

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

L'ultimo comando visualizzerà l'output per il tuo dispositivo come:

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

Installa un nuovo pacchetto per permetterti di connettere il bluetooth tramite la riga di comando.

$ sudo apt-get install bluez-compat

Una volta completato, avrai installato il programma hidd. A questo punto, accendi la tastiera e inserisci il seguente comando. Verrà visualizzato l'indirizzo MAC della tastiera, che sarà necessario copiare e incollare nel comando successivo, come mostrato di seguito:

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

Ora dobbiamo creare un file di avvio per connettere automaticamente il dispositivo all'avvio del PC. Tramite il terminale ...

$ gedit ~/.keyboard.sh

Inserisci il seguente testo, sostituendo AA: BB: CC: DD: EE: FF con l'ID hardware che hai visto sopra. Infine, salva il file.

#! /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

Ora crea un nuovo file di avvio. Sostituisci "tastiera" con qualsiasi nome di dispositivo tu scelga. Questo è semplicemente il nome del file.

$ sudo gedit /etc/init.d/keyboard

Incolla quanto segue, che dice a Ubuntu di eseguire il file che hai appena creato all'avvio.

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

exit 0

Ora imposta entrambi i permessi dei file su eseguibili tramite il terminale.

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

Riavvia il computer e il dispositivo dovrebbe connettersi automaticamente e funzionare senza che tu debba fare nulla.

Spero che questo aiuti alcune persone, mi ci è voluto molto tempo per trovare una soluzione al mio problema e volevo consolidare questo tutorial un po 'più in profondità nel web.

Il link originale può essere trovato qui .


Credo che hidd sia ora deprecato a partire da bluez 4.0 a favore di udev, secondo /usr/share/docs/bluez/NEWS.Debian.gz ma non riesco a trovare alcuna documentazione su come farlo senza bluez-compat.
tu-Reinstate Monica-dor duh,

3

Ho anche provato la risposta di Ryandlf da solo, ma ho trovato un'altra configurazione semplice che alla fine farà lo stesso lavoro.

L'idea principale è che una volta che il dispositivo remoto è accoppiato e affidabile, hcitool spinqavvierà un'indagine periodica che consentirà di collegare tutti i dispositivi disponibili.

Innanzitutto, avvia sudo Bluetoothctl -ae segui i passaggi seguenti. Questi provengono dal wiki di ArchLinux ma hanno dimostrato di funzionare allo stesso modo anche in Ubuntu.

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

L'ultimo comando mostrerà tutte le tastiere bluetooth disponibili (in attesa di accoppiamento) come questa.

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

Nota quell'indirizzo della tua tastiera e continua con esso.

[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

Ora inserisci questo semplice script in /etc/init.d/keyboard

#! /bin/sh
sudo hcitool spinq
exit 0

Quindi esegui questi.

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

Questo è tutto. Ora ogni volta che accendi la tastiera Bluetooth, questa verrà automaticamente connessa a Linux.


$ sudo update-rc.d keyboard defaults insserv: script keyboard is not an executable regular file, skipped!Per risolvere, mi sono esibito sudo chmod +x /etc/init.d/keyboard. Poi mi sono esibito sudo update-rc.d keyboard defaults. Avvertimento ricevuto: insserv: warning: script 'keyboard' missing LSB tags and overrides.
Orschiro,

Che dire sudo service keyboard enable?
Orschiro,

Sì, hai fatto bene chmod +x.
Ch.Idea,

Errore mancante tag LSB può essere ignorato e non molto importante in questa attività. Se lo desideri, cercalo google e incollalo nella parte superiore del file. Sono in forma semplice.
Ch.Idea,

1

Ho avuto un problema molto simile con una tastiera Apple BlueTooth. L'ho comprato perché amavo la sensazione delle chiavi. Tuttavia, non sono riuscito a mantenerlo connesso. Il problema sembrava essere nell'identificazione della tastiera. Una volta che è stato abbinato a un vero computer MAC, dove ha ottenuto un nome reale, non ho più avuto problemi con il collegamento a Linux o Windows. Mia moglie ora lo usa senza problemi.

Non so come questo possa essere trasposto nella tua situazione, ma questo può essere un punto di partenza. Da altri amici, sembra che l'identificazione del dispositivo sia il problema principale qui.


1

Da bluez 5.35 (settembre 2015), dovrebbe essere sufficiente modificare il file di configurazione /etc/bluetooth/main.confabilitando AutoEnable=true.

Per accoppiare un nuovo dispositivo da un terminale (supponendo che 01:02:03:04:05:06sia l'indirizzo mac del dispositivo che si sta tentando di associare):

$ 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

Sì, la parte di fiducia è ciò che ha fatto la differenza per me essere in grado di connettermi automaticamente all'avvio.
p1l0t

0

Ho comprato una tastiera bluetooth e sono atterrato su questa pagina qui, e ho provato cosa ryandlf e cosa suggeriva Ch.Idea. Non ha funzionato Dopo alcune analisi e prove, ho trovato questa combinazione:

Innanzitutto, come hanno suggerito i ragazzi, prova a connettere il dispositivo manualmente dalla GUI. Assicurati che funzioni. Quindi scollegalo e spegnilo. Ricominceremo quindi manualmente.

Ottieni i privilegi di root:

su

Poi:

hcitool scan

e premere contemporaneamente i pulsanti o qualsiasi altra cosa sul dispositivo, e assicurarsi che sia scoperto. Se scoperto, dovrebbe stamparne un indirizzo, ad esempio 20: 73: 00: 01: 90: 65, e una descrizione del dispositivo, ad esempio una tastiera Bluetooth. Prendi quell'indirizzo negli appunti.

Quindi, siamo pronti per connetterci. TUTTI IN TUTTA L'INTERNET SUGGERISCONO NASCOSTI, CHE STA GIUDICANDO COME NON È PRESENTE PIÙ. Ecco perché non sono riuscito a farlo funzionare per così tanto tempo ... Dopo aver visto man of hcitool, ho trovato molti comandi utili e non ho bisogno di usare dbus o altro. Quindi, per collegarlo, emettiamo:

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

e basta.

Gli esperimenti hanno dimostrato che si riconnette anche automaticamente, quando ho temporaneamente spento il dispositivo.

PARTE 2.

Ho anche creato un servizio, come hanno suggerito i ragazzi in altre risposte. Innanzitutto, ho creato un file /etc/init.d/keyboard, con questo contenuto:

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

Quindi, come root:

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

Questo è tutto. Spero che sia d'aiuto.

Oh, ed è Debian 9.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.