K8NGM2-FID Serial Port problem

The K8NGM2-FID has a serial connector, to which I attached a port so that I hook it up to a Polar heart rate monitor transmitter (Interface Plus unit with wire to serial port).  I never noticed, but assumed it was COM1.  In any case, it was transmitting fine as needed, then literally one night to the next morning it wouldn't anymore.  That's the problem.  This is my home computer and there were no other people or changes, and the watch's battery is ok (checked with a backup).  Looking at COM1, Device Manager (XP) says it's working, but the Polar software (PPP 2.1) says "Port Not Found" and chooses COM3 ("get status").  In Belarc, under Printers it shows COM1 being used by Amyuni Document Converter 2.51.  I've long had two of its affiliated programs installed, PDFWriter and PDFill Editor & Tools - document conversion is part of the latter, tho I've never used it - but would that interfere with a hardware connection?  Just to test, I uninstalled PDFill Editor/Tools, but Belarc still shows the Doc Converter on COM1. 
So, if I haven't lost you, this is to say I am.  I did unplug/replug the transmitter connection to the serial port.  Other than the Polar unit going bad (think it's passive), the only other thing I can think of is the COM plug on the board went bad, but that's hard to believe (would it effect the COM port reading in Device Mgr?)  Any other ideas?  Thanks.

Quote from: Russ_xp on 24-May-07, 16:41:24
I think you are on the right track - seems that your PDF software has taken over COM1 and it is now assigned to a software Printer device. You could try to remove this or go into Device Manager and open the properties of the COM Port and change it to COM3 (just go through all the Advanced Options).
I did remove the PDF software, moved what remained of the folder to another drive, and ran two registry cleaners and restarted, but Belarc still shows COM1 held by Amyuni Document Converter 2.51.  Turning to plan B, in Device Manager>Properties, what would need to be changed to make it COM3?

