Serial communication with Omni Link

Has any body had any success communication with an Omni Link 5000 using LabVIEW?
Thanks.

If you're using a serial connection can you talk to it using HyperTerminal, or equivalent serial communication program? You should check this first.
More than likely the issue is with termination characters. Check the documentation to determine what termination characters need to be used when sending commands, and what termination characters are used to indicate the end fo a read. For commands it's usually just a carriage return, and for reading data it's usually a linefeed.

Similar Messages

  • Serial communication with forms developer

    How I can send character to a serial port with form developer 6.0 on winNT 4.0?
    Thank you, P. Guerriero.

    If you're using a serial connection can you talk to it using HyperTerminal, or equivalent serial communication program? You should check this first.
    More than likely the issue is with termination characters. Check the documentation to determine what termination characters need to be used when sending commands, and what termination characters are used to indicate the end fo a read. For commands it's usually just a carriage return, and for reading data it's usually a linefeed.

  • Could you pls expalin me how to solve visa error 1073807246, I am serial communication with the hardware. thanks

    Hardware :- light modulator

    Here is the definition of the error from LabView:
    "VISA: (Hex 0xBFFF0072) The resource is valid, but VISA cannot currently access it"
    Are you able to communicate with the hardware manually using a sw like "HyperTerminal"? If so, configure the serial port setting to the same as that to communicate manually.
    It appears that you are using a valid comm port, but it cannot talk to the hardware for some reason. It could be as simple as a bad connection (wiring / soldering / etc) to the hardware.
    The first thing I would check is the ability to communicate manually. If it works manually and you duplicate the settings, it should work. If you can;t communicate manually, then you'll have to do some troubleshooting..
    -JLV-

  • Dsc modbus - Serial communication input/holding registers

    Hello,
    I am trying to create a labview application to act as a Modbus master and control multiple stepper motors. I have the DSC module in labview and am using a serial communication with an RS-485 converter. I have followed this guide: http://www.ni.com/white-paper/13911/en/  However, the driver I am using does not support coils, it only uses input and holding registers and I have not found a guide or tutorial that shows me how to create a labview application that can read and write to a specific address. For now all I want to do is turn the motor on and off using labview. I have used a modbus simulator to communicate with the driver and can do everything I want to do through the simulator. I can not get labview to do anything for me. I would be very happy if someone could direct me to a tutorial that can help me understand labview dsc module for reading and writing to addresses using modbus. 
    Meesh

    Ok, so this is really strange. I solved my problem in a round about sort of way. I'm using a modbus simulator (mdbus) to help me communicate with the driver/stepper motor so I know which address to use. But after I use the simulator I get a communication port error when I try to use Labview. It's like the port is locked in with the simulator and I can't end the connection and let Labview use the same communication port. I can't find anyway to fix the problem except going to this NI site: http://www.ni.com/download/labview-run-time-engine-6.1/746/en/  downloading this software and using the "repair" function. Then I can do a system restart and cycle the power on the driver/motor and then Labview with work again through the correct port. But if I need to use the simulator again then I have to go through this whole process again. Does anyone know what the heck is going on? Or if there is a better way to clear the communication port?? 

  • OBD1 ALDL communication with Labview VISA

    Hello all,
    I am new to serial communication with labview.
    Task:
    trying to send a command and receive data from a 1987 corvettes ECM using VISA serial block in labview.... and failing hard
    Troubleshooting the problem:
    Hardware: works with EFI live V4 (software that communicates with cars), send and receives data all day long, so my hardware is not the problem
    software: it is something i am doing wrong in my coding
    Example code form EFI live V4:
    37:30.137: Send: $80,$57,$01,$00,$28
    37:30.137: Finished writing frame
    37:30.137: Wait 10 ms after writing, before reading...
    37:30.147: Start reading frame
    37:30.147: Aldl frame header byte: $80
    37:30.147: Aldl frame length byte: $57
    37:30.147: Recv: $80,$57,$01,$00,$28
    37:30.147: Finished reading frame
    37:30.147: MAX232 echo: $80,$57,$01,$00,$28
    37:30.147: Wait 10 ms after writing, before reading...
    37:30.157: Start reading frame
    37:30.160: Aldl frame header byte: $80
    37:30.160: Aldl frame length byte: $95
    37:30.241: Recv: $80,$95,$01,$1E,$5B,$00,$00,$00,$00,$00,$44,$44,$1D,$00,$9C,$D6,$00,$00,$FF,$66,$00,$80,$80,$00,$80,$64,$80,$FF,$00,$80,$00,$27,$27,$00,$00,$00,$77,$00,$3A,$00,$43,$00,$00,$00,$00,$00,$00,$00,$00,$01,$BD,$00,$00,$00,$00,$00,$00,$D5,$2A,$22,$00,$07,$00,$00,$0C,$00,$DE
    37:30.241: Finished reading frame
    Example code protocol i tryed into the visa block in labview:
    $80,$57,$01,$00,$28
    $80,$57,$01,$00,$28\n
    $80,$57,$01,$00,$28\r\n
    $80$57$01$00$28
    $80$57$01$00$28\n
    $80$57$01$00$28\r\n
    80 57 01 00 28
    80 57 01 00 28\n
    80 57 01 00 28\r\n
    8057010028
    8057010028\n
    8057010028\r\n
    VISA read Result:
    i just get an eco back of the same command i sent
    Question:
    is there something simple i am missing in the command protocol or a possible setting i am overlooking?
    also what is the purpose of the “$” in the Hex command?   
    background info:
    vehicle : 1987 corvette
    ECM type: 16198259
    com. protocol : ALDL OBD1
    labview v8.5
    baud rate: 8192
    data: 8 bit
    parity: none
    stop: 1
    buffer size: 256

    Are you actually supposed to be sending hex? You need details on the actual format of the data. I don't think viewing the output of some other program will tell you what is truly being sent and received unless its a sniffer such as portmon.
    You can right click on the string control and select hex display. You also did not include the actual VI so no one knows if you have it set to send \r and \n correctly.

  • Serial communication crashes with blue screen

    Hello,
    I have been troubleshooting an application that consistently kept crashing/hanging after ~1 to 5 minutes. I am communicating with a syringe pump NE1000 from New Era (http://www.syringepump.com). If have finally isolated the problem to a VISA write function.
    Configuration:
    ·         DELL INSPIRON running Win7 64 Bit
    ·         LabVIEW 2011SP1
    USB to Serial RS-232 Adapter [ GUC232A ] http://www.iogear.com/product/GUC232A/
    ·         The driver for the GUC232A has just been updated to the latest version, but the same behavior was observed with the older driver dating back to 2009.
    ·         RS232 to “telephone cable” adapter:
    ·         Telephone cable to RS232 port on syringe pump
    I was running the NI Desktop Execution Trace Kit while running the attached Test NE100X – Query Volume.vi. The log is attached, Trace Test NE100X - Query Volume vi (1_4_2013 _ 17_06_11_423180).ttd.
    When I run the vi at a loop rate of 10ms, it hangs after 15889 events. (Occasionally, Win7 crashes with the Blue Screen of Death.) I did not find anything unusual in the trace report.
    After the vi hangs, it becomes unresponsive. When I attempt to exit LabVIEW, I get the Resetting VI: … message, and LabVIEW is hanging and does not exit:
    If I decrease the loop rate to 50 ms and 75 ms, the vi seems to be running longer, but still crashes after about 52000 events, or 25000 events,respectively. At a loop rate of 100ms, it is was running for 51 min and then I had another Blue Screen Windows crash.
    What confuses me is that the system just hangs without giving me any timeout or error message. This makes the troubleshooting very difficult. A query rate of 10 Hz seems to be rather low. I wonder whether this is a hardware issue or some bug in the software. I appreciate your help in troubleshooting this issue. Thank you.
    Solved!
    Go to Solution.
    Attachments:
    Tech Support Inquiry.zip ‏781 KB

    Hi
    I can see several potential problems with this code. It looks as though what you are trying to do is to send a "DIS" command to the syringe pump and are then trying to read the data that the syringe pump sends back in response to this command.
    1. How many bytes are you expecting to get back in response to the DIS command? You're attempting to read 1024 bytes. If you really are expecting 1024 bytes then you need to calculate how long that would take to arrive. If we assume that you're using a data word consisting of 8 data bits, 1 stop bit and no parity then the number of bytes you will receive per second = 19200 / (8 + 1) = 2133. Therefore 1024 bytes will take 1024/2133 seconds = 0.48 sec. Therefore there is no point having a loop rate of 10msec. 0.5 seconds would be better.
    2. You haven't included the vi that initialises the serial comms so I can't see what timeout value you've assigned. You need to check that it is greater than the time it's going to take for your data to arrive.
    3. If you're not expecting exactly 1024 bytes then you need a different strategy for reading back the data. Possible options are i) counting exactly how many bytes you actually do get and using that number in the byte count input, ii)reading data continuously in a small loop until a terminating character is seen. eg if a CRLF is returned at the end of the data, read continuously until you see this. I've attached a modified version of your vi that shows how to implement this last method.
    regards
    Mike

  • Link Serial Number With Batch Number

    Hi Gurus,
    I need to link the material serial number with the batch number.
    This link needs to be created in advance of the GRN.
    Then at the time of goods receipt the processor can select the serial numbers relevent to specific batch number.
    Please advice.
    Thanks in advance.
    NalindaR

    while config the serial number profile check if batch number field is there

  • How to code this with serial communication?

    Here's What I Want To Do.
    There are two computers A and B. I send some variational data, 1.2,3.4 for example, from A to B once per second. If B has received the right data, he will send "Yes" to A, otherwise he will say "No". If received "Yes", A will get ready for the next data-sending. If "No", A will send the data again.
    The examples with LabVIEW for VISA communication are all like that one computer is listening and the other one is writing all the time. So can you help me with two simple VIs for computer A and B?
    Regards.

    You need to connect the two computers' serial ports with a Null Modem Cable (Tx/Rx, CTS/RTS, DTR/DCD reversed). The put the attached vi on computer A. It will send a command from an array, and wait for a response from computer B. If the response is Yes, then the next command will be sent. If not Yes then A will send the same command again and wait for a response. There is an Abort button if you want to abort, but it will only abort the current command. You can modify it to abort the whole thing by using a while loop to replace the for loop, and using the abort button to exit the while loop. I'll leave the coding up to you. You will have to write a vi to reside on B. I'll describe it but you can code it, good practice. Computer B should start off initializing the com port, like in the attached vi. Then loop at Bytes at Port until some bytes come in, then read the bytes. Use a comparison (equal) to check if the data is good. Use a case structure to define what to send back to computer A (Yes or No). Then write it back using Visa Write. Loop around the entire thing except for the com port init. Close the Visa after the main loop.
    - tbob
    Inventor of the WORM Global
    Attachments:
    COM_AtoB.vi ‏50 KB

  • Problems with Serial Communication using Labview 6 and Solaris 8

    I am working on a Driver for a Temperature Controller. But I am stuck at the very basics. I am using Labview 6 and the platform is Solaris 8 on a SUN Ultra 60 Workstation. I can not get the Serial communication to work. When I am running raw (uncompiled) code it works (I can read from and write to ttya and ttyb) but once compiled I get error code 37 (device not found). I have tried the following steps to fix this with no luck.
    1) I made sure that the "serpdrv" file is in the same folder with the executable. I also make sure the serpdrv file is added as a support file when building the app.
    2) I changed from using traditional serial VI's to labview 6's new visa functions. With these "new" VI's when
    I try to initiliaze the visa device and wire a control to the "visa reference" input only 1 serial port shows up (ASRL2, missing ASRL1). I am not sure if this is part of same problem or whole new issue.
    3) I reinstalled both visa and labview 6.0.2 update hoping this would help with no luck
    4) I placed the following entry into the ".labviewrc" file
    labview.serialdevices: "/dev/ttya:/dev/ttyb"
    If anybody has had the same problem I would love to hear about it and if you have any solutions
    Jamie Shea

    Hi Jamie,
    1. Do you have NI-VISA driver installed on the machine on which you are running this executable?? If you are trying to run the executable on the same machine on which the development program has ran fine, then you can ignore this point.
    2. If you have done all the changes that are suggested by other discussions related to this topic, then try changing the Port input to Visa Serial Configure.Vi from a control to a constant and try it. In some case, I have seen this to do the trick. I think this point should solve your problem. If it does do tell me. :-))

  • Midlet with access to IrDA/serial communication on PDA urgently needed!

    Hi folks,
    our solution needs access to the IrDA or serial communication from within a midlet. Unfortunately this is not possible with the current MIDP implementation. The mobile we are using has additional vendor specific classes, but still IrDA fails when connecting to other mobiles or PDAs. Therefore, we are looking for a KVM on WinCE/Palm which provides access to the IrDA or serical communication channel in order to develop our application on a PDA while waiting for MIDP 2.0 to come.
    Please send me some feedback ;-)
    Cheers Harald

    Indeed the serial port access to the IR port is supported in the latest WSDD releases.

  • I'm having trouble communicating with a transducer (Keyence LS-3100 laser scan micrometer) via the serial port. It works in Hyperterminal. Any suggestions?

    Its not a simple baud-rate or parity error. If I issue the command to send data (X1) in hyperterminal I start to get data. If I then switch to Labview I still get data. However if I try to issue the send-data command via Labview I get nothing (i.e. I can read from the device, but not write to it).
    I am on a Windows 98 (version 2) PC, running Labview 5.1.1

    Try adding a carraige return to the end of your command.
    "djb" wrote in message news:[email protected]..
    > I'm having trouble communicating with a transducer (Keyence LS-3100
    > laser scan micrometer) via the serial port. It works in
    > Hyperterminal. Any suggestions?
    >
    > Its not a simple baud-rate or parity error. If I issue the command to
    > send data (X1) in hyperterminal I start to get data. If I then switch
    > to Labview I still get data. However if I try to issue the send-data
    > command via Labview I get nothing (i.e. I can read from the device,
    > but not write to it).
    > I am on a Windows 98 (version 2) PC, running Labview 5.1.1

  • How LV interfaces with a microcontroller (serial communication).

    I am starting to design a system that uses an RFIC, a microcontroller and a VI to act as a user interface.  The microcontroller outputs in RS232 to a Lantronix device which packages up the information and sends it over a network. I plan on using LV's VISA to locate the device.  I have not worked with a system like this before and I would like to know how LV sees the data that is being sent over the network and how I can unpackage the data and make sense of it in LV, then output data to be sent to the uC.  I would appreciate any suggestions anyone may have.

    The Lantronix device will install a device driver to the PC that creates a virtual com port.  LabVIEW will communicate with that com port (Let's say Com8) through VISA.  The device driver will handle the communication with the Lantronix device over the network.
    The Lantronix device I used is pretty sophisticated, and was not that easy to set up.  It may also have other methods of communication such as talking to it TCP/IP.  If I remember correctly, it also had a local terminal mode and a remote terminal mode.
    In the end, once I figured out the trick to getting the device driver to work (the instructions were just not that obvious on how you had to set up the ports and open up the firewall to make it work), I was able to use it just like I said at the beginning as a Virtual com port.  I've used other remote serial devices that were truly much more plug and play.

  • Communication cldc serial port with problems?

    I have a problem using CLDC serial communications:
    I need a connection using Stopbit 2, databits 7, parity even and baudrate 4800.
    I use the line code:
    serialport.open("0;baudrate=4800;bitsperchar=7;stopbits=2;parity=even",1,true);
    or the sintax :
    soc_ = (StreamConnection)Connector.open("comm:0;baudrate=4800;bitsperchar=7;stopbits=2;parity=even");
    but the data arrive in palm of strange way. I send the bit 67 and receive in palm the bits 4, 12, 20 for example.
    helpme
    thank you

    [superfudido],
    The MIDP for Palm OS implementation currently does not
    support the comm protocol. Although CLDC supports the
    use of the serial comm protocol, what type of
    connections is determined by the profile, in the case
    of the Palm device, currently the only available
    profile is MIDP for Palm. The MIDP specification
    states that all MIDP compliant implementations must
    provide HTTP connections, all other connection types
    are optional.
    See this URL for the frequently asked questions for
    the MIDP for Palm technology:
    http://java.sun.com/products/midp4palm/faq.html#Q5
    HTH.
    Allen Lai
    Developer Technical Support
    SUN Microsystems
    http://www.sun.com/developers/support/
    However is possible to create conection for serial using databits 8, parity none, stopbit 1 without problems. Then exist comm protocol in CLDC, but no run with databits 7, parity even, stopbit 2. This is a Bug?

  • Having issues with simple serial communication.

     I followed a tutorial online to start learning basic serial communication. The tutorial involved shorting pins 1 and 3 on the Comm 1 port, and writing a simple program (attached). I edited the program a little, to show the varied results that I get when trying to write and read a simple phrase via serial port. 
    Could someone explain what causes the kind of result shown in "Serial Comm Example.png"? I believe it has to do with timing. Why would only parts of the phrase be transmitted?
    Thanks,
    Sarah
    Solved!
    Go to Solution.
    Attachments:
    Serial Comm Example.vi ‏30 KB
    Serial Comm Example.png ‏139 KB

    sarahzig wrote:
    The tutorial involved shorting pins 1 and 3 on the Comm 1 port
    Shouldn't that be pins 2 and 3?  On a standard DB-9 serial port, pin 2 is the Recieve and pin 3 is the Transmit.
    Now for your code...
    1. Move the Configure Serial Port to be before the loop.  You only need to configure the port once.
    2. Close the port after the loop.
    3. Handle your error after the close.
    4. Stop your loop on an error or the stop button was pressed.  You will need an OR in there.
    5. No need for the Flush Buffer function.  Remove it.
    6. Using the Bytes At Port is a dangerous thing.  It introduces all kinds of interesting race conditions.  Instead, tell the VISA Read to read the number of bytes you expect to read.
    6a. Alternatively, be sure to send an End Of Line character at the end of your sent data and set the number of bytes to read to something a lot more than you would ever expect to read.  The VISA Read will stop reading when it a) sees the number of bytes it was told to read, b) sees the termination character (currently enabled and set to a Line Feed, which is part of the End Of Line), or c) the timeout happens.  Whichever happens first.
    7. With 6, the wait is no longer needed.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions

  • VISA bug with serial communication on MAC !

    Hello to you all again,
    I have appreciated all feed back from you about a problem encountered with serial communication on the MAC (see earlier questions)
    To situate the problem:
    One can only read 63 bytes back from the serial port using VISA calls (without handshaking). With the old serial VIs you can read everything back. In addition the exact same VIs do not show this problem on windows platform.
    I have now performed extensive tests with a loopback on the serial port and the problem still stand.
    I attach two VIs to an answer to this question (for some obscure reason I can not attach them to the question?) which do the basic loopback, one uses VISA the other the old serial VIs. Please try them out o
    n your computer (for Mac RS422 miniDIN you should connect pin 3 to 5 and 6 to 8 to do the loopback)(for windows RS232 DB9 connect pin 2 to 3) in loopback configuration (see also resource library).
    Please post a message if the described problem also occurs on your MAC.
    Thanks to all of you for your cooperation!!

    here are the VIs a promised
    Attachments:
    serial_loopback_test.vi ‏65 KB
    visa_loopback_test.vi ‏70 KB

Maybe you are looking for