OK, just tried a strategy like this:
Sub Serial1_Connected (Success As Boolean)
Log("connected: " & Success)
If Success = False Then
Log(LastException.Message)
Timer1.Enabled = False
UNIT_CONNECTED = False
TryNextPort
Else
CallSub(Settings,"Connected")
'we're connected, now start a timer and if ever we go 200ms with no data, disconnect and re-initiate BT listening
AStream.Initialize(serial1.InputStream, serial1.OutputStream, "AStream")
End If
End Sub
Sub Connect(mac As String)
serial1.Connect3(mac, port)
savedmac = mac
End Sub
Sub TryNextPort
port = port+1
Connect(savedmac)
End Sub
I started with port = 1 as calling with port set to 0 causes an exception. Here's what came back from the Log:
connected: false
java.io.IOException: Permission denied
connected: false
java.io.IOException: Permission denied
connected: false
java.io.IOException: Software caused connection abort
connected: false
java.io.IOException: Permission denied
connected: false
java.io.IOException: Software caused connection abort
connected: false
java.io.IOException: Permission denied
connected: false
java.io.IOException: Software caused connection abort
connected: false
java.io.IOException: Permission denied
connected: false
java.io.IOException: Software caused connection abort
connected: false
java.io.IOException: Permission denied
connected: false
java.io.IOException: Software caused connection abort
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Software caused connection abort
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered
connected: false
java.io.IOException: Too many symbolic links encountered