[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
?
Solved

RS232 Serial Port monitoring.

Posted on 2012-09-01
6
Medium Priority
?
1,473 Views
Last Modified: 2012-09-03
Good day

We've got a piece of hardware that interface with the RS232 port on the PC. (Prolific USB-to-Serial Comm Port)
The hardware manufacturer's support is very poor.

They supply a piece of software that clear the memory, when you click a couple of buttons, by sending about 200 separate bytes to the device.
I need to clear the memory from my own developed software, the manufacturer said I must use Portmon to find out how to clear it.
According to them you just send a single string to the device, but it's not that easy.

It seems like someone don't want us to clear the devises memory, we have tried everything to find out what data and time intervals are sent to the serial port.
We are sending data as close as possible, to what they are doing, but it still does not want to clear.
We have asked them how much they will charge us to develop an application just to clear the memory, but they don't even reply to that.

We have tried:
- Portmon (Serial Port Monitoring)
- Free Serial Port Monitor (Serial Port Monitoring)
- ApiMonitor (Api Monitoring)
- Device Monitoring studio (Serial Port Monitoring)
- Rec Studio (Try to decompile it)
- com0com (Null-modem emulator)

It seems like there need to be a specific timing between the serial outputs.
We cannot get the exact time intervals using any of the serial port monitoring applications, because it seems like as the buffer get full the duration between writes gets longer.
If we record it with the serial port monitoring apps, and put that exact time intervals in our own test app and then monitoring our app with the serial port monitoring the time intervals is different.

Any ideas how we can find out what the exact time intervals between the serial writes are?
0
Comment
Question by:koossa
  • 3
  • 2
6 Comments
 
LVL 84

Accepted Solution

by:
Dave Baldwin earned 1332 total points
ID: 38357563
Are you trying to clear the USB-to-Serial-Port adapter or an external device connected to it?  Except that they can send the data out a serial port, USB doesn't act like a serial port.  It is a packet driven network device.  Typically, it collects a packet and sends that to the other end which in this case is the serial port at the end of the USB cable.  I think that is why your timing measurements are not making sense.
0
 

Author Comment

by:koossa
ID: 38357644
Yes, I'm trying to clear the device connected to it.
0
 
LVL 84

Assisted Solution

by:Dave Baldwin
Dave Baldwin earned 1332 total points
ID: 38357656
Try finding a 'real' serial port plug-in card for your computer to get things working.  USB-to-Serial-Port adapters cause a lot of confusion because they don't act the same as real serial ports.  You should be able to get clearer info from a real serial port and then you can use that to figure out what you need to do with the USB-to-Serial-Port adapter.  That is also probably why the company doesn't want to deal with it.
0
A Cyber Security RX to Protect Your Organization

Join us on December 13th for a webinar to learn how medical providers can defend against malware with a cyber security "Rx" that supports a healthy technology adoption plan for every healthcare organization.

 
LVL 25

Assisted Solution

by:kode99
kode99 earned 668 total points
ID: 38358264
Does the software they provide work through the USB adapter?  If it does thats not likely the problem.  In general though I agree with DaveBaldwin,  USB serial adapters can be trouble.  I find they are somewhat unreliable (probably more of a driver issue) and also get a serial card with proper ports for anything that matters.

What I would suggest is you tap the actual serial line and capture the traffic on the line directly when the provided software is doing its thing.  This would let you see the timing they use if thats what the problem is.  

Here's an example of the a easy to use device to do this,
http://www.stratusengineering.com/EZTap.html 

It probably seems pricey for what it is but they include the software for 'free'.  You might be able to find something for less if you search around for 'serial tap' or 'rs232 tap'.

It could also be a flow issue,  do they use the DTR/RTS/DSR etc lines at all?  aka Hardware flow control.  Its something that the company might just assume you are using.

Here's a link about flow control,
http://www.lammertbies.nl/comm/info/RS-232_flow_control.html

Otherwise also a good site for explaining serial communications.

It is possible to make your own serial tap but its alot of messing around and you probably need something out of the box that just works.  If you have to troubleshoot your test device its gonna slow down the actual work.
0
 

Author Closing Comment

by:koossa
ID: 38360264
Thank you very much, when measuring the timing on a standard serial port, it works!!
0
 
LVL 84

Expert Comment

by:Dave Baldwin
ID: 38361396
You're welcome.  Glad you got it working.
0

Featured Post

Sign your company up to try the MB 660 headset now

Take control and stay focused in noisy open office environments with the MB 660. By reducing background noise, you can revitalize your office and improve concentration.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article outlines why you need to choose a backup solution that protects your entire environment – including your VMware ESXi and Microsoft Hyper-V virtualization hosts – not just your virtual machines.
If you're a modern-day technology professional, you may be wondering if certifications are really necessary. They are. Here's why.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Suggested Courses

834 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question