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.\" 27.Dd April 30, 2018 28.Dt BTHIDD 8 29.Os 30.Sh NAME 31.Nm bthidd 32.Nd Bluetooth HID daemon 33.Sh SYNOPSIS 34.Nm 35.Fl h 36.Nm 37.Op Fl a Ar BD_ADDR 38.Op Fl c Ar file 39.Op Fl H Ar file 40.Op Fl p Ar file 41.Op Fl t Ar val 42.Op Fl u 43.Sh DESCRIPTION 44The 45.Nm 46daemon handles remote Bluetooth HID devices. 47.Pp 48The options are as follows: 49.Bl -tag -width indent 50.It Fl a Ar BD_ADDR 51Specify the local address to listen on. 52By default, the server will listen on 53.Dv ANY 54address. 55The address can be specified as BD_ADDR or name. 56If a name was specified, the 57.Nm 58daemon will attempt to resolve the name via 59.Xr bt_gethostbyname 3 . 60.It Fl c Ar file 61Specify path to the configuration file. 62The default path is 63.Pa /etc/bluetooth/bthidd.conf . 64.It Fl d 65Do not detach from the controlling terminal, i.e., run in foreground. 66.It Fl H Ar file 67Specify path to the known HIDs file. 68The default path is 69.Pa /var/db/bthidd.hids . 70.It Fl h 71Display usage message and exit. 72.It Fl p Ar file 73Specify path to the PID file. 74The default path is 75.Pa /var/run/bthidd.pid . 76.It Fl t Ar val 77Specify client rescan interval in seconds. 78The 79.Nm 80daemon will periodically scan for newly configured Bluetooth HID devices or 81disconnected 82.Dq passive 83Bluetooth HID devices and will attempt to establish an outgoing connection. 84The default rescan interval is 10 seconds. 85.It Fl u 86Enable support for input event device protocol. 87Requires evdev and uinput drivers to be loaded with 88.Xr kldload 8 89or compiled into the kernel. 90.El 91.Sh KNOWN LIMITATIONS 92The 93.Nm 94daemon currently does not handle key auto repeat and double click mouse events. 95Those events work under 96.Xr X 7 Pq Pa ports/x11/xorg-docs 97just fine, 98but not in text console. 99.Pp 100This manual page needs more work. 101A manual page documenting the format of the 102.Pa /etc/bluetooth/bthidd.conf 103configuration file is needed as well. 104.Sh FILES 105.Bl -tag -width ".Pa /etc/bluetooth/bthidd.conf" -compact 106.It Pa /etc/bluetooth/bthidd.conf 107.It Pa /var/db/bthidd.hids 108.It Pa /var/run/bthidd.pid 109.El 110.Sh SEE ALSO 111.Xr kbdmux 4 , 112.Xr vkbd 4 , 113.Xr bthidcontrol 8 114.Sh AUTHORS 115.An Maksim Yevmenkin Aq Mt m_evmenkin@yahoo.com 116.Sh CAVEATS 117Any Bluetooth HID device that has 118.Dv HUP_KEYBOARD 119or 120.Dv HUP_CONSUMER 121entries in its descriptor is considered as 122.Dq keyboard . 123For each 124.Dq keyboard 125Bluetooth HID device, 126the 127.Nm 128daemon will use a separate instance of the virtual keyboard interface 129.Xr vkbd 4 . 130Therefore the 131.Xr kbdmux 4 132driver must be used to properly multiplex input from multiple keyboards. 133