Probing a COM port

A colleague of mine is using an OMEGA brand handheld thermocouple meter to measure up to four temperatures from his rig. The device has an RS232 computer link to download the real-time data to an application provided with the device. My colleague would like to instead use LabVIEW to interface with the device, but the manufacturers are not willing to disclose information on the communication link. Necessary information such as baud rate, parity or stop bits, or a list of the actual commands passed between the device and the PC.
My question is this: Is there any way that LabVIEW can be used to 'monitor' or 'probe' the existing connection to see how the devices talk to each other? Then, use this information to build a set of vis to do the same job, allowing my colleague to knit the real-time information into his existing LabVIEW codes?
Thanks in advance,
Riggy

That's great, thanks!
(I realise that LV isn't the best approach to monitoring a COM port, but can I take it that it can't do this?)
Message Edited by Riggy on 03-06-2008 04:28 PM

Similar Messages

  • Not enough memory error when disconnecting device on a virtual com port

    I maintain a large application that collects data from many data source channels (using coustom hardware read thru a conventional COM port) and I am adding a GPS data source on a USB port using a virtual COM port driver. The application runs 24/7/365 and works well including the GPS data, if undisturbed. However, the application needs to tolerate a physical disconnect and reconnect of the GPS device without user intervention.  When I disconnect the GPS, the application becomes unresponsive most of the time (the mouse responds and other programs that are open on the desktop work fine). I abstracted the serial code and made a separate vi (below) for testing.  When I disconnect the GPS from the COM port, I get a "Not enough memory to complete this operation" message 9 out of 10 times and the vi is unresponsive until I clear the error message (the tenth time it continues working). I built the vi this way to collect data continuously. I suspect that this is the problem with the full app but I don't see the Not enough memory message there and therefore the full app does not respond and must be terminated via Task Manager. The full app runs full screen mode.
    The LV app runs on Windows XP and LabView 7.0 (the client doesn't want to upgrade).
    I have tried probing the error message lines at all points in the vi but they don't show anything when the 'Not enough memory' message occurs (they show the expected device not found error after clearing the error message).
    Any suggestions would be greatly appreciated,
    Mel
    Still learning LV......
    Please post any code suggestions as graphics as I don't have access to any version of LabView newer than 7.0.
    Attachments:
    SerialPortRead.png ‏22 KB

    Jeff·Þ·Bohrer wrote:
    First, there likley WAS human intervention that caused the GPS device to be removed.  That wont happen when you lock the device inside a cabinet with the rest of the test system.  Physical access control first!  If someone goes and mucks with your experiment setup while its running, that's a "poor Labratory procedure" not a "new software requirement"
    I think he was meaning to say without user intervention on the software side.
    I have seen odd behavior if you disconnect from a com port whilst LV still has the port open.   There are a couple things I myself woud try, being the experimenting type that I am.  Perhaps setting up a com port check to see if it has a valid connection before polling for data. If not then a blank case or some other generic code. 
    The issue with this would be if it became disconnected while LV was polling data.  Hard to get around this condition.  Is there a way that the cause of the of the connect/disconnect (whether human or otherwise) could be set up so that a signal can be sent to the controlling system (pre-disconnect and post-connect) to trigger an event to handle the software side?  A simple signal switch or something.  Just thinking out loud. Withoug knowing all the particulars, it's hard to make detailed recommendations.
    Doug
    "My only wish is that I am capable of learning each and every day until my last breath."

  • Write among COM ports in the same PC without cables

    How can I write to the memory address(es) of a serial COM port?  I would like to send data from one serial COM port to another in a manner similar to the that of the 'Simple Data Client' and 'Simple Data Server' vi examples.  This must sound strange since this is exactly what a null modem cable will do, externally.  I would like to eliminate the cable connection between COM ports that exsit in the same PC and communicate between them, internal to the PC, somehow. 
    Currently, I am using a LabVIEW vi to read a serial message on COM1, translate it, send the trsanslation out on COM2, so that a separate windows program (no .DLLs to interface with LabVIEW) can read the message on COM 3.  COM 2 and COM 3 are connected by a null-modem cable.  This requires three COM ports, and two serial cables.  I realize that I can use a physical loop-back jumper on COM2, for instance, where I send and read the translated message on COM2, but I still wonder if there is a method for doing this in memory, or something. Is there a way to accomplish the same objective with one cable (into COM1), no loop-back jumpers, and only two serial ports?  In summary, I want to read on COM 1, translate in LabVIEW, then write directly to another COM port, internally, without using a serial cable.  Can the 'IN PORT' or 'OUT PORT' vi's apply here?  Are these tools only for parallel ports?
    Hope this is not too confusing....  It seems like I am always trying to do something with LabVIEW that was not meant to be done....
    Thanks.

    Thank you.  If I pay the price they ask, this looks like it will create and share virtual COM ports - exactly what I need.  However, I would really like to find a way to do this in LabVIEW, such that I do not have to make my application dependent on another piece of third party software.  The 'Simple Data Client.vi' and 'Simple Data Server.vi', included in the shipset examples, seem to do this for TCP/ IP ports.  I wonder why the COM ports cannot be addressed at the memory level, in a similar manner???

  • Can two users share a COM port?

    I have a system services Labview executable that opens a VISA session on a COM port.
    But I also have a User Interface VI that needs to communicate with the device on same COM port.
    Is this possible?  Can I use a Shared Variable to keep the VISA Resource name and have multiple users (one at a time) communicate with the device?

    LabVIEW semaphores and all other LabVIEW objects like queues, notifiers, events, etc are not only process local objects only but even application context local only. While this makes no difference for built applications it is important inside the development environment as each LabVIEW project lives in its own application context (and tools started from the Tools menu run in yet another context). To do what you want to do, you need to implement some form of interapplication communication as Mark already mentioned. Or you can access named OS semaphores by calling OS APIs.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • How can I write to multiple daisy-chained network serial addresses through a single COM port?

    I have a VI to write to 3 PI Mercury motor controllers using daisy chained RS232 connected via a Prolific USB-to-Serial adapter. I know that it is possible to talk to the individual controllers because the PI terminal that I have recognises the addresses of multiple controllers and designates them Device 1,2,3. The VISA resource name when configuring the port just comes up as COM5 most of time, with seemingly no way to specify an address on that COM port. Occasionally the VISA resource is ASRL5::INSTR and as this is disconnected and re-connected, this address moves up a number (e.g ASRL7::INSTR). Can anybody tell me how I can configure my serial communication to allow me to individually communicate with the different devices through a single COM port?

    What does the manual say about addressing? RS-232 is not multidrop, the resource name is correct, and there is no additional configuration needed. There would have be a specific write in order to address a certain controller.

  • How to use shared variables to address multiple Watlow controller​s on the same COM port

    Hello,
    I am trying to use LabVIEW 2010 to control 4 Watlow temperature controllers on one COM port. 3 are Model 96 and 1 is an EZ zone controller. Each controller has a unique modbus address, and I am trying to read from and write to individual registers (such as closed loop setpoint) using shared variables. I am getting return data when reading (although the data appears to be invalid), but am unable to change the value in the register by writing. How can I be sure that the Modbus server is sending commands to the correct controller?
    Chuck
    Solved!
    Go to Solution.

    Peter,
    Thanks for the reply. I have actually solved that problem. I realized that the Modbus server address has to be the same as the controller's Modbus address.
    I have, however, run into another problem. Perhaps you could help me with that. I have a system with 4 Watlow controllers, 3 are series 96 controllers, one is PID only and 2 are ramping. The 4th controller is an EZ zone. I am using RS485 for communications and the controllers are all wired in parallel for communications and power.
    I have set up 2 Modbus servers for 2 of the controllers.
    This is the first I have ever worked with Modbus based communications. I have successfully programmed using the Modbus read/write VIs, and am wanting to move to shared variables. My questions right now revolve around addressing, Modbus I/O servers and COM ports. Specifically, at this point, I know the addresses need to match up between the server and the slave device (Watlow controller in my case), how many servers can I create and use on one COM port? If the number is limited, is there a way I can specify an address that I want the server to talk to? Will the broadcast mode work to request data values from the controllers?
    I'd appreciate any information you can help me with, or if you could point me to some sort of concise 'How-To' for Modbus communication.
    Thanks.
    Chuck

  • GPS Error on F3507g & Windows 7 "The GPS NMEA COM Port is not available" x200

    I have an X200 with a WWAN Card 43R153 (Ericsson F3507g) running Window 7.
    The WWAN reliably connects to Vodafone but I can't get the GPS to work.
    Device manager shows this port Enabled:-
    Ericsson E3507G Mobile Broadband MiniCard GPS Port (Com8)
    Driver Invogps.sys from Ericsson AB, Version 1.0.0.28  29/09/2008.
    Thinkvantage GPS version 2.50 is also installed and Lenovo System Update says everything is up to date.
    When I "Turn on GPS" or run 'Lenovs GPS"  I get this message:-
    The GPS NMEA COM port is not available. You need to check the following things.
    - Another GPS application is using the COM port.
    - COM ports is disabled. You can enable the COM port in the Device Manager.
    Location and Other Sensors shows nothing installed.
    I've tried deleting all the drivers and reinstalling but not luck.
    Has anyone else had the same problem and found a solution. I can't think of anything else to try.
    ThinkPad X200 7459-1P0

    If you are running a Windows 7 Weather Gadget on your desktop, try shutting it down entirely and see if that changes your GPS "in use" problem.
    Cheers,
    Bill
    I don't work for Lenovo

  • HyperTerminal sees a COM port but VISA does not

    It should not be possible that HyperTerminal sees a COM port but VISA does not. Does anyone know why or have any ideas?
    Here's some more info: I wrote a LabView (LV) program and deployed it (via the Application Builder) to some of our production department's PCs (some Windows XP and some Windows 7). We use it to set up products we design and manufacture through our device's USB serial port. The USB port is actually a virtual COM port (VCP) - a USB to Serial converter or "bridge". We have a custom driver for our device and since each device's USB bridge chip is programmed with a different serial number, every time we connect a new device to the PC the installer runs and assigns a new COM port number. This is so our customers can use multiple devices on a PC. Fine. On one of our production PC's we were close to  COM900 ports (HyperTerminal sees only up to COM256) when suddenly Win7 would not allow any more. We were able to uninstall orphaned (non-present) COM ports from DeviceManager ("DM") by starting it from a command console (DOS window) with a special command-line switch, "set devmgr_show_nonpresent_devices=1" then "start devmgmt.msc" (I have this in a batch file). In DM View menu you can "Show hidden devices" and uninstall them as if they were connected. I've also tried uninstalling them the normal way when the device was actually connected. Either way, sometimes, not always, depending on the COM port number, after reusing that port number by installing a new device which picks up that old, freed-up number, LV VISA doesn't see it. In other words, when "Refresh" is clicked in the COM port VISA list box, any new devices installed should be and normally are seen. (Refresh is not needed if the application is started after the device's driver is installed. It is only need if the LV application is open with the new device is added.) However, HyperTerminal does see it and lists it in the Properties screen, the "Connect using..." list box. And the port works with HyperTerminal. (Of course we've tried rebooting after uninstalling and/or reinstalling the device, with the same results.)
    When I've spoken to the NI Applications Engineers in the past about serial port issues (not about this problem) they have confirmed that if HyperTerminal can see the port then NI VISA should also see it. This is crazy. I am posting this in hope that someone can shed some light on this problem.
    Thank you. -Ed

    Good catch. Yes, we're using the Silicon Labs CP2102 and have created a "custom driver" installation package. Our new PCBs have a factory-programmed chip, so the PC reuses that COM port (COM3 on that PC). The problem is when we we re-program the CP2102 (setIDs exe) with our PID, and device strings (including the S/N), the PC runs our installer and assigns the next COM port number. I was hoping that maybe it would go up to 64K or something! Anyway, it surpassed COM256 but we ran into this problem when almost up to COM900.)
    There is a registry entry for each SN device, which shows the assigned port. If we delete the key with regedit, the COM port database (don't know the file name) still has the port number. That's where Device Manager comes in. It seems to allow us to manually delete the ports, but it would take quite a while to delete 900. (I was trying to make a batch file for DevCon, but couldn't get it to see the HW ID of the devices in need of deletion.) So we tried manually deleting a few. After doing that Device Manager shows that Windows (and HyperTerminal) can reuse the port number when a new device (new SN) is installed, but, as you know from this post, VISA cannot see unless I manually add it in MAX.
    I can't see how it has anything to do with the Silicon Labs driver. I might have to delete ALL of MY devices, then uninstall the driver files, reboot, then reinstall, as you suggested with the SiLabs driver. However, I don't see how VISA will now see these changes. VISA must have it's own database. That's what I thought deleting the ports in MAX would clear out, like a fresh install, but apparently not.
    I've been through Silicon Labs' tech support on other issues and they've been able to help on some. I could run this by them.
    BTW, have you noticed that Silicon Labs' chip and driver, while faster than NI's own "bridge" or serial-USB converter (I returned it because at $100 it's performance was worse than a $20 converter you can buy in Staples), is substantially slower than a real serial port? For example, our device can transmit 250 readings per second (a 12 byte string). A real serial port used with my LabView program can keep up, i.e.., graph & tabulate at that rate, but with a VCP we only get about 70 RPS. Same code. Can't figure this one out. They say the've tested the driver to 900 KB claimed. We're using 115KB here. Anyway, the VCP driver makes it look like a COM port which LV thinks it is. Why is it slower than a real port when the USB should be able to work almost 10 times faster than I'm using it (up to 1024 bytes per mSec per the full-speed USB spec, which SiLabs claims they verified)?
    Anyway, I appreciate your help. Thanks! -Ed

  • Problem removing bluetooth stack / hidden devices / COM ports not released

    Hi
    Having problem completely removing Toshiba Bluetooth stack / hidden devices / com ports not released
    I uninstalled Toshiba BT s/w...
    But:
    1) Toshiba BT hidden devices still appear and I can not remove (get error)
    2) COM ports occupied by Toshiba BT not released (so they cannot be used by another BT stack) and still appear in registry
    ex: friendly name Toshiba BT Port (COM4) still in registry
    3) These unreleased com ports do NOT appear in device manager
    Thanks

    It seems that you still have some configurations which were not removed during the uninstallation.
    This means that the resources can not be release, because those are still necessary in case of a
    new installation of the stack.
    The first I would try is the following:
    - Install the latest Toshiba Bluetooth stack.
    - Uninstall it. Ensure that you answer all questions with "yes" ! This means also the one which asks if all configurations should be removed.
    - Reboot
    - Check again

  • Exception while accessing com port from servlet

    I am trying to access communication port from a Servlet using java communications api's.
    But Following exception was thrown
    Caught java.lang.NullPointerException:name can't be null while loading driver com.sun.comm.Win32Driver
    The SecurityManager do not allow that opeartion.
    java.security AccessControlException:access denied (java.io.FilePermission c:\j2sdk1.4.1\jre\lib\javax.comm.properties delete)
    at java.security.AccessControlContext.java:270) at java.security.AccessController.checkPermission(SecurityManager.java)
    at java.lang.SecurityManager.checkDelete()
    at java.comm.CommPortIdentifier.getPortIdentifiers(CommportIdentifier.java)
    Please help me.Tell me what to do.how to successfully access a communication port from a Servlet.

    Hi there. I am also facing the problem accessing com port via servlet. if u have the solution, kindly forward to me at [email protected]
    many thanks

  • Problem with Com port

    Hi guys. I have written a driver to communicate with a COM port (FTDI serial adapter).  On the pc from which I'm writing now (windows XP) it works properly, but when I try to use the same driver on another pc (win 7) labview see the port but isn't able to comunicate . I tried also to use a software like Tera Term to see if the com works and trying the echo it works good...so I don't understand where the problem is on this w7 pc... 
    should I install some labview drivers on the w7 pc? I have already installed
    NI run time installer
    NI max
    NI Visa run time

    NI Serial won't help (its for NI serial cards not 3rd party USB-Serial bridges)
    LabVIEW sees the VCP in Win7 but does not communicate: Works on XP: "Something" happens with Echo on from teraterm.
    I'l guess either:
    Wrong serial cable or settings and you are fooling yourself with the tereterm app and are seeing the echo only.  With Echo on any character sent should be doubled.
    Outdated FTDI Driver that does not support Win7.
    Jeff

  • Problem with COM port opening

    I made an application using COM port to dialog with a microcontroleur and i have some troubles with the opening of the port. i developed it under window XP pro and labview 6.1 and i have no problem when i launch my application on an XP PC having labview installed or on a window 98 PC without labview (just the runtime engine). But when i launch it on an XP pc with only the runtime engine, it seems to launch correctly but in fact, there is a problem with the COM port opening. The menu allowing to chose the port number is inactive and has no effect, like if the software wouldn't recognize the material port on the PC. And consequently, nothing happens when the dialog should start.
    Thank tou for your precious help
    Julien LEGRAND
    French Natio
    nal Institute for Sea Reseach

    Is the VISA run-time engine installed? I don't understand why it would work on the win98 machine unless you have an older installation of it there.

  • Newbie : working with INTERRUPTS with SERIAL com port ?

    hi guys !
    here is the deal :
    my app needs to
    monitor a com port while doing something else
    or to be interrupted when something is available on the com port.

    Ive been trying to do something similar
    so far I launch a new thread, which sets up a comcallback to trigger on
    0x05 comming through the serial port (ENQ)
    unfortunately, this seems to ltake like 100% CPU
    Grahh!
    im doing this in cvi...but i should think you can do the same in labview
    andy
    jerry wrote in message
    news:7sqnad$45u$[email protected]..
    > hi guys !
    >
    > here is the deal :
    >
    > my app needs to
    > monitor a com port while doing something else
    > or to be interrupted when something is available on the com port.
    >
    >

  • COM port are not shown in my applicatio​n

    Hello,
    there is a reason why com ports are not shown on a Xp Embedded Touch Panel? 
    I have to communicate through a serial port in my application but com ports are not shown in Visa Resource Name control ...
    I have included all VISA related things in additional installer ...
    Solved!
    Go to Solution.

    Ok, i checked functionality of COM ports with a non-National Instruments programs and all it's working. Only Labview apps cannot see them.
    On another PC where the Labview app works if i look at installed Programs in NATIONAL INSTRUMENTS section i can see:
    NI VISA RUN TIME 5.1.0
    NI VISA 4.5 for Labview on Windows Mobile/CE
    On the machine where there the problem under National Instruments SW i can see only:
    NI system components
    but i've added in additional installer section of the app installer all VISA related stuff...

  • How can i read an COM port ???

    Hi,
    somebody knows how can i read an COM port from Forms 4.5 ?
    Thanks in advance.
    Patricio

    Hi Patricio
    have U got any solutions?? Im also trying to send message to display panel from forms 5.
    If You got any please let me know itll help me a lot
    Thanx
    Suraj

