Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
RFCOMM_SPPD(1)		FreeBSD	General	Commands Manual		RFCOMM_SPPD(1)

     rfcomm_sppd -- RFCOMM Serial Port Profile daemon

     rfcomm_sppd [-bhtS] -a address -c channel

     The rfcomm_sppd utility is	a Serial Port Profile daemon.  It can operate
     in	two modes: client and server.

     In	client mode, rfcomm_sppd opens RFCOMM connection to the	specified
     address server and	channel.  Once connection is established, the
     rfcomm_sppd utility provides access to the	server's remote	serial port
     via stdin/stdout or via pts(4) interface if -t option was specified.

     If	the -S option is specified, rfcomm_sppd	will operate in	server mode
     and act as	RFCOMM server, listening on ANY	address	and advertising	a vir-
     tual serial port via the sdpd(8) daemon.  If -t options was specified,
     the server	side of	the virtual serial port	is attached to a pseudo-termi-
     nal.  Otherwise the virtual serial	port is	attached to the	stdin/stdout.
     rfcomm_sppd should	be run as root in order	to communicate with sdpd(8) in
     this case.

     The rfcomm_sppd utility opens both	master and slave pseudo	terminals.
     This is done to ensure that RFCOMM	connection stays open until
     rfcomm_sppd is terminated.	 The data received from	the master pseudo ter-
     minal are sent over the RFCOMM connection.	 The data received from	the
     RFCOMM connection are written into	master pseudo terminal.	 The applica-
     tion in its turn opens the	slave pseudo terminal and operates on it just
     like it would operate over	the standard serial port.

     The options are as	follows:

     -a	address
	     In	client mode, this required option specifies the	address	of the
	     remote RFCOMM server.  If this option is specified	in server
	     mode, rfcomm_sppd will only accept	connections from the Bluetooth
	     device with address address.  The address can be specified	as
	     BD_ADDR or	name.  If name was specified then rfcomm_sppd utility
	     will attempt to resolve the name via bt_gethostbyname(3).

     -b	     Detach from the controlling terminal, i.e., run in	background.

     -c	channel
	     In	both client and	server mode, this option specifies the RFCOMM
	     channel to	connect	to or listen on.  In server mode, the channel
	     should be a number	between	1 and 30.  If not specified,
	     rfcomm_sppd will try to bind to "wildcard"	RFCOMM channel number.
	     The actual	RFCOMM channel will be obtained	via getsockname(2)
	     call and will be used to register Serial Port service with
	     sdpd(8).  In client mode, the channel could either	be a number
	     between 1 and 30 or a service name.  Supported service names are:
	     DUN (for DialUp Networking	service), FAX (for Fax service), LAN
	     (for LAN Access Using PPP service)	and SP (for Serial Port	ser-
	     vice).  If	channel	was not	specified then rfcomm_sppd utility
	     will try to obtain	RFCOMM channel for Serial Port service via
	     Service Discovery Protocol	from the server.

     -h	     Display usage message and exit.

     -S	     Server mode; see DESCRIPTION.

     -t	     Use slave pseudo tty.  If not set stdin/stdout will be used.
	     This option is required if	-b option was specified.

     /dev/pts/[num]  slave pseudo terminals

     The rfcomm_sppd utility exits 0 on	success, and >0	if an error occurs.

	   rfcomm_sppd -a 00:01:02:03:04:05 -c 1 -t

     Will start	the rfcomm_sppd	utility	and open RFCOMM	connection to the
     server at 00:01:02:03:04:05 and channel 1.	 Once the connection has been
     established, a pts(4) can be used to talk to the remote serial port on
     the server.  rfcomm_sppd prints the name of the pts(4) to use on stdout.

     bluetooth(3), ng_btsocket(4), pts(4), rfcomm_pppd(8), sdpd(8)

     Maksim Yevmenkin <>

     Please report if found.

FreeBSD	13.0			April 21, 2008			  FreeBSD 13.0


Want to link to this manual page? Use this URL:

home | help