Similar Messages

  • Reading form serial port problem

    I'm using javax.comm for communicating with a microcontroller (the uc just sends data ->"data from uc"). Here is what is read from the serial port. Where is the problem?
    the code:
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.image.*;
    import javax.comm.*;
    public class ss extends Frame implements WindowListener,ActionListener,KeyListener {
         TextField text = new TextField(20);
         Button inainte;
         Button inapoi;
         Button stanga;
         Button dreapta;
         Button stop;
    SerialPort serialPort1, serialPort2;
    test2 df=new test2();
         Label msg_stop=new Label("am un obiect in fata! ");
         TextArea displayArea;
         Panel panel;
         Panel displayPanel;
         Integer i;
         /*     public static void main(String[] args)
              test df=new test();
              //     df.dumpFrame();
                   df.sendCommand("a");
              System.out.println("serial port successfully opened!");
         CommPortIdentifier portId1;
         CommPortIdentifier portId2;
         class test2 extends Thread
              serialComm mySerial;
              char var_ser,a;
              public String misc;
              test2()
                        try {
                             portId1 = CommPortIdentifier.getPortIdentifier("COM1");
                             portId2 = CommPortIdentifier.getPortIdentifier("COM2");
                             // cs a=new cs();
                   catch
                        (Exception e) {
                        // TimeStamp = new java.util.Date().toString();
                        // System.out.println(TimeStamp + ": COM1 " + portId1);
                        // System.out.println(TimeStamp + ": COM2 " + portId2);
                        // System.out.println(TimeStamp + ": msg1 - " + e);}
                        try{             
         // serialPort1 = (SerialPort) portId1.open("ss", 2000);
              catch
         (Exception e2){};
                   mySerial=new serialComm("1");
              // serialPort1=(SerialPort)mySerial;
         public void run()
              while(true) {
                   // var_ser=mySerial.readByte();           
                   // mySerial.writeStr("!andi");
                   //try{
                   //     sleep(200);
                   // }catch(InterruptedException e){};
                   a=mySerial.readByte();
    System.out.println(a);
              //     if(var_ser=='r') {
              //          System.out.println("dsadsa");
              //     mySerial.writeStr(misc);     
              //     misc="id";
              //     if(var_ser=='o'&& misc=="sp"){
              //     misc="id";
              //     msg_stop.setVisible(true);
              // System.out.println("Sunt in task1 "+misc+" "+var_ser+" end ");
              try{
                   sleep(200);
              }catch(InterruptedException e){};
         Flushes all data out of the serial file buffer
         int pixels[];
         public void dumpFrame()
              char a,c,k,r;
              int data=1, pix;
              int row,col=0;
              int count=0;
         //     pixels=new int[900];
         //     MemoryImageSource source;
         //     Image image;
         //          source = new MemoryImageSource(30,30,pixels,0,30);
         //          source.setAnimated(true);
         //          image=createImage(source);
              //     source.newPixels(0,0,30,30);
         //     mySerial.writeStr("DF\r");
              while(col==0){
              data=mySerial.readNonBlock();
              System.out.println(data);
              if(data==1) // New frame
                   System.out.println("este 1 ! !");
              else
         if(data==2) // New col
              System.out.println("este 2 ! !");
              System.out.println("count este : "+count);
              count=0;
         else
              count++;
              /* else{
                   if (data==0) {
                        'System.out.println("count este"+count);
              // if(!sendCommand("DF\r")) return 0;
              /* sendCommand("L1 1");
                   //data=mySerial.readNonBlock();
              while(data!=0)
                   sendCommand("L1 1");
                   if(data==1) // New frame
                        col=0;
                        row=0;
                   else if(data==2) // New col
                        col+=2;
                        row=0;
                   else if(data==3) // End frame
                        row=0;
                        col=0;
                   //     return 0;
                   else
                   {  // A pixel!
                        int red,green,blue,green2;
                        red=data;
                        green=mySerial.readByte();
                        blue=mySerial.readByte();
                        green2=green;
                        pix=0;
                        pix+=blue;
                        pix+=green<<8;
                        pix+=red<<16;
                        Color pixColor= new Color(pix);
                        pix=0;
                        pix+=blue;
                        pix+=green2<<8;
                        pix+=red<<16;     
                        Color pixColor2= new Color(pix);
              //     data=mySerial.readNonBlock();
              public void sendCommand(String command)
              char a,c,k,r;
              a=0;
         //     mySerial.writeStr("DF\r");
              //mySerial.writeStr("1");
              while(true){
                   try
              a=mySerial.readByte();
         //     if (a=='r') {
              //mySerial.writeStr("!and");
         //     'a=0;
              //     System.out.println(trimit !!!");
                   //     mySerial.writeStr(command);
    //     a=mySerial.readByte();
              //     c=mySerial.readByte();
         //          k=mySerial.readByte();
         //     r=mySerial.readByte();
              //     if(a=='A' && c=='C' && k=='K' && r=='\r' )
                        //return true;
              //     else
                   //     return false;
              }catch(Exception e) {System.out.println(e);}
              //return false;
              System.out.println(a);
         private int numClicks = 0;
    public void keyTyped(KeyEvent e) {
         int keyCode = e.getKeyCode();
         System.out.println("Buton Apasat !"+keyCode);
    /** Handle the key pressed event from the text field. */
    public void keyPressed(KeyEvent e) {
         int keyCode = e.getKeyCode();
         System.out.println("Buton Apasat !"+keyCode);
         switch(keyCode){
         case 38: df.misc="fa";
    /** Handle the key released event from the text field. */
    public void keyReleased(KeyEvent e) {
    public ss(String title) {
              super(title);
    //      df.dumpFrame();
    //     df.sendCommand("a");     
              //df.start();
    //          df.misc="id";
         //     test2 df=new test2();
              //     df.dumpFrame();
         //     df.sendCommand("a");
              Panel panel = new Panel();
         Panel displayPanel = new Panel();
              addWindowListener(this);
         //     displayPanel
              displayPanel.add(panel);
         //     text.addKeyListener(this);
              inainte = new Button("Inainte");
              inapoi = new Button("Inapoi");
              stanga = new Button("Stanga");
              dreapta = new Button("Dreapta");
              stop = new Button("Stop");
              panel.setLayout(new BorderLayout());
         msg_stop.setBackground(Color.red);
         msg_stop.setFont( new Font ( "Dialog", 30, Font.ROMAN_BASELINE ));
              msg_stop.setVisible(false);
         displayArea = new TextArea(5, 20);
              //panel.add(displayArea);
         panel.setLayout(new BorderLayout());
              panel.add(inainte,BorderLayout.NORTH);
              panel.add(inapoi,BorderLayout.SOUTH);
              panel.add(stanga,BorderLayout.WEST);
              panel.add(dreapta,BorderLayout.EAST);
              panel.add(stop);
              //panel.add(msg_stop,BorderLayout.EAST);
              //panel.add(text);
              this.add("Center",displayPanel);
              inainte.addActionListener(this);
              inapoi.addActionListener(this);
              stanga.addActionListener(this);
              dreapta.addActionListener(this);
              stop.addActionListener(this);
              this.setVisible(true);     
              inainte.addKeyListener(this);
              inapoi.addKeyListener(this);
              stanga.addKeyListener(this);
              dreapta.addKeyListener(this);
              stop.addKeyListener(this);
         //     addKeyListener(this);
         //     displayArea.addKeyListener(this);
         public static void main(String[] args) {
              ss myWindow = new ss("Boe Bot " +
                        "Control");
              //myWindow.setSize(300,300);
              myWindow.setLocation(400, 200);
              myWindow.setSize(200,300);
              myWindow.setVisible(true);
         public void actionPerformed(ActionEvent e) {
              String command=e.getActionCommand();
         if(command.equals("Inainte")){
              System.out.println("Inaite !!! ");     
              df.misc="fa";}
         if(command.equals("Inapoi")){
              System.out.println("Inapoi !!! ");     
              df.misc="sp";}
         if(command.equals("Stanga")){
              System.out.println("Inapoi !!! ");     
              df.misc="st";}
         if(command.equals("Dreapta")){
              System.out.println("Dreapta !!! ");     
              df.misc="dr";}
         if(command.equals("Stop")){
              System.out.println("Stop !!! ");     
              df.misc="id";}
         //     numClicks++;
         //     text.setText("Button Clicked " + numClicks + " times");
         public void windowClosing(WindowEvent e) {
              dispose();
              System.exit(0);
         public void windowOpened(WindowEvent e) {}
         public void windowActivated(WindowEvent e) {}
         public void windowIconified(WindowEvent e) {}
         public void windowDeiconified(WindowEvent e) {}
         public void windowDeactivated(WindowEvent e) {}
         public void windowClosed(WindowEvent e) {}
    thanks,
    andi

    from the screenshot it looks like there is 2 bytes of "noise" after every 8 bytes?
    print the char array next to the String. are the 2 bytes of noise the same every time?

  • Serial port problems/explanation on the pda

    Hello,
    I have attached the jpg for a simple test I had carried out. I am writing a custom command to an external hardware and waiting for a response from the hardware.
    As you may see in the block diagram, I am waiting for a response from the external hardware in the 4th frame. In the 5th frame I calculate the waiting time. The 4th frame also informs us that there is data in the serial port that has to be read. Yet I need to introduce an empirical delay (405 ms) befoer I can read the data. Does anyone have an explanation/theory why I need to add this delay while switching from Write to Read in the PDA ?
    Similarly, I introduced a Case structure inside the WHILE loop of the 4th frame that was driven by the current lo
    gic. Inside the TRUE case I inserted the 7th frame logic. This did not work either. Any explanations?
    And lastly I ran this program multiple times at different time delays. If I reduced the time delay sufficiently, then after a few runs (approx 3-5), the program hangs. I am closing the serial port though it does not appear in the current diagram . Am I doing something wrong with the serial port handling ?
    Thanks for all the help that you can provide. I am open to any explanation that you may have regarding WinCE/PocketPC etc.
    Attachments:
    testing_read_write_serial.JPG ‏102 KB

    The answer can be found by asking and/or searching archives at www.ibutton.com/TINI

  • I'm unable to access Serial Port

    I have written following code but I m getting NullPointerException on line 13 of this code, please solve my problem and identify error.
    In this code I have used chaeron api which is available at www.chaeron.com
    import com.chaeron.GPS.NMEA.*;
    import com.chaeron.GPS.*;
    import com.chaeron.platform.SerialPort;
    public class MyGPS1 //extends NMEAGPSImpl
         public static void main(String st[]) throws Exception
              SerialPort sp = null;
              NMEAGPSImpl gps = new NMEAGPSImpl();
              sp = gps.getSerialPort();//returning null
              if(sp.isOpen())
                   gps.setSerialPort(2);
                   gps.connect();
              System.out.println(sp.isOpen());//error on this line

    generally serial port problems stem from incorrect installation of the javax.comm package: does the serial demo work? It's hard to say what the problem is without knowing anything about the gps object.

  • PcAlert4 indicated problem -- K8NGM2-FID or PSU?

    Just built a 'FID based system: 3700+, X-Qpack case (and PSU), only a single 512MB stick of RAM (until further arrives), 120 GB HD, LiteOn DVD-DL, some old CD/DVD combo drive, CPU-LDT set to 220.  Runs fine: temperatures in case and on CPU are modest; CPU never exceeded 50c: idle@42c, Prime95@48c.
    PCalert4 is suddenly showing the 12V supply at 13.04 (in red) -- or sometimes in normal blue letters!  13+V seems unhealthy to me, but -how- bad is it?  I didn't pay much attention until the RED letters showed up, but I think it was running around 12.8 at the first boot.
    I can't find any documentation on PCalert4 (latest ver.), so I'm uncertain whether it's measuring PSU voltage or board-regulated voltage -- therefore, if replacement is appropriate, would it be the m/b or the PSU that needs it?
    [PCalert could use documentation -- or I need to get new glasses (quite possibly true!).  And changes: smaller display, no goofy image spinning fan, etc.]
    Thanks for any info!

    Quote
    I'm dumb enough to believe that well-written s/w -can- be trusted [having written technical s/w for 35 years
    one word here, WINDOWS
    Software such as Sandra, PCalert all read from the same points as does the BIO, we are talking about resistors here with a +/- 5% tolerance, I think you can see were the problem can happen here.
    And yes software can be written badly, MSI has released BIO updates to correct worng readings of the cpu temp, if they can make a mistake with a TP think what problems can happen with a resistor 
    Below is a liittle piece I wrote about 3 years ago, it still holds pretty much true today.
    Resets are a P/S issue and lock-ups are most likely due to your graphic card, with that said I will give you a table with which you can determine the proper P/S for your system and a little info just for info.
    I must also add that never trust software to tell you your voltages, this includes the BIOs as the BIOs is just a piece of software. To properly check the voltage one must use a digi-VOM.
    A 7200rpm HD draws around 20 watts, this 20 watts includes both the 5v & 12V rail.
    HD and CD's generally are figured at 2 Amps per device, let’s brake this down some.
    Spin-up: 12V x 1.3A + 5V x 650mA = 19W
    Read/Write/Idle: 12V x 350mA + 5V x 700mA = 7.75W
    Seek: 12V x 675mA + 5V x 725mA = 12W
    Those would be typical for a 7200 rpm IDE drive. As you can see a HD requires more power at start-up then during actual operation. This is why sometimes a PC takes a few tries to start up before it will actually make a successful boot and once it boots to windows all seems well or sometimes a occasional restart, which would indicate a weak/ bad P/S.
    Now to find the power used by the CPU you can check either AMD or Intel for the spec sheets on that CPU or you can follow this link that has tons of CPU ratings, CPU specs.
    Some more basic mathematics… When a 12-volt circuit is drawing 10 amps, it is consuming 120 WATTS of electrical power. 12 Volts X 10 Amps = 120 WATTS.
    This is the formula: P = E x I
    P - Watt (power)
    E – Voltage (electrical pressure)
    I – Amperage (current flow)
    Serial/PS-2 ports draw <35mA and if you have USB ports then they have a maximum of 500mA per port, again only if they are used- no use means no draw.
    The PCI slots are allowed 5A of the +5V, 0.5A of the +12V and 7.6A of the 3.3V Max per slot, again that is if the slots are used. So if the serial ports, PS-2 and USB ports are being used you are looking at around 5A draw on the MB, which would be around 20 Watts.
    So now we can add things up. (This is just an example of a basic system)
    MB=20W
    CPU= 60W, used as a norm.
    HD=20W
    CDRW=25W
    DVD=20W
    Graphic card=15W / newer GF4 and ATI 9000 and up= 35W
    RAM 10 Watts per 128 MB
    Network Card 5 Watts
    Average per PCI Card 8 Watts
    Total around 200W for this example.
    Now this will fall on different rails and that is were things get tricky, because as you see in my above break down of the HD that a HD use's both the 12V & 5V rail. This is why it is important that the 12V rail be at least 18 Amps if you plan on having more then 1 HD and case fans. Then you have the 3.3V & 5V rails that need to be strong too, the 3.3v rail is actually not so important with newer DDR MB and today’s CPU’s as it is mainly supplying the PS-2 ports power as well as some device cards. Most newer MB use the 5v and 12v rails mainly to supply the demands of today’s devices.
    Now this 200W is the bare min what is needed for things to run but in the real world you will want to add 50% to the 200W for your min P/S need, this allows room for spikes and heavy demands and a little head room to add hardware in the future.

  • Problem on WinXP / Labview 6.1 with VISA (serial port)

    There is a problem on WinXP / Labview 6.1 with VISA which i use to poll the state lines of the serial port. The only functions that i use are "VISA Open", "Find Resource", line state properties and "VISA close".
    On my own machine (WinME) it works fine as a standalone application (with runtime engine in the same direction), even if i rename the Labview directory so that Labview is not found.
    From my VXIpnp directory i deleted all but these files:
    directory "Win95",
    subdirectory "Bin" containing "NiViAsrl.dll",
    subdirectory "NIvisa" containing "visaconf.dll".
    When shipping this to WinXP (and copying "VXIpnp" to the root directory), the serial port was not found, so i renamed the direction "Win95" to "
    WinNT", but this did not work also.
    I installed the VISA server, although it seems not to be required -- no result.
    Final question:
    What must i do for distributing the program as a standalone application for all windows platforms?

    Hey Joachim,
    In order to create an installer that includes the VISA Run-time engine for serial IO you will have to purchase LabVIEW 7.x. See screen shot. This packages a small compact version of the run-time that can only be used for serial, but it takes up much less space. The installer that I created has my application, the LV Run-time, and the VISA run-time and it is about 26 MB.
    That is much smaller than if I had to include the 32 MB LV 7.1 run-time and the 14 MB VISA run-time separately. It would have been even smaller if I would have uncheck some of the items that I wasn't using.
    -Josh
    Attachments:
    advanced.JPG ‏31 KB

  • I have problem with delay in serial port

    I have problem with serial port. I have connected two computers by serial port and I need to create program in Labview for transfer strings using start bits and stop bits. My problem is that my program is working quite well ...when I press start bit it starts to concatenate strings and if i press stop bits it stops...this is the purpose of this program...but problem is that it working only with delay...and need that this program dont need delay, because it can only concatenating data depends on delay from start bit....I wana solved problem with delay...I dont want using delay process in my program, but allways when I try to delete this delay it stop works correct
    here is my program

    Ok this should be simple - if I understand you correctly.
    You have the VISA session initialized with read termination character enabled.  So reading the number of bytes at port is NOT the correct way to read from the port.  Set the read number of bytes to something large (say 4096) and the read will return as soon as a termination character is received (or timeout).
    You'll need to make sure the sending device is configured to send termination character on writes (you can set that with a VISA property node)  and that you are sending the correct termination character.  The default is 0x0A (newline).
    Jeff

  • Problem in using serial port.

    I am using serial port to get data from a fusion splicer. The number of bytes at the port is 4096 but the read buffer of VISA read is empty. I am reading the same number of bytes. Can any one tell me what is the maximum size of VISA Read buffer? I am trying to put the contents of the buffer in a file. I am using labVIEW 6.1 on linux.I am also attaching the VI.
    I also noticed this problem...If I read the number of bytes in the serial buffer many times, sometimes it reads it as 0 and I have to keep trying until it reads this 4096 bytes.
    Thanx for any help.
    S.Vijayalakshmi
    Attachments:
    serail_comm.vi ‏52 KB

    Hey Viji,
    In your application it looks like you are just checking to see how many bytes are at the serial port. Is it possible that your application is check for the serial data at the port before the data actually gets there. If you are looping this code as a subVI or just running it over and over it is possible that one of the iterations could occur faster than your device can write the information to the bus. In this instance you are checking the number of bytes at the port and there might not be any there yet. In this case the port reads 0 as you have designed it.
    If you want the read function to wait and always read 4096 then don't wire the bytes at port to the read function. Just wire a constant/control equal to 4096 to the read function instead o
    f the bytes at port. In this case, if there are not any bytes at the port the read function will wait for the bytes to show up or until the timeout period is reached.
    I would also, suggest lowering your time to something more reasonable, because if your instrument quits transmitting your application is going to wait for 33 minutes. That is a long time for a program to hang.
    I hope this helps out.
    JoshuaP
    National Instruments

  • K8NGM2-FID problems: no usb and high cpu usage - HELP!

    hi folks,
    i've setup K8NGM2-FID inside an htpc with a clean install of mce 2005 (onboard video). For the past couple of days I've noticed a few things:
    1) if the pc goes into standby (S3) and then wakes up, sometimes task manager shows a cpu usage of 50% (on the graph) but looking at the list of tasks (for all users) nothing is runing that high - in fact system idle process shows 98% (while the graph is still showing about 50%) and the system is a bit sluggish; reboot fixes this but it's getting really annoying. I've installed the latest AMD x2 driver. Sometimes it goes to 98-99% after waking up but that's been rare.
    2) i've been getting a few BSODs lately, actually all started yesterday - 3 of them in a span of about 2 hours after insalling Nero. I'm going to try to figure out what is causing it that (proabably Nero - I hope since that's easy to undo) but what i've noticed is that when the system reboots after the blue screen, none of the USB devices work (i.e. keyboard, mouse, etc.). windows has to load, then I need to go in the back and unplug/replug the usb devices which then 'wakes' them up; this can get really annoying in a typical cramped home theater setup. software restarts seem to be good - ok hardware restarts are the problem. hooking things up to a usb hub has the same effect - i.e. I need to re-plug the hub to get them to work - it just means less things to plug/unplug.
    has anyone else noticed this? help save my sanity - this is driving me crazy. since this is an mce setup, it goes into sleep and wakes up several times a day so the high cpu issue when it comes up really gets in the way of using the pc. btw. during high cpu times, no mce related function (record/watch/the shell itself) is running.
    here's my setup:
    K8NGM2-FID - boots up with 3 short beeps - I think it's 1 beep pause then 2 beeps
    2 gigs kingston 3 CAS (2 x 1 GIG kit) pc3200 - boot screen shows it running at 400mhz in dual channel config
    X2 3800+ stock fan/heatsink with silver 5 (runs around 35-38 idle - inside a silverstone 'stereo rack' case)
    ms usb keyboard/mouse/mce remote
    coolmax 550W power
    3 140GB WD drives (ata 133 - not sata)
    onboard video - framebuffer set to 128megs
    latest (as of 2 days ago) nvidia and msi drivers - msi bios is the stock 3.0 (more on that later)
    the bios settings are all default as far as I can tell.
    pvr-150 tuner card
    promise ata 100 card
    nec 3500dvd
    all running on mce 2005 with rollup 2 and all the updates windows could find
    i haven't updated the bios because i've read about other folks having blue screen problems and the suggestion has been to up the voltage for the ram (I guess the default setup from MSI is lower than it should be) but apparently that option is missing from the 3.1 and later bioses? and reading the text file, it wasn't very apparent what the bios 3.1 was fixing other than a few cosmetic bootup texts. I'm planning to up the voltage later today.
    anyhow, any suggestions short of throwing the entire pc out the door are welcomed.
    thanks!

    ok here's what I've found about the high cpu...
    using process explorer, hardware interrups is taking all the cpu. i've tried to disable items one by one but nothing is working so far. what does work is if i choose scan for new hardware, cpu goes down to normal. standby and resume and cpu is up again. do the scan and it goes down again - without changing anything.
    i've re-installed the graphic board driver, nvidia 430 drivers, sound driver. not sure what else to do. checked my drives and they are all properly master/slave set.
    this is really getting crazy...anyone come across this?
    i'm a bit hesitant to go to bios 3.1 since i've seen lots of posts about BSOD and i've just gotten rid of that.
    thanks
    thanks a bunch!

  • Problem --serial port reading one character at a time

    Hi Friend,
    I reading the serial port  one character at a time ,  i specified it in the "serial bytes to read" option in serial port read examples.
    The problem is ----------i can able to read  the data.
    but only the first character is reading again and again...and "reading string indicator" in the serial port example shows only the first character sent ..only for a single time.since i am reading continously ----aleast the first character should display as many times i running the program
    (i am running the vi by run continous option..........)..
    please help me ....how to read the character one by one.....
    regards
    rajasekar

    Hi jason...
    I can able to read the serial port by 1 byte or 2 byte or 4 byte as i can specify it in the serial port read bytes option..(in visa serial read)..
    I need to acquire 4 bytes of data and pass it to the Math-script node..and save these 4bytes of data in array (1 row and 4 column)..
    And split this array(just like array-indexing.vi) and processing it each each column separately....
    or suggest some method to achieve my task.....please.
    one more thing the math-script node is placed in a while loop.....in order to read sequence of bytes continously.......
    regards
    rajasekar

  • Problems with access to serial port using reentrant code

    Hi,
    I have a VI that send commands and receive answers from an instrument using
    de serial port.
    This VI runs perfectly when used alone.
    However I'm trying run two instances of that VI simultaneously using
    reentrant code and I'm facing some problems.
    Sometimes everything is OK but sometimes, in the process of writing to
    serial port the following error happen:
    Error code 36.
    Invalid refnum device.
    What is this?
    Does someone know how to prevent this?
    Thanks in advance for any help.

    "Paro, Paula [CMPS:2721:EXCH]" wrote:
    >
    > Hi,
    >
    > I have a VI that send commands and receive answers from an instrument using
    > de serial port.
    > This VI runs perfectly when used alone.
    > However I'm trying run two instances of that VI simultaneously using
    > reentrant code and I'm facing some problems.
    > Sometimes everything is OK but sometimes, in the process of writing to
    > serial port the following error happen:
    > Error code 36.
    > Invalid refnum device.
    >
    > What is this?
    > Does someone know how to prevent this?
    >
    > Thanks in advance for any help.
    You can't use reentrant vi's vith serial vi calls without supervising of
    driver.
    Use VISA instead and you have to control the VISA session opening and
    closing. Another word is that the only one serial port sess
    ion should be
    opened at a time.
    Reentrant vi's for serial port without checking serial port session is a
    mistake of program algorithm. Change it in any convenient way.
    Sergey Krasnishov
    Automated Control Systems
    National Instruments Alliance Member
    Moscow, Russia
    [email protected]
    http://acs.levsha.ru

  • Problem in reading a serial port

    Hi,
    I am working on a program about serial communication, my problem is when reading the response of the other serial port, my program always throws the "PortInUseException" and prints the error "Unknown Application". Yes, the port was use by that application but I want to read its response because I can already write to it.
    Any ideas would be much appreciated.
    Thanks!

    Try the "Serial Read with Timeout.vi" (in Serial Comm examples). Do remember to specifiy no. of bytes you are expecting from the Serial Port.
    ian.
    Ian F
    Since LabVIEW 5.1... 7.1.1... 2009, 2010
    依恩与LabVIEW
    LVVILIB.blogspot.com

  • Problem in Accessing serial port using java comm Api

    I have installed java comm Api in my pc.
    i have gone through the instalation instruction which comes on this package.
    I have done the instalation like this
    Copy win32com.dll to my <JDK>\bin directory.
    Copy comm.jar to my <JDK>\lib directory.
    Copy javax.comm.properties to my <JDK>\lib directory.
    and restart the system.
    But when i run the BlackBox , it is giving me message
    "serial port not found".
    Can any one tell me , what is the exact problem ?

    I'm not sure what you mean by BlackBox, but I have used the COMM api extensively.
    The majority of problems is that the api cannot see the serial port (which is what you are describing) and this is caused by incorrect placing of the javax.comm.properties file.
    As well as <JDK>\lib, try putting it into <JRE>\lib as well. That has often solved problems on my setup.

  • Problems with serial port synchronization.

    Hello to all!
    I have an oxygen analyser, the equipment has a serial port for communication, being based the communication on the AK communication protocol.
    In order to request to the equipment that responds with the measured value, the following command in hexadecimal is sent:  (02 78474B4FE20 03), obtaining like hexadecimal answer the following: (02 58474B4FE203220323038353030 03), in which it is included the measured value.
    I need to have the measurement from equipment in a PC, using the AK protocol and the serial port. For this, I have made a (vi) that it writes the read measure command in the serial port, wait a time (150ms) and read the port, this way everything works correctly, but there is a problem and it is that the communication is very slow due to the delay between the writing and the reading.
    If I eliminate the delay, the synchronization between the writing and the reading is lost, appearing readings of value 0. I think that is because the PC read the port and the analyser not yet has responded to the request from PC, and this happens in spite of using the options of synchronization of visa read and visa write vi's, (Do I/O synchronously).
    I would need to design a (vi) that hoped that the equipment had sent the last data, and then it sends the reading request again, being able this way to make the communication more fast and to eliminate the erroneous readings.
    I have attached two examples, first is (vi) that works well, but has the problem of being slow due to the delay, and the second analyzes the received message to know when this complete and then it writes another message of read to analyser, but it appears to me an error (ocurred AT sights read... Time out) after minutes.
    I would thank any aid that somebody could offer to me.
    Greetings and thanks!
    Attachments:
    Test_AK.zip ‏32 KB

    I don't have a serial port connected on this machine at the moment (they are becoming rare on laptops!) but try this code as a starting place. I notice in your second example you are basing the read on receiving a specific string, in the one I've made you can set the bytes at port compare to a number equivalent in length. I haven't tried it, as I mentioned before, so I appologize for any errors in my code.
    P.M.
    Putnam
    Certified LabVIEW Developer
    Senior Test Engineer
    Currently using LV 6.1-LabVIEW 2012, RT8.5
    LabVIEW Champion
    Attachments:
    serial read.vi ‏67 KB

  • Problem while reading data from Serial Port

    Hi All,
    I am facing some problem while reading data from Serial Port.
    As per the requirement I am writing the data on Serial Port and waiting for response of that data.
    Notification for data availabilty is checked with method public void serialEvent(SerialPortEvent event) of javax.comm.SerialPortEventListener.
    When we are writing data on the port one thread i.e. "main" thread is generated and when data availability event occures another thread "Win32SerialPort Notification thread" is generated. This creates problem for me as we can't control thread processing.
    So can anybody pls explain me how to overcome this problem?
    Regards,
    Neha

    My Problem is:-
    I am simoultaneouly wrting data on port & reading data from port.
    First I write data on port using outputStream.write() method. Now when target side sends me response back for the request on serial port DATA_AVAILABLE of SerialPortEventListner event occured,we are reading data from serial port.Now till the time we didn't get the response from target next command can't be written on the serial port. When we are writing data on port main thread is executed.Now my problem starts when DATA_AVAILABLE event occured.At this point another thread is created.Due to this my program writes data of next command without reading response of previous command.To solve this prob. I have used wait() & notify() methods as follows.But again due to this my pc hangs after execution of 2 commands. (PC hang in while loop in a code provided below.)
    From SOPs I could figure it out that after 2 commands we are not able to write data on serial port so DATA_AVAILABLE event doesn't occure n pro. goes in wait state.
    Can anybody help me to solve this issue.
    Neha.
    Code:
    public void serialEvent(SerialPortEvent event)
              switch (event.getEventType())
                   case SerialPortEvent.BI:
                   case SerialPortEvent.OE:
                   case SerialPortEvent.FE:
                   case SerialPortEvent.PE:
                   case SerialPortEvent.CD:
                   case SerialPortEvent.CTS:
                   case SerialPortEvent.DSR:
                   case SerialPortEvent.RI:
                   case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
                                 break;
                   case SerialPortEvent.DATA_AVAILABLE:
                        try
                             dataThread = Thread.currentThread();
                             dataThread.setPriority(10);
                             dataAvailable = true;
                                                                                    byte[] tempArray=new byte[availableBytes];
                                        inputStream.read(tempArray);
                                                                       catch (IOException io)
                             SOP(io, "Error in serialEvent callback call for event DATA_AVAILABLE");
    public void  writetoPort(byte[] data) throws IOException
                             outputStream.write(data);
                              while(finalTimeOut >= actualTime)
                            if( ! dataAvailable)
                                    actualTime = System.currentTimeMillis();
                           else
              synchronized (mainThread)
                   mainThread = Thread.currentThread();
                   mainThread.wait();
    public  void sendDatatoUser(byte[] b) throws Exception, HWCCSystemFailure
              obj.returnData(b);
              synchronized(mainThread)
                   mainThread.notify();
                                                           

Maybe you are looking for

  • How to sync two Macs?

    I have a MacBook Pro (OS10.5) and a new iMac (OS 10.6) that I would like to sync. I have a 500GB in the MBP and a 1TB in the iMac so I need to sync only certain files. What path do I take for this?  I use an Airport Extreme. Harold

  • HP Support Web Page Failing "Errors on this page might cause it to work incorrectly"

    My computer is an HP DV6930US running Fresh Windows Vista 64bit, then SP2 and IE9 and Java 10....The only installed is Norton 360...I have a lot of problems with this computer and need to restore it to its original state before it started to go crazy

  • Problems with vendor returns

    Hi All,          I have an issue where I've done a returns to the vendor using the movement type 122. After that the delivery completed indicator is manually set in the PO. Now there is no requirement for the material in MD04 and the stock for the ma

  • OAS 10.1.2.3, changing the ip and domain on one machine

    Hello We are changing the ip and domain of the hardware (hostname remains the same). We have OAS 10.1.2.3 infra, metadata repository (created with MRCA), middle tier on one and the same machine on Aix 5300-10 (I know you are wondering at this). Middl

  • InCopy CS6 crash when open icap file (packaged file)

    I created a package (icap) file in InDesign CS6. The InCopy CS6 is crashed when open in in eveytime. Here is what I have to try to solve the problem. I tired to update it InCopy CS8.0.1