Maybe you are looking for

  • TRANSACTION VARIANT

    Dear All, I am facing a problem while doing the transaction variant. It is as follows - With the T.Code SHD0, i started creating a transaction variant and named as ZMM01 for the transaction MM01. After clicking the create(F5), it went to the MM01 tra

  • How to Disable Event firing while updating a list item using poweshell

    Hi All, I am working on a powershell code which updates most of the list items in the entire web application. I am using SystemUpdate($false) to update the items so that 'modified' and 'modified By' and versions are not changed. However event receive

  • AdHoc System AdHoc WorkFlow Connector failure in sap portal.

    hi Friends I am getting the same error "An error occurred while trying to connect to the provider". In the System Connection test I see AdHocSystem AdHocWorkFlowConnector Action Failed. and also in portal this are all working fine. 1. System is creat

  • How to install MVDEMO in Web Logic Server 10.3.5

    I have deployed map viewer 11g PS6 on WLS 10.3.5. I am new to map viewer. I am planning to try the MVDEMO. Can someone point me to the steps involved in deploying the MVDEMO on a WLS 10.3.5. container. Thanks, Srini.

  • S110: what purpose does the Flash white balance setting serve?

    I assume if you're using the flash for a shot then the camera knows it, so why would you have to set it in the WB menu.  If you don't need to set it, what's it for?  When I shoot with flash and WB set to Auto, everything comes out fine (except when z