COM port in use when interfacing with Roborealm

Sorry to be a bother. This is my second post and its another problem. Thanks to Thurston for answering my first question. He solved my problem in one go. Hopefully someone can help me with this too.

I am using Roborealm, its a computer vision software. I am outputing 2 numbers on serial COM1. They represent the X and Y co-ordinates of an object being tracked.

When I upload my sketch to the arduino(COM3) using the arduino IDE and then switch to COM1, when I open the serial monitor it tells me another program is using COM1. I know that it is Roborealm that is using COM1 since I want to send data to the Arduino using this port.

Both are using a Baud rate of 9600 if that makes a difference.

I am sure that I am doing something wrong and I don't understand COM ports correctly.

I am still n00b :o with this stuff so help is much appreciated.

Cheers (and I promise this will be my last topic I start today)

What do you mean by:-

using the arduino IDE and then switch to COM1,

Your PC ensures only one program can access any one COM port at any one time.

Therefore you have to close down Roborealm, download the arduino code and then open Roborealm again.

That's the way it is.

Thanks for the reply Grumpy_Mike.

I have no problem uploading the sketch to the arduino board, but when I want to monitor the data that is being communicated between Roborealm and Arduino across COM1 then I run into trouble.

I am running Windows 7. Does that make any difference?

The serial port is like a phone line. The phone rings. You answer. It's roborealm. Now the Serial Monitor tries to call. It gets a busy signal. Hang up on roborealm, and you can answer the call from the Serial Monitor. Now roborealm tries to call, and it gets a busy signal.

Now, if you had a mega with multiple phone lines, you could talk to roborealm AND the serial monitor at the same time.

You appear to be saying that the arduino looks like both COM1 and COM3, it can not do this. It must be only on one COM port.

COM1 is normally reserved for the internal RS232 drive. So I assume COM3 is your arduino (it usually is).

What you have to do is to change roborealm so it is talking to COM3 not COM1. There might be some configuration or options to do this.

I got it! It just clicked! Thanks for the help guys haha.

I thought that when I choose a different port from the options, then the Arduino is connected to that port when in fact it is always connected to COM3.

So what I need to do is to change Roborealm to communicate across COM3 as well.

Correct me if I'm wrong.

And thanks heaps for the help guys :slight_smile: Much appreciated

EDIT: It worked! All this time Roborealm only showed COM1 but I restarted it with the Arduino attached and now I can select COM3 as well. Thanks for the help guys. My servo is moving to the movements of an object being tracked now :smiley: