|  Následující verze |  Předchozí verze | 
| bluetooth [2012/07/16 13:08]  – vytvořeno 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]] | 
 |  |