Non sarebbe più corretto cosi?
La call dopo aver assegnato GSR
Però io avrei usato Timer e non la SUB ATTENDI che hai realizzato tu...
La call dopo aver assegnato GSR
B4X:
Sub AStream_NewData (Buffer() As Byte)
Dim newDataStart As Int = sb.Length
sb.Append(BytesToString(Buffer, 0, Buffer.Length, charset))
Dim s As String = sb.ToString
Dim start As Int = 0
For i = newDataStart To s.Length - 1
Dim c As Char = s.CharAt(i)
If i = 0 And c = Chr(10) Then '\n...And
start = 1 'might be a broken end of line character
Continue
End If
If c = Chr(10) Then '\n
'IptMain.GSR=s.SubString2(start, i)
'CallSub2(Training,"ValoreGSR",IptMain.GS)
start = i + 1
Else If c = Chr(13) Then '\r
'
If start =0 And i=7 Then
IptMain.GSR=s.SubString2(start, i)
Log("Conduttanza " & IptMain.GSR)
CallSub2(Training,"GSROk",IptMain.GSR)
End If
If i < s.Length - 1 And s.CharAt(i + 1) = Chr(10) Then '\r\n
i = i + 1
End If
start = i + 1
End If
Next
If start > 0 Then sb.Remove(0, start)
End Sub
Però io avrei usato Timer e non la SUB ATTENDI che hai realizzato tu...