1.\" $NetBSD: bthidev.4,v 1.9 2007/12/02 19:59:11 wiz Exp $ 2.\" 3.\" Copyright (c) 2006 Itronix Inc. 4.\" All rights reserved. 5.\" 6.\" Written by Iain Hibbert for Itronix Inc. 7.\" 8.\" Redistribution and use in source and binary forms, with or without 9.\" modification, are permitted provided that the following conditions 10.\" are met: 11.\" 1. Redistributions of source code must retain the above copyright 12.\" notice, this list of conditions and the following disclaimer. 13.\" 2. Redistributions in binary form must reproduce the above copyright 14.\" notice, this list of conditions and the following disclaimer in the 15.\" documentation and/or other materials provided with the distribution. 16.\" 3. The name of Itronix Inc. may not be used to endorse 17.\" or promote products derived from this software without specific 18.\" prior written permission. 19.\" 20.\" THIS SOFTWARE IS PROVIDED BY ITRONIX INC. ``AS IS'' AND 21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 22.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 23.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ITRONIX INC. BE LIABLE FOR ANY 24.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 25.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 26.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 27.\" ON ANY THEORY OF LIABILITY, WHETHER IN 28.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 29.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 30.\" POSSIBILITY OF SUCH DAMAGE. 31.\" 32.Dd April 10, 2007 33.Dt BTHIDEV 4 34.Os 35.Sh NAME 36.Nm bthidev 37.Nd Bluetooth Human Interface Device support 38.Sh SYNOPSIS 39.Cd "bthidev* at bthub?" 40.Pp 41.Cd "btkbd* at bthidev? reportid ?" 42.Cd "btms* at bthidev? reportid ?" 43.Sh DESCRIPTION 44The 45.Nm 46driver handles all Bluetooth Human Interface Devices. 47Each HID device can have several components, e.g., a keyboard and 48a mouse. 49These components use different report identifiers to 50distinguish which component data is coming from. 51The 52.Nm 53driver may have several children attached that handle particular 54components and dispatches data to them based on the report id. 55.Pp 56Normally, Bluetooth HIDs will be attached using the 57.Xr btdevctl 8 58program. 59The following properties are used by the 60.Nm 61driver during autoconfiguration: 62.Bl -tag -width interrupt_psmXX 63.It local-bdaddr 64Local device address. 65.It remote-bdaddr 66Remote device address. 67.It service-name 68The 69.Nm 70driver matches the 71.Sq HID 72service. 73.It control-psm 74This, if set, will indicate the PSM to use for the Control channel. 75If not set, 76.Dv L2CAP_PSM_HID_CNTL 77will be used. 78.It interrupt-psm 79This, if set, will indicate the PSM to use for the Interrupt channel. 80If not set, 81.Dv L2CAP_PSM_HID_INTR 82will be used. 83.It descriptor 84This required binary blob is the HID descriptor containing information about 85reports the device will produce, and obtained via SDP. 86.It reconnect 87If this boolean value is set, and is true, then the 88.Nm 89driver will initiate reconnections to the remote device when no 90connection is present. 91.It link-mode 92This optional string represents the link mode of the baseband link, and 93may be one of 94.Sq auth , 95.Sq encrypt , 96or 97.Sq secure . 98.El 99.Pp 100When the 101.Nm 102driver has configured its children, it will initiate a connection 103to the remote device. 104If this fails and the reconnect flag is not set, it will then wait for 105the device to initiate the connection. 106.Sh SEE ALSO 107.Xr bluetooth 4 , 108.Xr bthub 4 , 109.Xr btkbd 4 , 110.Xr btms 4 , 111.Xr btdevctl 8 112.Sh HISTORY 113The 114.Nm 115driver was written by 116.An Iain Hibbert 117under the sponsorship of Itronix, Inc. and first appeared in 118.Nx 4.0 . 119