From owner-svn-doc-all@FreeBSD.ORG Thu Mar 6 18:09:37 2014 Return-Path: Delivered-To: svn-doc-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C2ED8653; Thu, 6 Mar 2014 18:09:37 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A44866C5; Thu, 6 Mar 2014 18:09:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.8/8.14.8) with ESMTP id s26I9bqZ026448; Thu, 6 Mar 2014 18:09:37 GMT (envelope-from dru@svn.freebsd.org) Received: (from dru@localhost) by svn.freebsd.org (8.14.8/8.14.8/Submit) id s26I9bQP026447; Thu, 6 Mar 2014 18:09:37 GMT (envelope-from dru@svn.freebsd.org) Message-Id: <201403061809.s26I9bQP026447@svn.freebsd.org> From: Dru Lavigne Date: Thu, 6 Mar 2014 18:09:37 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r44154 - head/en_US.ISO8859-1/books/handbook/advanced-networking X-SVN-Group: doc-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire doc trees \(except for " user" , " projects" , and " translations" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Mar 2014 18:09:37 -0000 Author: dru Date: Thu Mar 6 18:09:37 2014 New Revision: 44154 URL: http://svnweb.freebsd.org/changeset/doc/44154 Log: Editorial pass through first 1/2 of Bluetooth chapter. Sponsored by: iXsystems Modified: head/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.xml Modified: head/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.xml ============================================================================== --- head/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.xml Thu Mar 6 17:23:54 2014 (r44153) +++ head/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.xml Thu Mar 6 18:09:37 2014 (r44154) @@ -2219,22 +2219,12 @@ freebsdap 00:11:95:c3:0d:ac 1 Bluetooth is a wireless technology for creating personal networks operating in the 2.4 GHz unlicensed band, with a range of 10 meters. Networks are usually formed ad-hoc from - portable devices such as cellular phones, handhelds and + portable devices such as cellular phones, handhelds, and laptops. Unlike Wi-Fi wireless technology, Bluetooth offers - higher level service profiles, such as FTP-like file servers, + higher level service profiles, such as FTP-like file servers, file pushing, voice transport, serial line emulation, and more. - The Bluetooth stack in &os; is implemented using the - &man.netgraph.4; framework. A broad variety of Bluetooth - USB dongles is supported by &man.ng.ubt.4;. - Broadcom BCM2033 based Bluetooth devices are supported by - the &man.ubtbcmfw.4; and &man.ng.ubt.4; drivers. The 3Com - Bluetooth PC Card 3CRWB60-A is supported by the - &man.ng.bt3c.4; driver. Serial and UART based Bluetooth - devices are supported by &man.sio.4;, &man.ng.h4.4; and - &man.hcseriald.8;. - This section describes the use of a USB Bluetooth dongle on a &os; system. It then describes the various Bluetooth protocols and @@ -2243,29 +2233,40 @@ freebsdap 00:11:95:c3:0d:ac 1 Loading Bluetooth Support - By default, Bluetooth device drivers are available as - kernel modules. Before attaching a device, load the driver - into the kernel: + The Bluetooth stack in &os; is implemented using the + &man.netgraph.4; framework. A broad variety of Bluetooth + USB dongles is supported by &man.ng.ubt.4;. + Broadcom BCM2033 based Bluetooth devices are supported by + the &man.ubtbcmfw.4; and &man.ng.ubt.4; drivers. The 3Com + Bluetooth PC Card 3CRWB60-A is supported by the + &man.ng.bt3c.4; driver. Serial and UART based Bluetooth + devices are supported by &man.sio.4;, &man.ng.h4.4;, and + &man.hcseriald.8;. + + Before attaching a device, determine which of the above + drivers it uses, then load the driver. For example, if the + device uses the &man.ng.ubt.4; driver: &prompt.root; kldload ng_ubt - If the Bluetooth device is present in the system during - system startup, load the module from + If the Bluetooth device will be attached to the system during + system startup, the system can be configured to load the module at boot + time by adding the driver to /boot/loader.conf: ng_ubt_load="YES" - Plug in the USB dongle. Output - similar to the following will appear on the console and in - the system log: + Once the driver is loaded, plug in the USB dongle. If the driver load was successful, output + similar to the following should appear on the console and in + /var/log/messages: ubt0: vendor 0x0a12 product 0x0001, rev 1.10/5.25, addr 2 ubt0: Interface 0 endpoints: interrupt=0x81, bulk-in=0x82, bulk-out=0x2 ubt0: Interface 1 (alt.config 5) endpoints: isoc-in=0x83, isoc-out=0x3, wMaxPacketSize=49, nframes=6, buffer size=294 - To start and stop the Bluetooth stack, use - &man.service.8;. It is a good idea to stop the stack before + To start and stop the Bluetooth stack, use its startup + script. It is a good idea to stop the stack before unplugging the device. When starting the stack, the output should be similar to the following: @@ -2291,29 +2292,14 @@ Number of SCO packets: 8 The Host Controller Interface (HCI) - provides a command interface to the baseband controller and - link manager as well as access to hardware status and control - registers. This interface provides a uniform method for - accessing Bluetooth baseband capabilities. The - HCI layer on the host exchanges data and - commands with the HCI firmware on the - Bluetooth hardware. The Host Controller Transport Layer - (physical bus) driver provides both HCI - layers with the ability to exchange information. - - A single netgraph node of type hci - is created for a single Bluetooth device. The - HCI node is normally connected to the - downstream Bluetooth device driver node and the upstream - L2CAP node. All HCI - operations must be performed on the HCI - node and not on the device driver node. The default name - for the HCI node is - devicehci. For more details, refer to + provides a uniform method for + accessing Bluetooth baseband capabilities. In &os;, a + netgraph HCI node + is created for each Bluetooth device. For more details, refer to &man.ng.hci.4;. One of the most common tasks is discovery of Bluetooth - devices in RF proximity. This operation is + devices within RF proximity. This operation is called inquiry. Inquiry and other HCI related operations are done using &man.hccontrol.8;. The example below shows how to find out @@ -2336,7 +2322,7 @@ Inquiry complete. Status: No error [00]< The BD_ADDR is the unique address of a Bluetooth device, similar to the MAC address of a network card. This address is needed for - further communication with a device. It is possible to + further communication with a device and it is possible to assign a human readable name to a BD_ADDR. Information regarding the known Bluetooth hosts is contained in /etc/bluetooth/hosts. The following @@ -2402,8 +2388,8 @@ Reason: Connection terminated by local h Bluetooth authentication requests. The default configuration file is /etc/bluetooth/hcsecd.conf. An example section for a cellular phone with the - PIN code arbitrarily set to - 1234 is shown below: + PIN code set to + 1234 is shown below: device { bdaddr 00:80:37:29:19:a4; @@ -2447,65 +2433,41 @@ hcsecd[16484]: Sending PIN_Code_Reply to Network Access with <acronym>PPP</acronym> Profiles - The Dial-Up Networking (DUN) profile is - mostly used with modems and cellular phones. The scenarios - covered by this profile are the following: - - - - Use of a cellular phone or modem by a computer as a + A Dial-Up Networking (DUN) profile can + be used to configure a cellular phone as a wireless modem for connecting to a dial-up Internet access - server, or for using other dial-up services. - - - - Use of a cellular phone or modem by a computer to - receive data calls. - - + server. It can also be used to configure a computer to + receive data calls from a cellular phone. Network access with a PPP profile can - be used in the following situations: - - - - LAN access for a single Bluetooth - device. - - - - LAN access for multiple Bluetooth - devices. - - - - PC to PC connection using PPP + be used to provide LAN access for a single Bluetooth + device or multiple Bluetooth devices. It can also provide + PC to PC connection using PPP networking over serial cable emulation. - - In &os;, these profiles are implemented with &man.ppp.8; and the &man.rfcomm.pppd.8; wrapper which converts a - RFCOMM Bluetooth connection into something + Bluetooth connection into something PPP can use. Before a profile can be used, a new PPP label must be created in /etc/ppp/ppp.conf. Consult &man.rfcomm.pppd.8; for examples. - In the following example, &man.rfcomm.pppd.8; is used - to open a RFCOMM connection to a remote - device with a BD_ADDR of 00:80:37:29:19:a4 - on a DUN RFCOMM channel. - The actual RFCOMM channel number will be - obtained from the remote device via SDP. + In this example, &man.rfcomm.pppd.8; is used + to open a connection to a remote + device with a BD_ADDR of 00:80:37:29:19:a4 + on a DUN RFCOMM channel: + + &prompt.root; rfcomm_pppd -a 00:80:37:29:19:a4 -c -C dun -l rfcomm-dialup + + The actual channel number will be + obtained from the remote device using the SDP protocol. It is possible to specify the RFCOMM channel by hand, and in this case &man.rfcomm.pppd.8; will not perform the SDP query. Use &man.sdpcontrol.8; to find out the RFCOMM channel on the remote device. - &prompt.root; rfcomm_pppd -a 00:80:37:29:19:a4 -c -C dun -l rfcomm-dialup - In order to provide network access with the PPP LAN service, &man.sdpd.8; must be running and a new entry for