This function tells the FTP component that the FTP Client wants to communicate to the indicated FTP Server, referenced with the ‘BtAddress’, ‘ServiceId’ or ‘ServiceName’. Neither the ‘ServiceId’, nor the ‘ServiceName’ are mandatory, thus either ‘ServiceId’ or ‘ServiceName’ makes a service unique for a particular Push Server.
The specified 'ConnectInfo.MaxObexPktLen', is negotiated with the FTP Server. A connection can be established with a packet size smaller than or equal to the 'ConnectInfo.MaxObexPktLen'.
If ‘ServiceId’ is specified, the connect request can be confirmed positive, meaning the particular service was found, or negative (service was not found). If the value of ‘ServiceId’ is NULL, a service search is done at the indicated Bluetooth device.
If ‘ServiceName’ is specified and one service is found, containing the exact name, the connection will be made and an FTP_CONNECT_CNF will be replied.
I'd much rather be reading Nano chapters by same_sky, totte, and carrieb.