1.\" Copyright (c) 2006 Maksim Yevmenkin <m_evmenkin@yahoo.com> 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $Id: bthidd.8,v 1.1 2006/09/07 21:36:55 max Exp $ 26.\" $FreeBSD$ 27.\" 28.Dd April 30, 2018 29.Dt BTHIDD 8 30.Os 31.Sh NAME 32.Nm bthidd 33.Nd Bluetooth HID daemon 34.Sh SYNOPSIS 35.Nm 36.Fl h 37.Nm 38.Op Fl a Ar BD_ADDR 39.Op Fl c Ar file 40.Op Fl H Ar file 41.Op Fl p Ar file 42.Op Fl t Ar val 43.Op Fl u 44.Sh DESCRIPTION 45The 46.Nm 47daemon handles remote Bluetooth HID devices. 48.Pp 49The options are as follows: 50.Bl -tag -width indent 51.It Fl a Ar BD_ADDR 52Specify the local address to listen on. 53By default, the server will listen on 54.Dv ANY 55address. 56The address can be specified as BD_ADDR or name. 57If a name was specified, the 58.Nm 59daemon will attempt to resolve the name via 60.Xr bt_gethostbyname 3 . 61.It Fl c Ar file 62Specify path to the configuration file. 63The default path is 64.Pa /etc/bluetooth/bthidd.conf . 65.It Fl d 66Do not detach from the controlling terminal, i.e., run in foreground. 67.It Fl H Ar file 68Specify path to the known HIDs file. 69The default path is 70.Pa /var/db/bthidd.hids . 71.It Fl h 72Display usage message and exit. 73.It Fl p Ar file 74Specify path to the PID file. 75The default path is 76.Pa /var/run/bthidd.pid . 77.It Fl t Ar val 78Specify client rescan interval in seconds. 79The 80.Nm 81daemon will periodically scan for newly configured Bluetooth HID devices or 82disconnected 83.Dq passive 84Bluetooth HID devices and will attempt to establish an outgoing connection. 85The default rescan interval is 10 seconds. 86.It Fl u 87Enable support for input event device protocol. 88Requires evdev and uinput drivers to be loaded with 89.Xr kldload 8 90or compiled into the kernel. 91.El 92.Sh KNOWN LIMITATIONS 93The 94.Nm 95daemon currently does not handle key auto repeat and double click mouse events. 96Those events work under 97.Xr X 7 Pq Pa ports/x11/xorg-docs 98just fine, 99but not in text console. 100.Pp 101This manual page needs more work. 102A manual page documenting the format of the 103.Pa /etc/bluetooth/bthidd.conf 104configuration file is needed as well. 105.Sh FILES 106.Bl -tag -width ".Pa /etc/bluetooth/bthidd.conf" -compact 107.It Pa /etc/bluetooth/bthidd.conf 108.It Pa /var/db/bthidd.hids 109.It Pa /var/run/bthidd.pid 110.El 111.Sh SEE ALSO 112.Xr kbdmux 4 , 113.Xr vkbd 4 , 114.Xr bthidcontrol 8 115.Sh AUTHORS 116.An Maksim Yevmenkin Aq Mt m_evmenkin@yahoo.com 117.Sh CAVEATS 118Any Bluetooth HID device that has 119.Dv HUP_KEYBOARD 120or 121.Dv HUP_CONSUMER 122entries in its descriptor is considered as 123.Dq keyboard . 124For each 125.Dq keyboard 126Bluetooth HID device, 127the 128.Nm 129daemon will use a separate instance of the virtual keyboard interface 130.Xr vkbd 4 . 131Therefore the 132.Xr kbdmux 4 133driver must be used to properly multiplex input from multiple keyboards. 134