Obě strany předchozí revize Předchozí verze | |
bluetooth [2012/07/18 19:20] – ubuntu | bluetooth [2019/02/25 17:21] (aktuální) – upraveno mimo DokuWiki 127.0.0.1 |
---|
| ====== Bluetooth ====== |
| |
| Pro zprovoznění Bluetooth (BT) na stroji s Ubuntu je nezbytný Bluetooth adaptér. Nejsnazší je zvolit si USB bluetooth adaptér. Pro svou funkčnost v Linuxu je mezi nimi doporučovaný například známý a testovaný adaptér značky MSI. Vybrala jsem si tedy USB bluetooth adaptér BToes 2.0 EDR Micro Dongle od výrobce MSI. |
| |
| Kromě BT adaptéru je nutné v Linuxu zprovoznit modul hci_usb. Jeho funkčnost v Ubuntu otestujeme příkazem v terminálu: |
| |
| <code> |
| sudo modprobe hci_usb |
| </code> |
| {{.:example.png}} Příklad výstupu, pokud vše běží správně: |
| <code> |
| frontier@frontier-laptop:~$ sudo modprobe hci_usb |
| [sudo] password for frontier: |
| frontier@frontier-laptop:~$ |
| </code> |
| {{.:important.png}} POZOR! Modul hci_usb není v kernelu 2.6.27 a novějších! Byl přejmenovaný na btusb. (Quaker) |
| |
| Proto i příkaz v terminálu bude znít následovně: |
| |
| <code> |
| sudo modprobe btusb |
| </code> |
| Připojte Bluetooth USB adaptér do portu počítače nebo notebooku či laptopu. |
| |
| Příkaz pro terminál, který ukáže zapojený USB bluetooth adaptér: |
| |
| <code> |
| lsusb |
| </code> |
| {{.:example.png}} Příklad výstupu, pokud není žádný problém (USB ve výpisu zde vidíte jako Bluetooth Dongle): |
| <code> |
| frontier@frontier-laptop:~$ lsusb |
| Bus 003 Device 001: ID 0000:0000 |
| Bus 002 Device 005: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode) |
| Bus 002 Device 001: ID 0000:0000 |
| Bus 001 Device 001: ID 0000:0000 |
| </code> |
| Potřebné balíky pro Linux, distribuci Ubuntu (Ubuntu 8.04, ale stejné by měly být i pro verzi Ubuntu 8.10): |
| * bluetooth |
| * gnome-bluetooth |
| * libgnomebt0 |
| * nautilus-sendto |
| * bluez-audio |
| * bluez-utils |
| * bluez-cups |
| * bluez-gnome |
| * libbluetooth2 |
| * libbtctl4 |
| * gvfsbackends |
| * obexftp (a možná i balík gnome-vfs-obexftp) anebo obex-data-server |
| * obexpushd |
| * obextool |
| * openobex-apps |
| * uspp-push |
| * libopenobex1 |
| |
| {{.:warning.png}} POZOR! Kvůli konfliktu balíku libobexftp1 si je potřeba vybrat buď balík obex-data-server anebo balík obex-ftp! Závislost obou je na balíku libopenobex1. |
| |
| {{.:tip.png}} Pokud v balících máme balík obexftp, je možné, že budeme pro správnou funkci Bluetooth potřebovat i balík gnome-vfs-obexftp (oboje namísto balíku obex-data-server). |
| |
| Kromě toho si je možné (podle fóra Ubuntu) vybrat balík gnome-bluetooth anebo balík python-bluez. |
| |
| Nyní již můžeme zapnout Bluetooth příkazem: |
| |
| <code> |
| /etc/init.d/bluetooth start |
| </code> |
| {{.:example.png}} Příklad výstupu příkazu pro terminál, startující Bluetooth, pokud je vše OK: |
| <code> |
| frontier@frontier-laptop:~$ sudo /etc/init.d/bluetooth start |
| [sudo] password for frontier: |
| * Starting bluetooth [ OK ] |
| </code> |
| Potom napíšeme do terminálu příkaz pro výpis seznamu všech dostupných zařízení společně s jejich MAC adresami: |
| |
| <code> |
| hciconfig |
| </code> |
| {{.:example.png}} Příklad výstupu terminálového příkazu, pokud není s bluetooth žádný problém (BD je ve výpisu MAC adresa Bluetooth Dongle): |
| <code> |
| frontier@frontier-laptop:~$ hciconfig |
| hci0: Type: USB |
| BD Address: 00:15:83:12:F2:09 ACL MTU: 310:10 SCO MTU: 64:8 |
| UP RUNNING PSCAN ISCAN |
| RX bytes:981 acl:0 sco:0 events:26 errors:0 |
| TX bytes:348 acl:0 sco:0 commands:24 errors:0 |
| </code> |
| Zapneme bluetooth na mobilním telefonu a v terminálu naťukáme příkaz, který ukáže všechna zařízení s aktivním a viditelným bluetooth (mobilní telefony) včetně jejich MAC adres: |
| |
| <code> |
| hcitool scan |
| </code> |
| {{.:example.png}} Příklad výstupu příkazu pro terminál, když je vše v pořádku (ve výpisu vidíme mobil Nokia 6600): |
| <code> |
| frontier@frontier-laptop:~$ hcitool scan |
| Scanning ... |
| 00:0E:6D:A0:9A:FF Nokia 6600 |
| </code> |
| {{.:tip.png}} Jestliže se Vám nezobrazí žádný konkrétní výstup příkazu hcitool scan (kde je uveden typ mobilního telefonu a jeho MAC adresa), podívejte se, prosím, zda ve svém mobilu máte zapnutou viditelnost Vašeho mobilního telefonu. |
| V případě, že máte (například z bezpečnostních důvodů) viditelnost Vašeho mobilu nastavenou jako skrytý (mobilní telefon), pak Vám ani příkaz hcitool scan neukáže vůbec žádné zařízení (mobil), navzdory tomu, že všechno funguje tak, jak má. |
| |
| Pokud chceme nastavit PIN nejprve v počítači (ne nejdříve v mobilu), zeditujeme jako root soubor pin v adresáři /etc/bluetooth/pin. Stačí tam dopsat čtyřmístné číslo a uložit jako root. Terminálový příkaz je následující: |
| |
| <code> |
| sudo gedit /etc/bluetooth/pin |
| </code> |
| Uvedený PIN slouží k potvrzení připojení mobilu a počítače, a bude ho pak mobilní telefon vyžadovat. Také PC bude potom chtít tento PIN jako "klíč" pro ověření při spárování mobilu a počítače. Zdali je mobil bezproblémově k dispozici můžeme otestovat následujícím příkazem v syntaxi l2ping MAC adresa mobilu, kterým pingneme na MAC adresu mobilu a hned uvidíme výsledek. |
| |
| {{.:example.png}} Příklad výstupu příkazu v terminálu pro dosažitelnost mobilu, pokud jede vše tak, jak má: |
| <code> |
| frontier@frontier-laptop:~$ sudo l2ping 00:0E:6D:A0:9A:FF |
| Ping: 00:0E:6D:A0:9A:FF from 00:15:83:12:F2:09 (data size 44) ... |
| 0 bytes from 00:0E:6D:A0:9A:FF id 0 time 42.85ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 1 time 16.91ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 2 time 16.99ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 3 time 16.97ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 4 time 15.98ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 5 time 16.97ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 6 time 14.97ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 7 time 14.98ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 8 time 14.96ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 9 time 15.95ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 10 time 14.97ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 11 time 16.99ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 12 time 15.99ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 13 time 16.96ms |
| 0 bytes from 00:0E:6D:A0:9A:FF id 14 time 15.99ms |
| 15 sent, 15 received, 0% loss |
| </code> |
| {{.:bluetooth.png}} Nejdříve musíme BT nastartovat, což uděláme buď v terminálu (viz výše) anebo ťukneme na ikonku Bluetooth (do panelu si ji přidáme příkazem bluetooth-applet) a po připojení bluetooth k počítači se v oznamovací části panelu objeví ikona signalizující stav (aktivní bluetooth). V případě, že se ikonka nezobrazí, podívat se do **Systém** → **Volby** → **Sezení**, zda tam je aktivovaný **Správce Bluetooth** (bluetooth-applet). Kromě toho si také zapnout bluetooth v systémových službách, tedy dát **Systém** → **Správa** → **Služby** a jako root zaškrtnout **Správa zařízení Bluetooth**. Samozřejmě je třeba nezapomenout zapnout Bluetooth připojení i na mobilu. |
| |
| |
| {{.:notice-viditelny.png}} |
| |
| |
| ====== Nastavení ====== |
| {{.:settings.png}} Nastavení Bluetooth je možné v **Systém** → **Volby** → **Bluetooth**, případně po kliknutí pravým tlačítkem myši na ikonu BT v panelu (ne v oznamovací oblasti panelu!) a vybráním **Nastavení**. Obrázek ukazuje již spárované zařízení, návod pro spárování je uveden níže. |
| |
| |
| {{.:bluetooth-nastaveni.png}} |
| |
| |
| ===== Vytvoření spojení ===== |
| {{.:ethernet.png}} První, co musíte udělat, pokud chcete Bluetooth používat, je vytvořit spojení mezi zařízeními, jinými slovy je **spárovat**. |
| |
| {{.:warning.png}} POZOR!!! Předtím je ale nezbytné spustit též **Sdílení souborů přes Bluetooth**, jinak žádný soubor nepošlete. |
| Zapnout na počítači toto sdílení souborů pomocí BT můžete buď prostřednictvím kláves Alt+F2 a příkazu gnome-obex-server anebo v **Aplikace** → **Příslušenství** → **Sdílení souborů přes Bluetooth**. |
| Pak by se v tray (area) panelu měla objevit ikonka bluetooth vysílače. |
| |
| {{.:warning.png}} gnome-obex-server přijímaný soubor ukládá do adresáře /home/user/Desktop. Tento je ovšem u lokalizovaných Ubuntu nahrazen adresářem Plocha, proto se soubor neuloží, ale Ubuntu nezobrazi ani chybovou hlášku. Řešením je např. vytvoření adresáře Desktop a povolením zápisu do něj. |
| |
| |
| Nejjednodušší je párování začít z jiného přístroje, např. mobilního telefonu. Poté se na počítači zobrazí upozornění a dialog pro zadání hesla (nazývaného také klíč anebo PIN), které jste zvolili na svém telefonu. |
| |
| |
| {{.:notice-sparovani.png}} |
| |
| |
| |
| {{.:sparovani-overeni.png}} |
| |
| |
| {{.:important.png}} Pokud máte problémy se spárováním mobilu a počítače s Ubuntu, ujistěte se, prosím, že jste postupně krok za krokem provedli všechny kroky uvedené výše. Častým problémem je, že bluetooth nefunguje, i když PC mobilní telefon "vidí" správně (MAC adresa mobilu), což je způsobeno jenom tím, že chybí nějaký výše uvedený krok. (například není zapnuto sdílení souborů přes Bluetooth) |
| |
| ====== Použití ====== |
| |
| ===== OBEX object push (přenos souborů) ===== |
| |
| ==== Odesílání souborů ==== |
| {{.:server.png}} Po spárování zařízení je již možné jednoduše **posílat soubory**. Nejjednodušší způsob odesílání souborů je v Nautilu kliknutí pravým tlačítkem na příslušný soubor a vybráním volby **Odeslat**. V otevřeném okně zvolte, že chcete posílat přes **Bluetooth (OBEX Push)** a vyberte zařízení, na které chcete soubor odeslat. |
| |
| |
| {{.:odeslat.png}} |
| |
| |
| |
| {{.:odesilani.png}} |
| |
| |
| {{.:info.png}} Další možnost je kliknout pravým tlačítkem myši na ikonu Bluetooth umístěnou v oznamovací oblasti, tedy tray (area) panelu a zvolit **Odeslat soubor...** |
| |
| Testováno v Ubuntu 8.04 s mobilem Nokia 3110 Classic a adaptérem BToes 2.0 EDR Micro Dongle od MSI, není problém. |
| Testovala jsem i mobil Nokia 6600 (Symbian series60), ale tam nefungovalo posílání souborů z mobilního telefonu. Posílání souborů počítač -> mobil bylo v pořádku. |
| |
| ==== Procházení souborů ==== |
| {{.:remote.png}} Přes Bluetooth je také možné prohlížet soubory na vzdáleném zařízení, např. mobilním telefonu. Klikněte pravým tlačítkem myši na ikonu v panelu a zvolte **Procházet zařízení...** Poté vyberte příslušné zařízení a následně se otevře prohlížeč souborů. |
| |
| |
| {{.:prochazet-zarizeni.png}} |
| |
| |
| ===== Audio ===== |
| Předpokládá se funkční [[PulseAudio]], pro větší pohodlí i GUI pro jeho ovládání (balíček //pavucontrol//) a znalost MAC adresy vašeho zařízení. MAC adresu nejsnáze zjistíte tak, že zařízení podle návodu připravíte ke spárování a použijete příkaz |
| |
| <code> |
| hcitool scan |
| </code> |
| ==== A2DP (stereo sluchátka) ==== |
| {{.:speaker.png}} A2DP (Advanced Audio Distribution Profile) protokol umožňuje jednosměrný přenos stereo zvuku. |
| |
| Do souboru //~/.asoundrc// (osobní nastavení ALSA) přidejte následující: |
| |
| <code> |
| pcm."BT sluchátka" { |
| type bluetooth |
| device XX:XX:XX:XX:XX:XX |
| profile hifi |
| } |
| </code> |
| kde XX:XX:XX:XX:XX:XX je MAC adresa vašich sluchátek. |
| |
| Pak upravte soubor //~/.pulse/default.pa// (osobní //default script// pro PulseAudio) tak, aby vypadal následovně: |
| |
| <code> |
| .include /etc/pulse/default.pa |
| |
| .nofail |
| load-module module-alsa-sink device="BT sluchátka" |
| </code> |
| POZOR: sice to není vidět, ale podle mé zkušenosti musí být na konci scriptu volný řádek, jinak PulseAudio selhává! |
| |
| POZNÁMKA: testováno na sluchátkách //Jabra BT620s// v Ubuntu 8.04 a až na pár detailů to funguje bezvadně. |
| |
| Odhlaste se a před opětovným přihlášením zapněte (pokud jste tak již neučinili) jak Bluetooth adaptér počítače, tak headset a spusťte //PulseAudio Volume Control//. Na záložce s nastavením hlasitosti výstupních zařízení by teď měl být vidět další ovladač hlasitosti pro vaše sluchátka. |
| |
| ==== HSP (headset) ==== |
| {{.:microphone.png}} HSP je protokol používaný mono headsety (hodí se pro VoIP a podobně). |
| |
| Do souboru //~/.asoundrc// (osobní nastavení ALSA) přidejte následující: |
| |
| <code> |
| pcm."BT headset" { |
| type bluetooth |
| device XX:XX:XX:XX:XX:XX |
| profile voice |
| } |
| </code> |
| kde XX:XX:XX:XX:XX:XX je MAC adresa vašeho headsetu. |
| |
| Pak upravte soubor //~/.pulse/default.pa// (osobní //default script// pro PulseAudio) tak, aby vypadal následovně: |
| |
| <code> |
| .include /etc/pulse/default.pa |
| |
| .nofail |
| load-module module-alsa-sink device="BT headset" |
| load-module module-alsa-source device="BT headset" |
| </code> |
| POZOR: sice to není vidět, ale podle mé zkušenosti musí být na konci scriptu volný řádek, jinak PulseAudio selhává! |
| |
| POZNÁMKA: To co skript provádí automaticky při spouštění PulseAudia se dá dělat i manuálně (případně shell scriptem) pomocí nástroje //pactl//. Příkaz pak vypadá například takto: |
| |
| <code> |
| pactl load-module module-alsa-source device="BT headset" |
| </code> |
| Odhlaste se a před opětovným přihlášením zapněte (pokud jste tak již neučinili) jak Bluetooth adaptér počítače, tak headset a spusťte //PulseAudio Volume Control//. Na záložce s nastavením hlasitosti vstupních a výstupních zařízení by teď měl být vidět další ovladač hlasitosti pro váš headset. |
| |
| ====== Odkazy ====== |
| * [[http://wiki.bluez.org/wiki/HOWTO/AudioDevices|Dokumentace na stránkách projektu BlueZ (oficiální Bluetooth stack Linuxu)]] |
| * [[http://fosswire.com/2008/01/11/a2dp-stereo-linux/|Původní článek o stereo Bluetooth headsetech na FOSSwire]] |
| |