@classmethod<EOL><INDENT>def create(cls, settings):<DEDENT>
fields = settings.rsplit('<STR_LIT:/>', <NUM_LIT:1>)<EOL>address = fields[<NUM_LIT:0>]<EOL>if len(fields) == <NUM_LIT:1>:<EOL><INDENT>port = find_rfcomm_port(address)<EOL><DEDENT>else:<EOL><INDENT>try:<EOL><INDENT>port = int(fields[<NUM_LIT:1>])<EOL><DEDENT>except ValueError:<EOL><INDENT>raise BluetoothConnectionError('<STR_LIT>'.format(settings))<EOL><DEDENT><DEDENT>return cls(address, port=port)<EOL>
Create a :class:`BluetoothConnection`:

        .. sourcecode:: python

            from escpos import BluetoothConnection
            from escpos.impl.epson import GenericESCPOS

            conn = BluetoothConnection.create('00:01:02:03:04:05')
            printer = GenericESCPOS(conn)
            printer.init()
            printer.text('Hello World!')

        :param str settings: Bluetooth settings. You must specify bluetooth
            address as six hexadecimal octets, like ``00:01:02:03:04:05``.
            You can also specify a port number after address using a forward
            slash, like ``00:01:02:03:04:05/2``. If there is no port number,
            this method will use SPD (*Service Discovery Protocol*) to find a
            suitable port number for the given address at RFCOMM protocol.

        :raises BluetoothPortDiscoveryError: If port is not specified and the
            algorithm cannot find a RFCOMM port for the given address.