disculpen por las preguntas multiples.
necesitaba para hoy poder tener el graficador pero no lo pude lograr.
no se que esta pasando pero no grafica los circulos en pantalla.
aca posteo el programa entero a ver que pasa

Option Explicit
--------------------------------------------------------------------------
Private Sub CmdEnviar_Click()
MSComm1.InBufferCount = 0 'reseta el buffer de recepcion
MSComm1.Output = TxtEnviar.Text & Chr$(13)
Do While MSComm1.OutBufferCount > 0
Loop
End Sub
----------------------------------------------------------------
Private Sub CmdSal_Click()
MSComm1.PortOpen = False
End Sub
----------------------------------------------------------------
Private Sub COM2_Click()
If MSComm1.PortOpen = True Then
MSComm1.PortOpen = False
End If
With MSComm1
.CommPort = 2 ' Se usara el puerto Com2
.Settings = "9600,N,8,1" ' Velocidad de Tx 19200 baud, no paridad, 8 bits de datos, y 1 bit de stop
.InputMode = comInputModeBinary
.InputLen = 0 ' El control MSComm leera todo el contenido del búfer de recepción
.RThreshold = 1
.RTSEnable = True
.SThreshold = 1
.PortOpen = True
End With
ledcom2.BackColor = &HFF00&
ledcom3.BackColor = &HFF&
End Sub
------------------------------------------------------------
Private Sub COM3_Click()
If MSComm1.PortOpen = True Then
MSComm1.PortOpen = False
End If
With MSComm1
.CommPort = 3 ' Se usara el puerto Com3
.Settings = "9600,N,8,1" ' Velocidad de Tx 19200 baud, no paridad, 8 bits de datos, y 1 bit de stop
.InputMode = comInputModeBinary
.InputLen = 0 ' El control MSComm leera todo el contenido del búfer de recepción
.RThreshold = 1
.RTSEnable = True
.SThreshold = 1
.PortOpen = True
End With
ledcom3.BackColor = &HFF00&
ledcom2.BackColor = &HFF&
End Sub
--------------------------------------------------------------
Private Sub limpiadatos_Click()
TxtRecibir = " "
End Sub
--------------------------------------------------------------
Private Sub MSComm1_OnComm()
Dim Y As String
Dim X As Integer
Select Case MSComm1.CommEvent
Case comEvReceive
Y = MSComm1.Input
TxtRecibir.Text = TxtRecibir.Text & StrConv(Y, vbUnicode) & vbCrLf
'TxtRecibir.SelStart = Len(TxtRecibir) '¿? ¡innecesario!
X = 100
if isnumeric(Y) then grafica.Circle (grafica.height - csng(Y) * 0.2, X), 0.5
End Select
End Sub
te cuento que si comento la parte de TxtRecibir.SelStart = Len(TxtRecibir) ,no leo la actualizacion de los datos en el textbox
lo que decis de x es correcto ,luego la voy a usar para cargar tiempos desde el pic , pero ahora no importa estoy midiendo en que posicion se detiene el motor