JavaScript GPIB Communication using a COM ActiveXObject

Is there a way to preform GPIB communication using JavaScript?  Perhaps by creating an "NiVisaCom" object?
There are about 20 different progid's for the NI VISA VXIPNP dll registered on my computer after installing the GPIB drivers, however all of these seem to return an empty object when created using "new ActiveXObject()" 
Looking at the documentation I would think this would work:
gpib = new ActiveXObject("NiVisaCom.NIGpibIntfc");
gpib.viOpenDefaultRM(session);
The first line "works" but returns an empty object.  The second line throws an error.
Another route would be to create an html page with an <object> tag with the CLSID assigned to match the progid, but this has not worked for me either.
Has anyone had luck with GPIB in JavaScript?

EE_Steve wrote:
I have not read any documentation that suggests that this is possible.  Perhaps my initial question was not well formed. I am hoping that someone can point me to documentation, or otherwise explain, how to connect to a GPIB COM object using JavaScript.
You might to take a look at Measurement Studio. It isn't free however.
http://forums.ni.com/t5/Instrument-Control-GPIB-Serial/Is-there-an-OCX-for-accessing-the-GPIB-interf...

Similar Messages

  • How to develope LabVIEW for GPIB Communication check?

    I would like to check for GPIB communication using Labview.How to check it?

    Hi,
       You can use the GPIB vis located at Functions>>Instrument I/O>>GPIB palette.
    See attachment.
    Attachments:
    GPIB-vis.Jpg ‏411 KB

  • Correlation and Async/Sync Communication using JMS adapter without BPM

    Hello
    1. Pls explain with simple example docs/links --- Correlation
    2. Async/Sync Communication using JMS adapter without BPM
       If i see blog --- If I go with blog --- /people/sudheer.babu2/blog/2007/01/18/asyncsync-communication-using-jms-adapter-without-bpm-sp-19
    Pls explain --- Correlation Settings, select JMSMessageID for the XI Conversation ID.
    Pls explain --  Correlation Settings, select XI Conversation ID as jMSCorrelationID.
    Can you pls explain me this example with JMSMessageID and JMSCorrelationID context
    Regards

    Hi Henry,
    For Correlation, please go through the below link.
    /people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi
    Sync / Async Bridge communication using JMS : http://help.sap.com/saphelp_nw04s/helpdata/en/45/20d251c20a0732e10000000a155369/frameset.htm
    Sync / Async communication without BPM in JMS : /people/venkataramanan.parameswaran/blog/2007/01/18/syncasync-communication-in-jms-adapter-without-bpm-sp19
    /people/henrique.pinto/blog/2007/08/02/syncasync-scenarios-without-bpm
    Hope these help
    Regards
    Kiran..

  • Keithley 238 GPIB Communication

    I am using LabView 6.1 and writing an application that communicates to this instrument (among others) via GPIB. My communication to the Keithley is usually okay for a while in the beginning, but after the program has ran for about 5-10 minutes, it loses communication with it. The Keithley drivers I am using just timeout and it looks like there is not really a specific error code except for ERR(0). Has anyone had issues communicating with this or a similar instrument, and how was it resolved?
    I did see someone post that it may be a good idea to modify the Keithley drivers to use VISA instead of the older GPIB communication vi's.
    Any help would be greatly appreciated.
    Thanks in advance.
    Rey

    A.S. Thank you for your reply. I used the Keithley 238 Device Errors VI to try and get more info., but it still returned the same thing. I had looked at EDVR(0), but I couldn't find any place where the name could have been changed. Although, I am using an Event loop, so I will double check and make sure this does not reset a value that I set somewhere else.
    Here is an interesting thing that I did. There is a part in my program where I am just reading a measurement from the Keithley 238 on a continual basis, and this where it seemed to usually crash after a few minutes. So I opened up the Keithley VIs (namely the Read Measurement one) and ran it in LabView debug mode (slow motion). The funny thing was that when I did this, I had no problem. It ran fo
    r 45 minutes in this mode and never failed. I noticed in the Read Measurement VI that they do some writes/reads and even poll the intstrument once or twice in a while loop. So what I did was added some delays in a couple of different places of about 500ms. I also slowed down the polling in the while loops to like 250ms. Once I did this the program, so far, seems to work. I know all the delays (and the times) might be overkill, but it looks like it may be a step in the right direction. We are not looking for super fast response times, so if this did indeed fix the problem, it should be okay. So far for the last couple of days it seems to have worked. I will continue to monitor it, to see if it ever fails even with the delays.
    Does any of this seem to make sense? The thing that I don't understand is that I am sure there are people that must have used these VIs from Keithley without any issues, so it seems weird that they would behave differently on my machine, as far as tim
    ing. It is not a fast machine by todays standards (PXI 1000B, I think ~1GHz).
    Thanks for you input,
    Rey

  • RE:Serial communication using java

    Hello,
    First of all, I want to make clear thatI did not double post it as previously I posted it in Networking section..But I was told that I have not posted it at appropirate place....thats wht I am posting here.
    I am a newbie in Java.I have started with Netbeans.I have designed a interface using Netbeans.It has 5 texboxes and two buttons named "Start" and "Stop".
    I want to receive data from the serial port and display the data in text boxes.I want when I press Start button, then it should start listening to the serial port .If adat is present on serial port, then it must receive it and displayin the text boxes.when I press Stop button, then it should stop receiving data as well close connection.
    can please anyone help me on this?
    I would be highly thankful for this.
    Regards,
    Jass

    Hello All,
    I am using the javax.comm for serial communication using serial to usb converter at port COM4(I check using device manager.).Beside that I have also added the option in the programming to look into other COMs also.I have placed "comm.jar " and "javax.properties" into jdk\lib\ext and "win32.dll" into jdk\bin.
    But I am getting the following output:
    Wed Dec 24 02:23:43 EST 2008: COM4 null
    Serial port List is  javax.comm.CommPortEnumerator@1a46e30
    Serial port ID  is null
    BUILD SUCCESSFUL (total time: 0 seconds)
    The code Is as follows:
    import java.io.*;
    import java.util.logging.Level;
    import java.util.logging.Logger;
    import javax.comm.*;
    import java.util.*;
    public class serialport implements Runnable, SerialPortEventListener
        static CommPortIdentifier portId, portId1;
        public SerialPort serialPort;
        public OutputStream outputStream;
        public InputStream inputStream;
        Thread readThread;
        static Enumeration portList;
         static String TimeStamp;
        public static void main(String args[])     
        {try {
              portId1 = CommPortIdentifier.getPortIdentifier("COM4");
              }catch(Exception e) {
          TimeStamp = new java.util.Date().toString();
          System.out.println(TimeStamp + ": COM4 " + portId1);}
               portList = CommPortIdentifier.getPortIdentifiers();
               System.out.println("Serial port List is  "+portList+"\n");
               portId = (CommPortIdentifier) portList.nextElement();
              System.out.println("Serial port ID  is "+portId+"\n");
           while (portList.hasMoreElements()) {
              portId = (CommPortIdentifier) portList.nextElement();
              if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
                if (portId.getName().equals("COM3")) {
                     System.out.println("Serial port COM3 is found\n");
                serialport Port = new serialport();
                else if (portId.getName().equals("COM4")) {
                     System.out.println("Serial port COM4 is found\n");
                serialport Port = new serialport();
                else if (portId.getName().equals("COM6")) {
                     System.out.println("Serial port COM6 is found\n");
                serialport Port = new serialport();
                else if (portId.getName().equals("COM7")) {
                     System.out.println("Serial port COM7 is found\n");
                serialport Port = new serialport();
                else if (portId.getName().equals("COM5")) {
                     System.out.println("Serial port COM8 is found\n");
                serialport Port = new serialport();
      public serialport()
        try {
          serialPort = (SerialPort) portId.open("MainClassApp", 2000);
        } catch (PortInUseException e) {
                  System.out.println("Port is owned by another application \nor port cannot be opened\n");
        try {
          inputStream = serialPort.getInputStream();
        } catch (IOException e) {
             System.out.println("IOstream for port is not available\n");}
        try {
          serialPort.setSerialPortParams(9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1,SerialPort.PARITY_NONE);
        } catch (UnsupportedCommOperationException e) {
             System.out.println("Serial port is not properly configured\n");}
        try {
          serialPort.addEventListener(this);
        } catch (TooManyListenersException e) {
             e.printStackTrace();}
        serialPort.notifyOnDataAvailable(true);
        readThread = new Thread(this);
        readThread.start();
        public void run() {
           try {
             Thread.sleep(2000);
               } catch (InterruptedException e) {      e.printStackTrace();}
        public void serialEvent(SerialPortEvent event) {
             Runtime rt = Runtime.getRuntime() ;
             Process p;
        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:
          byte[] readBuffer = new byte[1];
          try {
            while (inputStream.available() > 0)
                   int numBytes = inputStream.read(readBuffer);
                   System.out.print(new String(readBuffer));
                    break;
            System.out.print(new String(readBuffer));
                } catch (Exception e) {
               e.printStackTrace();}
          break;}  }  }Kindly help........I really wanna to know where is the error???
    Thanks
    Edited by: jass11 on Dec 23, 2008 11:39 PM
    Edited by: jass11 on Dec 23, 2008 11:51 PM

  • We cannot capture GPIB traffic using GPIB-USB-HS

    We are trying to monitor a GPIB bus using the GPIB-USB-HS device. The version of MAX we have is v4.5 and the version of GPIB Analyze is v2.6. I have attached some screenshots that may aid in a resolution.
    The first screenshot (GPIB Analyzer Error) shows the error that comes up when we start the GPIB Analyzer tool whether we have the GPIB-USB-HS plugged into the pc or not.
    The second screenshot (Unknown GPIB+Card) shows that the Analyzer tool does not recognize the GPIB-USB-HS device and has disabled all of the controls/indicators.
    The third screenshot (Instrument Not Found) shows that MAX indicates that it sees the GPIB-USB-HS device but has an error message in the bottom of the screen indicating that "Instruments not Found".
    We are using NI Spy (version v2.6) to capture traffic and cannot see the traffic on a GPIB bus and are not sure what to do at this point. Please advise.
    Thanks,
    Steven
    Attachments:
    GPIB_Error.xls ‏109 KB

    The first error really explains it well. The only supported cards for the GPIB Analyzer are the "+" series of cards. Obviously, you do not have one of those.
    If an instrument is not found, then I would recomend that you try a different instrument and a different cable.
    In the future, you would also want to post to the correct board. This does not have anything to do with the program called "Measure".

  • How I get the community Folder of community using adaptive tag?

    Hi,
    How I will get the community Folder of community using adaptive tag.

    Hi,
    Andrew Caldwell wrote:
    Is there a way to invoke these without the script opening each one?
    You must use the bundle identifier instead of the name
    Here a example :
    set theApps to {"com.microsoft.excel", "com.adobe.Acrobat.Pro", "com.barebones.textwrangler", "com.roxio.Toast", "com.fetchsoftworks.Fetch"}
    repeat with anApp in theApps
           tell application "Finder" to tell (application file id anApp)
                  set vers to version
                  set parentFolder to name of its container
           end tell
           if parentFolder is in {"Applications", "Utilities"} then set parentFolder to ""
           display alert anApp & ": Version: " & vers & " " & parentFolder
    end repeat

  • Where is it at?.....its July 20, and i dont see nada??? what in the ****-o bobby??? umm my iphone os updates the big ones anyway used to come out at midnight

    where is it at?.....its July 20, and i dont see nada??? what in the **** bobby??? umm my iphone os updates the big ones anyway used to come out at midnight.......yea?

    Then, you need to sharpen your search skills. A google search for Lion ships today brings up many hits, with this one mentioning a time: http://isource.com/2011/07/19/confirmed-os-x-lion-ships-tomorrow/

  • Where is it at?.....its July 20, and i dont see nada??? what in the **** bobby??? umm my iphone os updates the big ones anyway used to come out at midnight

    where is it at?.....its July 20, and i dont see nada??? what in the **** bobby??? umm my iphone os updates the big ones anyway used to come out at midnight

    FWIW, this is a user forum. We are all users like you. No Apple employees here and Apple doesn't follow these forums. You aren't speaking to Apple here.

  • When I try to sign in to the support community using one of my email addresses it asks for my apple support community user name and when I type in what I think it might be I get one of several messeges Ie. An account using this e-mail address already exis

    When I try to sign in to the support community using one of my e-mail addresses and I put in nothing or what I thought was my apple support community user name I can get one of several messages
    Ie.1. Please specify a user name
    2.An account using this e-mail address already exists; only one account per e-mail address is allowed on Apple Support Communities
    How do I find out what my Apple Support Communities user name is

    Good luck with this!!!
    EVEN USING what WAS my Username, this is the exact problem I am having having entered my correct ID and Password.
    Rgds
    Rod

  • How can I use a COM object that does not have a type library?

    Hello,
    I've created a com server in python for which I do not have a type library. I am able to call functions for this application in Python, TCL, I'm sure VB, etc. without the type library.
    Must I have a type library registered to use this COM object with Labview? I was hoping I could simply supply the name to the refnum (or the GUID) then call functions by passings strings to the invoke node. This does not seem to be possible - am I missing something?
    In the event that I cannot use a com server without a type library. Any recommendataions on how to create one? I'm wondering if I can use the same GUID and create a shell in LabWindows which generates the IDL/TBD file I need for Labview to see my
    com server.
    Any help is greatly appreciated.
    73,
    Timothy

    Timothy Toroni wrote:
    > Thanks for the info, however their example is labview server and
    > python client. I'm going the other way. It's good to know about
    > LabPython though...
    >
    > As of now, it seems to be there is no way to use a COM object without
    > a type library from inside LabView.
    Yes that is true. LabVIEW needs that to configure the Property and
    Methode Nodes correctly. Otherwise it would need to have a special
    Property and Method Node with a configuration dialog similar to the Call
    Library Node, but a LOT more complicated. Not sure many people could
    make use of that, and it would be a very tiring experience trying to get
    things setup in that way, by going through the edit, test, and crash
    cycle over and over again.
    Rolf Kalberm
    atter
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • How to use a com server develpped in python

    Hi,
    I am trying to use a Com server, developped with python to communicate with an equipment.
    The server is working fine if  called from VBScript ex:
    Set device = CreateObject("My_server")
    msg = device.DetectTactic(NomTACTIC,portCom).
    I have tried through the ActiveX AutomationOPen, but my Com server doesn't appear in the List.
    How can I correctly register this Server (I have only done a regsvr32 Path/Myserver.dll command)
    Any help will be welcome.
    Best regards
    Marc Baulin

    Hi,
    To select an ActiveX, you have to place an refunum automation on your front-panel and then right click >> Select ActiveX class >> Browse. Your server should appear in the list.
    On the follow link, you will find how manually Register Type Libraries, ActiveX Controls, and ActiveX Servers :
    http://digital.ni.com/public.nsf/websearch/4F811A9​B23F1D46E862566F700615B7A?OpenDocument
    Hope its help.
    Regards,
    Isabelle
    Ingénieur d'applications
    National Instruments France

  • Occasionally when filling in forms in Safari 5.1.2 certain keys on the keyboard don"t work.  When I use the coma it opens up another tab.

    Occasionally when filling in forms in Safari 5.1.2 certain keys on the keyboard don"t work.  When I use the coma it opens up another tab. I've used other browsers to fill in the forms and they work fine so my keyboard is OK.

    Please read this whole message before doing anything.
    This procedure is a diagnostic test. It won’t solve your problem. Don’t be disappointed when you find that nothing has changed after you complete it.
    The purpose of this exercise is to determine whether the problem is localized to your user account, or is system-wide. Enable guest logins and log in as Guest. For instructions, launch the System Preferences application, select “Help” from the menu bar, and enter “Set up a guest account” (without the quotes) in the search box.
    While logged in as Guest, you won’t have access to any of your personal files or settings. Any application you run will behave as if you were running it for the first time. Don’t be alarmed by this; it’s normal. If you need any passwords or other personal data in order to complete the test, memorize, print, or write them down before you begin.
    As Guest, launch the application(s) and test. Same problem(s)?
    After testing, log out of the guest account and, in your own account, disable it if you wish. Any files you created in the guest account will be deleted automatically when you log out of it.

  • An issue using the COM components supplied with SAP GUI 6.2 or 6.4

    We are having an issue using the COM components supplied with SAP GUI 6.2 or 6.4.  We used to have SAP 4.6c and now we have 5.0.  When we were on 4.6c, we used these COM components to logon and execute RFC calls and we had much success.  Now that we are on 5.0, we can’t seem to instance any SAP functions that have something to do with SAP Workflow.  We have experienced this problem when using VB6 or .NET, but our existing code that always worked is in VB 6.0.
    SAP Components used:
    o     SAP Logon Control
    o     SAP Function Control
    o     Librfc32.dll
    o     Other supporting C DLLs and/or COM object supplied with the SAP GUI installation.
    For example, if we want to call the RFC ARCHIV_CONNECTION_INSERT, this code fails in VB6 when the “Set objworkflow = objFuncCtrl.Add(strFunction)” line of code executes.  Instead of returning an instance of the object ARCHIV_CONNECTION_INSERT function, no object is created.  In 6.2, SAP raises no errors, but the object we are trying to create is still “Nothing”.  If we use 6.4, SAP raises an error “SAP data type not supported” via a message box and then the object is still = Nothing.  Interestingly enough, the 6.2 GUI COM controls don’t display the error dialog.  The message box that is shown comes from the SAP Function COM Object "SAP.Functions" (wdtfuncs.ocx).
    Now, what is interesting is if we use the same code to call a standard function or custom function that doesn’t have anything to do with SAP Workflow, then the code works fine.  Again, all of our code used to work just fine on an SAP 4.6 system.
    Here is the code that fails:
        'SAP Logon control - object for creating connections to an SAP system
        Dim objSAPLogonCtrl As Object
        'SAP connection object
        Dim objConnection As Object
        'Object that will represent the SAP function called
        Dim objSAP As Object
        'SAP function control object - object factory for creating other SAP function objects
        Dim objFuncCtrl As Object
        'Create instance of an SAP logon conrol
        Set objSAPLogonCtrl = CreateObject("SAP.Logoncontrol.1")
        'Create a connection object
        Set objConnection = objSAPLogonCtrl.NewConnection
        'Define connecion parameters
        objConnection.ApplicationServer = "sapvm"
        objConnection.SystemNumber = "00"
        objConnection.Client = "800"
        objConnection.User = "iissap"
        objConnection.Password = "tstadm"
        objConnection.Language = "E"
        objConnection.TraceLevel = 10
        'call the logon method of the connection object
        If objConnection.Logon(0, True) = False Then
            MsgBox Error
            Exit Sub
        End If
        'Create an instance of the SAP Function control object
        Set objFuncCtrl = CreateObject("SAP.Functions")
        'Set the function control connection object
        Set objFuncCtrl.Connection = objConnection
        'Function name to be generated and called
        Dim strFunction As String
        strFunction = <b>"ARCHIV_PROCESS_RFCINPUT"</b>
        'Create an instance of the function defined in strFunction
        Set objworkflow = objFuncCtrl.Add(strFunction)
        If objworkflow Is Nothing Then
            MsgBox "Could not create object " & strFunction
        Else
            MsgBox strFunction & " object created."
        End If
    If anyone has seen anything like this or has any ideas, please help!
    Mike and Hameed
    <b></b>

    Hi,
    documentation on the Scripting API is available at ftp://ftp.sap.com/pub/sapgui/win/640/scripting/docs/
    This API is a replacement of the existing, obsolete COM interfaces.
    Best regards,
    Christian

  • Async/Sync Communication using JMS adapter without BPM

    Hello ,
    Pls suggest how Async/Sync Communication using JMS adapter without BPM .
    In my scenario I have JMS Sender and then RFC/JDBC as Sync and then again JMS receiver
    Pls explain  the concept of
    JMSMessageID and JMSCorrelationID  and how to use it by an example.
    Regards

    Hi,
    If you have selected JMSMessageID, JMSCorrelationID, or JMSProperty and entered a JMS message ID in these fields, you should see the Remove 'ID:' Marker from JMSMessageIDindicator. Set the indicator.
    This is necessary because the JMS specification stipulates that each JMS message ID starts with 'ID'. However, this conflicts with ISO-11578.
    - JMSMessageID (Uniqueness Is JMS-Provider-Dependent)
    (String) The unique message ID. Note that this is not a required field and can be null. Since the JMS provider might not use your provided message ID, the Connector sets a special property called $jms.messageid after sending a message. This is to insure that the message ID always is available to the user. To retrieve this value use conn.getProperty("$jms.messageid") in your After Add hook.
    - JMSCorrelationID (Uniqueness Is JMS-Sender-Dependent)
    (String) This header is set by the application for use by other applications.
    Hope this will help you.
    Regards
    Aashish Sinha
    PS : reward points if helpful

Maybe you are looking for

  • Safari wont open PLEASE HELP

    HI HERE IS THE PROBLEM REPORT COULD SOMEONE HELP ME. Process: Safari [1442] Path: /Applications/Safari.app/Contents/MacOS/Safari Identifier: com.apple.Safari Version: 5.0 (5533.16) Build Info: WebBrowser-75331600~3 Code Type: X86 (Native) Parent Proc

  • Have too many duplicates?

    I've crashed my computer a couple times in the past, and luckily I've always been able to get on one last time to back everything up.  I often wind up with a back up of a back up of a back up... and have mutiple copies of the same song.  I know iTune

  • EBS 11.5.10cu2 database upgrade using network dpimp

    Hi, I am upgradeing all my Oracle db's to 11.2.0.2 I have done the upgrade successfully for our custom student system, bpel and OEM. The plan I followed for this environments was: install Oracle db 11.2 on the new server (upgrading the hardware and O

  • Data display in numeric field

    Is there anyway to center or right align the entered data in a numeric field? TIA JZach

  • Apple TV (V2) - 1080P?

    Just started to use my new Apple TV, I must say very impressed and for £99 probably one of the best value products Apple have released for a while (lets hope they adopt this marketing technique during 2011!!) So I have my old Apple TV on ebay and I w