DSData/DDE Server FAQs
(Last Update: 05-Nov-2019, DSData FAQ0089)

DSData FAQ0001
02-May-2002
Q: What causes "data error" in "Link info?"
A: DSData thinks it is actually wrong data (i.e. wrong length, wrong character).


DSData FAQ0002 (see also DirectSOFT FAQ0001)
06-May-2002
Q: Using both DirectSoft Programming and DSData simultaneously, why does my PC lock-up?
A: You are probably using a common link. Instead, create two different links.


DSData FAQ0003
08-May-2002
Q: Does DSData support Wonderware's Fast DDE?
A: Yes.


DSData FAQ0004
08-May-2002
Q: What version of OPC does DSData support?
A: OPC v1.1


DSData FAQ0005 (see also ECOM FAQ0042; DirectSOFT FAQ0048; DL Plus FAQ0009; DNLoader FAQ0010; EZ Ethernet FAQ0008; HA-TADP FAQ0002; Lookout Direct FAQ0014; NetEdit FAQ0005; SDK FAQ0020)
31-Jan-2008
Q: Why doesn't the ECOM use subnet mask or gateway address like the ECOM100?
A: Since the ECOM doesn't do "master"-type communications, it doesn't use the subnet mask or gateway address. Whatever talks to the ECOM will be using IPX or UDP/IP, and the ECOM simply swaps the destination and source addresses in the telegram and responds in this way, not "caring" about the subnet or gateway. However, the ECOM100 acts more like a conventional TCP/IP device. The ECOM100 has the capability to be a master and has a full-blown TCP stack inside. Thus, if it is to transmit to an IP address not on its subnet, it will, of course, transmit to its configured gateway address instead.


DSData FAQ0006
06-Feb-2008
Q: Running LabView in Lookout Direct, get this error: "Unable to launch DSData OPC Server: Error occurred when reading OPC proxy information from CCDB. Is the OPC proxy registered?"
A: This is a LabView issue as documented on National Instruments website:

http://digital.ni.com/public.nsf/3efedde4322fef19862567740067f3cc/8571c6771328088486256b330058032e?OpenDocument

If the above link dies, please either search NI's website for this error, or send an e-mail to support@hosteng.com, and we will send you the full text (it is rather lengthy).


DSData FAQ0007
27-Jun-2002
Q: Attempting to use two NICs in PC, getting CSMain error.
A: Edit the DS400.INI (see DirectSOFT FAQ0204) and disable COM settings and retry. If it works, there is a conflict with the COM ports. If it doesn't work, edit the files again disabling Ethernet links. If it works, then there is a conflict between the NICs.


DSData FAQ0008
02-Jul-2002
Q: What if I want to use DSData on multiple machines?
A: License agreement states you can install it on multiple machines, but can only have one PC actively using it. Therefore to use on multiple machines, multiple copies of DSData should be purchased.


DSData FAQ0009
04-Dec-2002
Q: How can I speed up the data throughput of my DSData application?
A: Consider the following:

  1. If using serial communication, then use fastest possible baud (bps). 
  2. Use an ECOM instead of serial connection . . . much faster.
  3. Creating Subtopics in DSData will allow you to assign different update intervals, thus enabling you to prioritize, thus increasing throughput on higher priority Items.
  4. Win95, Win98, WinME operating systems are terribly slow; therefore use WinNT, Win2K or WinXP, these are sometimes 10x faster. 
  5. If using ECOM, give it an isolated network if possible, as network traffic can effect data through-put.
  6. Use fastest PC possible. 
  7. If using the Ethernet SDK, use asynchronous reads as opposed to synchronous reads in your application code. 
  8. Each write is handled individually, therefore if writing to individual bits it is better to group them together and write once to the imaged V-memory of the PLC instead of each bit having its own write. For example, if using DL260 CPU, instead of writing to C0, C1, C2 individually, set these bits in a word and write the single word to V40600 where C0, C1 and C2 are imaged. (See user manual for the mapping for each DL CPU). 
  9. Each read is grouped automatically by DSData whenever it can. Therefore, if possible when doing reads, group your data in contiguous blocks.
  10. Creating Items manually in DSData cuts down on execution code in DSData because the Item only gets created once (manually by you) as opposed to being created every time per request when memory references are used. Therefore, Creating Items (e.g. "Fred") and using them in the DDE/OPC reference instead of using memory references (e.g. "V2000") will speed up data throughput.
  11. ECOMs do at least 1 comm cycle of approximately 128 bytes per PLC scan, but in faster CPUs it can do as many as 3. So using a faster PLC CPU (e.g. 260 instead of a 240) will help. 
  12. Since the ECOM comm cycle is PLC scan dependent, then anything you can do to make the PLC scan faster will help. 
  13. Make sure no other applications or devices are talking to the same PLC via the same ECOM or serial port (e.g. like having DirectSOFT doing status while DSData is running, or PLC doing/responding to RX/WX from other PLC). There is only so much bandwidth between the serial port/ECOM and the CPU itself.

Measuring the speed:


DSData FAQ0010
23-Dec-2002
Q: How to copy or save a DSData "project?"
A: COMMSERV.RST contains the link information; DSDATA.RST contains the topic information.


DSData FAQ0011
23-Dec-2002
Q: Can DSData run without DirectSOFT installed?
A: Yes.


DSData FAQ0012
30-Dec-2002
Q: Can an application that supports DDE and one that supports OPC both be used to talk to a DL06 via DSData?
A: Yes. DSData supports DDE and OPC data formats.


DSData FAQ0013
30-Dec-2002
Q: Does the OEM License version of DSData allow me to send a copy of DSData to customer's PC as part of his application I am writing?
A: Yes. DSData OEM is for distribution with PCs sold as part of your customer's application.


DSData FAQ0014
13-Jan-2002
Q: Using DDE Server v1.0 and getting "No foreign application responded."
A: Either: 

  1. The DDE Server isn't running, or . . .
  2. There is a typo in the service name "DSDDE," or . . . 
  3. There is a typo in the topic name.

DSData FAQ0015
13-Jan-2002
Q: DSData has a nickname for an element that does not show up in the DirectSoft project.
A: Since nicknames are first created in DirectSoft then the correct project must not be loaded. Reload DirectSoft project.


DSData FAQ0016 (see also DirectSOFT FAQ0081)
13-Feb-2008
Q: Upon starting DSData or DirectSOFT, get "Critical error 1004 invalid INI file."
A: The "INI file" is a reference pointing to the initialization file for DSData and DirectSOFT (i.e. DS400.INI or DS500.INI files). This error means one of two things (See 1. & 2. below):

  1. Can't find the .INI file.
  1. The .INI file is invalid.

If none of the above works use the Search function on your PC and find all occurrences of the .INI file; delete them; uninstall DSData (or DirectSOFT) and reinstall.

NOTE: On a Win2K Server, the .INI file must be in the Administrator's WinNT folder.


DSData FAQ0017
21-Jan-2003
Q: Does DSData require IPX or can it run only on TCP/IP?
A: DSData does not require IPX (if you have v4.0 Build 18). Earlier versions used an older CommServer that had some issues with not having IPX protocol loaded. See DSData FAQ0093 for installing protocols.


DSData FAQ0018
21-Jan-2003
Q: Can DSData be set up to use a different IPX network number?
A: No, DSData only uses IPX network number 0000 0000. Any other number and it won't talk.


DSData FAQ0019
28-Jan-2003
Q: What is the fastest way to retrieve data from V-memory up to PC? Serial or ECOM?
A: To go from PLC to PC, ECOM is the fastest using DSData.


DSData FAQ0020
28-Jan-2003
Q: Is there any way to define a single Item to address a block of V-memory?
A: Unfortunately this is not possible with DSData and the ECOM. It was an engineering decision given the then pros and cons. There must be a one-to-one correspondence between PLC data types and OPC/DDE reference types. So the problem begins with the fact that there's no block (or array) data type in the Direct Logic (DL) PLCs sold by Automation Direct. Without this data type in the PLC, there's no way for any DDE/OPC client to create an Item that can reference a range of data in the PLC. However, each read that you request from DSData is grouped automatically by DSData whenever it can. In other words, when you do reads of contiguous V-memory locations, DSData groups them into one read for the communications server (CommServer; CSMAIN) and they are read from the PLC as fast as possible. Once the data is gathered in this manner, DSData then separates this block of data into the individual Items.


DSData FAQ0021 (Similar to DSData FAQ0044 & DSData FAQ0064)
13-Jun-2003
Q: Is it possible to use a single application over a single Topic/Link to connect to multiple remote modems?
A: This would only be possible using HyperTerminal (or something similar) and a DSData Serial Link instead of a Modem Link. Also, the restriction would be that you cannot connect to multiple modems simultaneously. It has to be only one at a time because the DirectSOFT CommServer can only manage one modem link at a time.

There are quite a variety of ways of doing this, but here is a general outline of the steps:
  1. Use HyperTerminal to talk to local modem via a COM port.
  2. Use standard AT commands in HyperTerminal to call first remote PLC modem.
  3. Once remote modem connects, shut down HyperTerminal. You may have to configure HyperTerminal to NOT hang up the modem when it closes.
  4. In DSData create a Topic with a Serial Link to the COM port associated with the modem. (Do not create a Modem Link!).
  5. Use application to access values in the PLC.
  6. When finished, hang up modem, then repeat for next remote PLC modem phone number.

DSData FAQ0022
27-Jan-2003
Q: Using DSData and OPC's AsyncRefresh routine and getting the wrong response for the TransactionID.
A: The AsyncRefresh routine is a OPC v2.02 routine. DSData only supports OPC v1.0a and the corresponding routine is IOPCAsyncIO::Refresh) and the parameter "TransactionID" is handled differently. Therefore you must switch to OPC v1.0a .dlls for this to work.


DSData FAQ0023
04-Feb-2003
Q: Can remote PC get data from DSData running on local PC?
A: No, not directly. However, if the application running on the local PC has the ability, it could share the data with the remote PC, but this is a function of the local application getting data from DSData and not a function of DSData itself. But DSData was not designed for remote access, nor has it ever been tested this way. It's licensed to run on a single PC and provide a data connection to one or more applications on that PC.


DSData FAQ0024
04-Feb-2003
Q: What are the restrictions on characters used in user-created Item Names?
A: DSData's restrictions for Item Names are as follows:

  1. The first character must be an alphabet or underscore (A-Z, a-z or _)
  2. Must not be a valid PLC address (e.g. V40400).
  3. Must be unique.
  4. Must not be empty.
  5. The client accessing DSData may have further restrictions on length and other.

DSData FAQ0025
22-Nov-2002
Q: Will DSData work with NetDDE?
A: NetDDE was used in the days when DSData was a 16-bit application running on Win95. However, even then, Host was never able to get this reliably working.


DSData FAQ0026
10-Dec/2002
Q: How do I access a subtopic in Visual Basic?
A: Like this::

In Visual Basic (the subtopic is actually part of the item, so it is referenced on the .LinkItem property):
Test.LinkTopic = "DsData|TopicName"
Test.LinkItem = "SubTopic.V1510"
Test.LinkMode = 1


DSData FAQ0027
10-Dec/2002
Q: Can DSData be run as a service, or work with a client that is a service?
A: DSData is not a service application. If the OPC client talking to DSData is a service, it probably won't talk (will get errors). A WinNT service typically runs regardless of the login. And a WinNT service typically has two separate components, a user interface and a runtime. DSData has its GUI and runtime unified in a single application. Changing this would be a huge (read prohibitively expensive) undertaking. We've tried a few of the "run any executable as an NT service" programs with little success. The unified interface kills it.


DSData FAQ0028
11-Feb-2003
Q: Have a PC using Matrikon OPC Explorer and DSData talking to 60 ECOMs. Is there a way to add a new ECOM without having to restart DSData?
A: No. There is no way to do anything to a DSData Topic while any Topic is being accessed. Must restart.


DSData FAQ0029
23-Jul-2002
Q: Getting "Remote data not accessible" when starting client application.
A: This and various other errors like the following have a variety of solutions. Other errors somewhat related are:

Reasons for these errors:


DSData FAQ0030
28-Feb-2003
Q: Do you have any examples of how to use Microsoft Access with DSData?
A: No. However in Microsoft Access you can use the Visual Basic editor to write code to access DSData. This is described in Chapter 5 of the manual.


DSData FAQ0031
28-Feb-2003
Q: Is it possible to enable and disable a link in DSData using Visual Basic?
A: Yes. This is described in Chapter 5 of the DSData manual. The procedure starts on page 5-8 entitled "Using Subroutines To Read and Write Data." In this procedure instead of setting the LinkItem equal to a memory location in the PLC, set it to "Enable." This Item is one of the many that DSData predefines for every link created. By writing a "1" to Enable the link is accessible, by writing a "0" it is disabled.


DSData FAQ0032
02-Dec-2008
Q: How can I write a column of data words in an Excel spreadsheet to V-memory?
A: You must create a macro in Excel, give it a name, enter the code and then execute this macro in some manner (manually, or on some trigger). Here is an example of writing a list of 16 words from column 'A' to V-memory starting with V2000 via a DSData Topic named "mytopic":

     Sub WritePLC()

          'Declare these variables as local
          Dim StartingAddress
          Dim NumberOfRows
          Dim CurrentAddress
          Dim RowPosition
          Dim VMemoryAddress

          StartingAddress = 2000     'Starting V-memory address in octal (e.g. V2000).
          NumberOfRows = 16    
'Number of consecutive V-memory locations to write to.

          'The following formula converts the StartingAddress to a string, then...
          '...adds the &O (octal) radix prefix to that string, then...
          '...converts the octal representation to a usable decimal number.
          CurrentAddress = Val("&O" & Str(StartingAddress))

          'Open the DDE channel that uses a DSData TopicName called "mytopic"
          'You can change this to whatever your DSData Topic is named.
          Channel = DDEInitiate("dsdata", "mytopic")

          For RowPosition = 1 To NumberOfRows
               VMemoryAddress = "V" & Oct(CurrentAddress)     'Converts the CurrentAddress to a V-memory octal string.
               DDEPoke Channel, VMemoryAddress, Cells(RowPosition, 1)     'Writes data in the cell position to V-memory.
               CurrentAddress = CurrentAddress + 1
          Next RowPosition

          DDETerminate (Channel)

     End Sub


DSData FAQ0033
04-Mar-2003
Q: Why can't v3.0 and v4.0 of DSData be installed on the same PC?
A: Because both v3.0 and v4.0 of DSData have the OPC Service name of "DSData OPC Server." And on a given PC only one name can be registered as an OPC Service name. Thus when you are installing v4.0 it will ask you to uninstall v3.0.


DSData FAQ0034 (similar to DSData FAQ0009; see also DirectSOFT FAQ0065; ECOM FAQ0014)
07-Mar-2003
Q: How can I speed up the data throughput of my ECOM?
A: Consider the following:

  1. Give the ECOM an isolated network if possible, as network traffic can effect data through-put.
  2. ECOMs do at least 1 comm cycle of approximately 128 bytes per PLC scan, but in faster CPUs (e.g. DL260, DL05, DL06) it can do as many as 3. So using a faster PLC CPU will help. 
  3. Since the ECOM comm cycle is PLC scan dependent, then anything you can do to make the PLC scan faster will help. 
  4. Make sure no other applications or devices are talking to the same PLC via the same ECOM or serial port (e.g. like having DirectSOFT doing status while DSData is running, or PLC doing/responding to RX/WX from other PLC). There is only so much bandwidth between the serial port/ECOM and the CPU itself.

DSData FAQ0035
17-Mar-2003
Q: Can't get OPC Client to browse OPC Items in DSData.
A: Probably one of these:


DSData FAQ0036
18-Jun-2002
Q: Attempting event-based data logging. When Excel cell data changes, want to start data logging. Can you offer any hints?
A: There are two types of cell data changes (1) Editing the cell; (2) Non-editing cell data change.

(1) EDITING THE CELL - If the cell data changes based on an Excel edit, then Excel has a Visual Basic subroutine called "Worksheet_Change" that gets executed every time an edit occurs in Excel.

  1. Select Tools --> Macro --> Visual Basic Editor. 
  2. In the “Project – VBAProject” window at left, double-click on “Sheet1 (Sheet1)” to open it up. 
  3. In the “General” combo box at the top left of this now open Sheet1, select “Worksheet.” 
  4. In the combo box at the top right select the subroutine called “Change.” 
  5. Now enter this sample code:

          Private Sub Worksheet_Change(ByVal Target As Range)
               Dim cell As Range
               For Each cell In Target.Cells
                    If cell.Row = 1 And cell.Column = 1 Then
                         MsgBox "cell changed to " & cell.Value
                    End If
               Next cell
         
End Sub

  1. After entering the code, then, of course save it. 
  2. Switch back to the Worksheet view (normal Excel view).
  3. Now if you edit Cell A1, you will get a message box (e.g. “cell changed to ”). 

This is just a sample. It is used to fire up a message box, but it could be used to execute a macro.

(2) NON-EDITING CELL DATA CHANGE - If the cell data changes based on something other than an Excel edit (e.g. macro changes it; value read from PLC changes it) then Excel has a Visual Basic subroutine called "Worksheet_Calculate" that gets executed every time Excel recalculates all its formulas:

  1. Select Tools --> Macro --> Visual Basic Editor
  2. In the “Project – VBAProject” window at left, double-click on “Sheet1 (Sheet1)” to open it up. 
  3. In the “General” combo box at the top left of this now open Sheet1, select “Worksheet.” 
  4. In the combo box at the top right select the subroutine called “Caculate.” 
  5. Now enter this sample code:

          Private Sub Worksheet_Calculate()
               MsgBox "cell changed to " & Cells(1, 1).Value
         
End Sub

  1. After entering the code, then, of course save it. 
  2. Switch back to the Worksheet view (normal Excel view).
  3. Now if the data in Cell A1 changes, you will get a message box (e.g. “cell changed to ”). 

This, too, is just a sample. It is used to fire up a message box, but it could be used to execute a macro. For example, if the name of the macro was "MyMacro" then the subroutine would look like:

     Private Sub Worksheet_Calculate()
          MyMacro
     End Sub

Furthermore, note that the above Worksheet_Calculate() executes if ANY data changes in ANY cell of the worksheet. If, for example you just wanted to trigger a macro based on the data of a SINGLE cell changing it could look like this:

     Private Sub Worksheet_Calculate()
     'In this example we are interested as to whether Cell A1 changed value or not.
     'We store the previous value in Cell J10.
    
'NOTE: For this to work properly, the FIRST time, you must copy the value of A1...
     '...to J10 beforehand either manually or with some startup routine.

          If Cells(10, 10).Value <> Cells(1, 1).Value Then     'Checks to see if Cell J10 is equal to Cell A1
              MyMacro     'If A1 has changed from its previous value (J10) then execute MyMacro
          End If     
'If A1 has not changed from its previous value (J10) then do nothing.

          Cells(10, 10) = Cells(1, 1).Value     'Cell J10 is updated to its new value so the check will work the next time.

     End Sub


DSData FAQ0037
25-Mar-2003
Q: Can an SQL Server get data from DSData?
A: The real question is can your SQL Server support DDE or OPC? If so, then, of course, you can get data directly from DSData.


DSData FAQ0038
13-Aug-2002
Q: DSData works at first, but then after a while it locks up and my client can no longer get data from it.
A: This is probably caused by the client asking DSData for too much data too fast. Slow its access intervals and this should remedy the problem.


DSData FAQ0039
31-Mar-2003
Q: Downloaded DSSTART from your website, but I can't get it to work. The line in my INI file looks like this:

App2=APP.EXE /r c:\he3\he3datalog.txt,C:\Program Files\Personal Folder\Folder,6

A: One of the drawbacks of DSSTART is that it does not support long filenames. Thus, the reason yours doesn't work is probably because you have long filenames as your working directory. Try shortening the pathname to the "hashed" one. For example:

App2=APP.EXE /r c:\he\he3dat~1.xls,C:\Progra~1\Person~1\Folder,6

Unfortunately, in this example, if you happen to have more than one foldername that starts with "Personal" then the hashed foldername "Person~1" may not be correct. Instead it could be "Person~2" or "Person~3." Sometimes (depending on the operating system), you can go to the Command Prompt and using a DIR command see how the systems hashes the folder you are interested in. But, some Command Prompts support the long filenames. In such cases you would probably just have to change it blindly and experiment.


DSData FAQ0040
04-Apr-2003
Q: Can I copy .ESD Nicknames into the Subtopic level of DSData?
A: This is not possible. They are only copied at the Topic level.


DSData FAQ0041
04-Apr-2003
Q: How can I delete Items from the list that has been copied from the .ESD file?
A: This is not possible because DSData makes a link to the .ESD file when it powers up. To make changes, therefore, to this list, you would have to modify it from the DirectSoft documentation editor itself. However just because the Items exist in the DSData list does not mean they are active and taking up communication time or DSData processing time. Instead, they are only made active when and if the client using DSData requests data from them.


DSData FAQ0042 (see also DirectSOFT FAQ0088)
10-Apr-2003
Q: What is DBWin32 application?
A: It is a debugging tool used to troubleshoot and log vital information for applications like DS Data and DirectSOFT Programming.

With DS Data it can be utilized in two ways:

With DirectSOFT Programming it can be utilized for troubleshooting only. Follow the same procedure as above except, of course, start DirectSOFT Programming instead of DS Data. When you start the applications (e.g. DS Data, DirectSOFT Programming) you may be asked if you are sure you want to dump information in the logger. Just answer "Yes."


DSData FAQ0043
10-Apr-2003
Q: What are the limitations of the DSData Demo?
A: Time only. It is fully functional for 30 minutes.


DSData FAQ0044 (Similar to DSData FAQ0021 & DSData FAQ0064)
08-Apr-2003
Q: Is it possible to use a single application over multiple Topics/Links to connect to multiple remote modems?
A: This is possible using multiple DSData Modem links. Also, the restriction would be that you cannot connect to multiple modems simultaneously. It has to be only one at a time because the DirectSOFT CommServer can only manage one modem link at a time.

You would simply use DSData and create multiple Topics utilizing multiple Modem Links (i.e. different phone numbers). Since the DirectSOFT CommServer only supports one Modem Link at a time then you must disable the previous Link (i.e. write a "0" to the "Enable" Item) before accessing the next Topic. Writing a "0" to the "Enable" Item will cause the Modem Link to hang up. If it doesn't then this means that the Application is keeping the link "hot" or "live." The only way around this kind of response is to close the Application (which will definitely hang up the modem) and then reopen it using a different link.


DSData FAQ0045 (see also DirectSOFT FAQ0013; similar to ECOM FAQ0024)
10-Mar-2014
Q: Need general help on communications from PC to PLC and establishing a link.
A: First of all, always make sure you are using the latest version of DirectSOFT possible.

Secondly, if you are using an ECOM and have WinXP on your PC with a firewall (particularly with SP2), then you must do one of the following:

     (1)  Turn the firewall off, or
     (2) Create an exception for CSMAIN.EXE application (located in the BIN folder under your DirectSOFT folder), or
     (3) Create an exception for port #0x7070 (28784) for both TCP and UDP protocols, which is the port number that all of our Ethernet devices use for communication.

Thirdly, you can control which communications resources on your PC you want to let DirectSOFT use by entries in the DirectSOFT initialization file (DS500.INI):

COMMUNICATIONS RESOURCES

You must edit DirectSOFT's DS500.INI file to change communication resources.
(To pull up the .INI file for editing, see DirectSOFT FAQ0204)

There are 3 parameters that can be modified regarding communication resources:
     (1) COMxEnable - To edit this resource in the .INI file, see DirectSOFT FAQ0008.
     (2) ModemEnable - To edit this resource in the .INI file, see DirectSOFT FAQ0008.
     (3) EthernetEnable - To edit this resource in the .INI file, see DirectSOFT FAQ0008.

NOTE: In some extremely rare cases with DirectSOFT versions older than v4.0, to totally disable Ethernet resources you not only have to do the above, but also you may need to rename the files Devether.DLL and Protoecm.DLL to Devether.OLD and Protoecm.OLD. Don't forget to rename them back after troubleshooting!

STARTUP

  1. Using the resources enabled in the .INI file, DirectSOFT's CommServer tries to find PLCs.
  2. If it finds some, it creates DirectSOFT links to them.
  3. If it finds none, then it comes up without creating links.
  4. As it attempts to use communication resources on your PC then one of the following happens:
  1. DirectSOFT comes up normally. Yay!
     
  2. "Error connecting to PLC!" or "No response from PLC!"
    This means DirectSOFT found the resource on your PC OK, but it had trouble connecting to the PLC.
    - Check cabling or other physical things outside the PC.
    - If you are using a DL105, they tend to be a bit more sensitive to flakey cables and electrical noise. Try a new cable, especially if you can use the same setup and talk to other DL PLCs (e.g. DL205).
    - On a DL305 system make sure the power supply is capable of supplying enough power for the DCU. Try external power.
    - Could be Microsoft ActiveSync in using COM port.
  1. "Error: cannot access comm port. The port may not be present or another app may be using it"
    This means DirectSOFT can't gain access to the COM port because something else is using it.
    - Check to see if anything else is using COM port (Start --> Control Panel --> Administrative Tools --> Services):
         i)  RSLogix
         ii)  PDA Software (Palm Pilot, Pocket PC, etc.)
         iii)  GPS Software
         iv)  Digital Camera Software
         v)  IR (infrared) Drivers
         vi)  Microsoft ActiveSync
         vii) Palm OS HotSync
         viii)  Harmony Services
    - Sometimes if upgrading operating systems (e.g. Win2K to WinXP) the COM ports somehow get dysfunctional. May have to disable all COM ports in the BIOS and then reinstall the upgrade, then re-enable them in the BIOS.
    - If using a USB-to-Serial converter or a USB Port Replicator, its driver may not act like a regular COM port. (DirectSOFT "thinks" it is talking to a regular COM port). If this is the case there is no immediate fix. Host Engineering periodically updates DirectSOFT attempting to compensate for these kinds of drivers problems.
    - If using a USB-to-Serial converter, sometimes it is very important that you load the driver first, before connecting the device itself. In fact, in some cases, if this is done in the wrong order it takes special steps to fix the problem. See the website of the manufacturer of your converter for details. See
    DirectSOFT FAQ0011.
    - Try disabling all resources in the .INI file.
  1. "Transport protocol error"
    This means you are using Ethernet as a link and it timed out and is commonly due to one or more of the following issues:
    - Bad cabling; check all cables to make sure they are OK (e.g. Are they susceptible to noise due to bad shielding, etc?)
    - Using wrong cable (cross
    over instead of straight-through, or vise versa). Make sure that the Link light is ON; this means that the cable electrical connection is good.
    - T
    he cable is running through a very electrically noisy environment.
    - ECOM not seated properly. Make sure it is.
    - If your PC has 2 (or more) NICs (Network Interface Cards), then make sure that you try one of these:
         - To reprioritize your NICs you must get to Advanced Settings. This is different depending on which Windows OS you have:
              If you have WinXP:
                   (1)  Start -->  Control Panel.
                   (2)  Double-click on the "Network Connections" icon.
                   (3)  On the menu at the top, select Advanced --> Advanced Settings...
              If you have WinVista:
                  
    (1)  Start -->  Control Panel.
                   (2)  Double-click on the "Network & Sharing Center" icon.
                   (3)  At the left of this window, click on "Manage network connections"
                   (4)  Press the <ALT> key to make a menu appear at the top of this window.
                   (5)  On the menu at the top, select Advanced --> Advanced Settings...
              If you have Win7:
                   (1)  Start --> Control Panel.
                   (2)  Select "Network and Intranet" at the top.
                   (3)  Double-click on the "Network & Sharing Center" icon.
                   (4)  Press the <ALT> key to make a menu appear at the top of this window.
                   (5)  On the menu at the top, select Advanced --> Advanced Settings...
              Once you have the Advanced Settings pulled up, then it is the same for all Windows OSs:
                   (1)  On the "Adapters and Bindings" tab, in the top window, select the connection you are using.
                   (2)  Use the green arrows at the right to move this connection to the top of the list.
                   (3)  Press <OK> and close Network Connections window.
                   (4)  You may have to reboot your PC.
         - Uninstall or disable one NIC
         - Make sure that the NICs don't have common protocols enabled (i.e. IPX and TCP/IP). In other words, you might enable IPX on one NIC and TCP/IP on the other NIC, but not on both simultaneously (see DirectSOFT FAQ0183 for installing protocols).
    There are multiple LAN connections in your Network Connections. Disable all but the one you are planning on using.
    - There are "Bridged" LAN connections in your Network Connections. Unbridge them by setting them simply to "Disabled."
    - There are WAN connections enabled. Disable them.
    - Using an H0-ECOM/ECOM100 and the PLC firmware is not up to date. Make sure it is.
    - Using an H0-ECOM/ECOM100 and a D0-06LCD display but it is not up to date. Make sure the LCD has a date code of 032A or later.
    - Using an H2-ECOM/ECOM100 and you have it installed in Slot 0 (the slot adjacent to the CPU). Install it in a different slot.
    - Using an H4-ECOM/ECOM100 and it has bent pins on the ECOM and/or the CPU. Check for bent pins.
    - The ECOM, CPU or the backplane is bad.
    - Extremely busy network traffic. Isolate the network.
    - Busy network or PLC sluggishness. Under the Link's Advanced Settings (Link Editor, Port Tab), try increasing the Timeout and Retry values (e.g. Try going to a DOS command prompt window and using the "ping" command to ping the ECOM's IP address. If Ping works, note the response times. In the link's Advanced Settings (Link Editor, Port Tab), increase the Timeout value to at least 2 or 3 times the response value.)
  1. "PLC is not in terminal mode!..."
    -
    The mode switch on the PLC is in the RUN or STOP position. Switch it to the TERM position.
  1. "Unable to open Online Program"
    - The mode switch on the PLC is in the RUN or STOP position. Switch to the TERM position.
  1. "CSMAIN.EXE error" or DirectSOFT locks up or mouse hangs up.
    This means that DirectSOFT's CommServer has accessed a resource on your PC that has a conflict or doesn't exist.
    - First try
    upgrading to at least DirectSOFT v4.0 Build 22. We believe we have fixed the last of these types of failures in this build! (If you have v3.0 there are some improvements in Build 80, however, it could still have some problems since we have stopped development on v3.0).
    - If you have DSData simultaneously using the same link as DirectSOFT then instead make separate links (i.e. one link for DSData and one link for DirectSOFT).
    - Try disabling all resources in the .INI file.
    - Make sure TCP/IP protocol is loaded.
    - If using v4.0 Build 16 or earlier, or v3.0 Build 71 or earlier, you may need to:
         (1)  Upgrade to later version;
         (2)  Make sure IPX protocol is loaded (
    see DirectSOFT FAQ0183 for installing protocols) for the NIC you are using.
    - Could be Microsoft ActiveSync is using COM port.
  1. "Error opening connection to Ethernet device"
    This is usually caused by having 2 (or more) NIC (Network Interface Cards). Thus try one of these:
         - To reprioritize your NICs you must get to Advanced Settings. This is different depending on which Windows OS you have:
              If you have WinXP:
                   (1)  Start -->  Control Panel.
                   (2)  Double-click on the "Network Connections" icon.
                   (3)  On the menu at the top, select Advanced --> Advanced Settings...
              If you have WinVista:
                  
    (1)  Start -->  Control Panel.
                   (2)  Double-click on the "Network & Sharing Center" icon.
                   (3)  At the left of this window, click on "Manage network connections"
                   (4)  Press the <ALT> key to make a menu appear at the top of this window.
                   (5)  On the menu at the top, select Advanced --> Advanced Settings...
              If you have Win7:
                   (1)  Start --> Control Panel.
                   (2)  Select "Network and Intranet" at the top.
                   (3)  Double-click on the "Network & Sharing Center" icon.
                   (4)  Press the <ALT> key to make a menu appear at the top of this window.
                   (5)  On the menu at the top, select Advanced --> Advanced Settings...
              Once you have the Advanced Settings pulled up, then it is the same for all Windows OSs:
                   (1)  On the "Adapters and Bindings" tab, in the top window, select the connection you are using.
                   (2)  Use the green arrows at the right to move this connection to the top of the list.
                   (3)  Press <OK> and close Network Connections window.
                   (4)  You may have to reboot your PC.
         - Uninstall or disable one NIC
         - Make sure that the NICs don't have common protocols enabled (i.e. IPX and TCP/IP). In other words, you might enable IPX on one NIC and TCP/IP on the other NIC, but not on both simultaneously (see DirectSOFT FAQ0183 for installing protocols).
  1. "Comm error reading program from PLC"
    The mode switch on the PLC is in the RUN or STOP position. Switch it to the TERM position.
    - This error means that DirectSOFT received an incorrect response from the PLC, so the physical connection is probably OK; however, it is possible that the port of the PLC itself is defective.
    - If you are using a
    USB-to-Serial converter it could be there is an incompatibility between your PC and the converter. (e.g. we know of an incompatibility between the Belkin F5U409-CU converter and the Toshiba 5005 laptop).
    - Make sure you are
    not running two copies of DirectSOFT simultaneously (like v3.0 and v4.0). Also, along these lines, if you do install two versions, this is OK as long as they are in different folders and are not run at the same time.
    - We
    have found that RSLogix (Allen-Bradley) software interferes with the PC's communcations over serial ports (e.g. COM1). So if doing a serial link and you get this error, it could be due to this software. Make sure that this software is not running in the background, or that it does not run in the Terminate Stay Ready (TSR) fashion.
    - Increase the link's Retries and Timeout values; especially if using a modem link.
    - If using a modem link, make sure that both the Compression and Error Correction are turned off.
  1. "Knowledge base mismatch"
    Message means the CPU picked for the link is not supported in the installed version of DirectSOFT.
  1. "Error attempting to access unlocked device"
    This is caused when trying to reconnect to a PLC in which DirectSOFT did not disconnect from previously in a clean manner. Solution is normally to either try again, or power cycle the PLC.
    - To
    prevent this from happening in the future, either:
         - Use the PLC --> Disconnect from DirectSOFT before unplugging the cable to the PLC.
         - Close DirectSOFT before unplugging the cable to the PLC.
  1. Goes offline by itself after using the link.
    The only thing that we have seen that cures this strange behavior is to uninstall DirectSOFT and then reinstall.
  1. Sometimes gets a PLC password prompt; but the PLC doesn't have a password!
    This is caused by data errors in the communication. The problem is electrical noise either due to an excessively noisy environment, or a bad cable (e.g. shielding going bad).
  1. "Comm error unlocking PLC"
    The first thing DirectSOFT tries to do when connecting is to unlock the PLC. This is to see if the PLC sends back a warning that there is a password. If you get this message instead of a password prompt, it means that something went amiss when DirectSOFT attempted to unlock. The PLC sent back an invalid response or didn't send a reply at all. For solutions try the things listed under "Transport protocol error" above.
  1. "Support for the PLC type specified in the link is not installed"
    This simply means what it says, and is usually caused by one of the following: - Unknown PLC specified in the link, therefore check if the CPU specified in the link matches your hardware.
    - PLC is not supported with the version of DirectSOFT you are using.
    - DirectSOFT cannot find the knowledge base DLL. This is usually an installation problem. You may need to uninstall and reinstall making sure you are the Administrator of your PC.
    - PLC responding to link is sending an invalid identifier. This may be a PLC problem. You might try power cycling the PLC.

  2. "Error reading PLC ID"
    This means the link can talk to the PLC port, but it cannot actually get the PLC ID (i.e. it's connected properly but the specific transaction to read the PLC ID fails).
    - H4-ECOM/ECOM100s or DCMs have bent pins on either the module itself or on the PLC's backplane for that slot.
    - Communication is attempted using DirectNET (or ECOM) protocol instead of K-sequence (this will be repaired in DirectSOFT v6.0)
  3. "Operation not supported"
    This means DirectSOFT gave a command that the PLC did not recognize, or the checksum of the transmission was incorrect. Possible solutions...
    - Check physical connection (COM port, cable, USB-to-serial driver, etc.)
    - Slow baudrate down. If this works, this is an indication of possible noise interference.
    - Attempt to clear scratchpad memory in the PLC and power cycle.
    - A means of troubleshooting would be to use the Dump=1 feature. See below under DUMP heading.

MODEM LINKS

Modem links must be configured manually. Here is a checklist for getting a modem connection working:

USB-TO-SERIAL

These devices have drivers with them that should make them act like regular COM ports. (See DirectSOFT FAQ0011 for approved USB-to-Serial devices tested by Host Engineering). However there have been a few vendors that don't do this with their drivers. DirectSOFT "thinks" it is talking to a COM port, Ethernet NIC, or modem. It doesn't know a USB-to-serial device.

The order of installation, however, seems to be important:

  1. Install USB device driver first.
  2. Connect the USB device secondly.

AUTOSENSE

Once links have been created for DirectSOFT, it validates these each time you start it. You can stop this from happening by editing the .INI file and changing AutoSense:
- To pull up the .INI file for editing, see DirectSOFT FAQ0204.
- To edit Autosense parameter in the .INI file, see DirectSOFT FAQ0008.

DUMP (for troubleshooting SERIAL and MODEM links)

When you can't figure why things won't work exactly right, you can use this debug function with a little help from Automation Direct, or Host Engineering. This parameter is in the .INI file.
- To pull up the .INI file for editing, see DirectSOFT FAQ0204.
- To edit Dump parameter in the .INI file, see DirectSOFT FAQ0008.

After making this change you should start the debug window logger:

  1. Start --> Programs --> DirectSOFT --> DirectSOFT Program Tools --> DBWin32 Logger
  2. Start DirectSOFT.
  3. DirectSOFT will ask you if you want to enable the debug mode. Answer <YES>.
  4. Now DirectSOFT will dump information into the open debug window.
  5. Save this data into a text file and send to Automation Direct or Host Engineering.

DSData FAQ0046 (similar to DSData FAQ0045; see also DirectSOFT FAQ0037)
03-Feb-2003
Q: First time starting DirectSoft v4.0, crashes and gets CSMain.exe error.
A: The first thing to check is to make sure that IPX protocol is loaded for the NIC that is installed (see DSData FAQ0093 for installing protocols). Part of this problem was remedied in v4.0 Build 18 so upgrading may very well fix the problem. ReadMe_P.htm file says: "3. CommServer -- Fixed CommServer crash when IPX not installed -- we hope!" However, we know there are still some other issues centered around IPX protocol that we are currently debugging.


DSData FAQ0047 (see also DirectSOFT FAQ0091)
16-Aug-2002
Q: I have DirectSoft v4.0 Build 16, and in DS Launch, all the versions show as v4.0.016 except for one; DSData.exe shows up as v4.0.012.
A:  This is a bug in v4.0 Build 16. To fix, upgrade to at least v4.0 Build 18.


DSData FAQ0048
20-Aug-2002
Q: Using a modem link with DSData; is there a way to make the modem status window invisible?
A:  No, not with DSData. If, however, you are writing Visual Basic code it may be possible to have it minimize immediately after it is activated. For example, it may be possible to look for certain text on the Task Bar using Visual Basic code. But how to do this is a question that must be put to the Microsoft Visual Basic help line.


DSData FAQ0049
20-Aug-2002
Q: Using a modem link with DSData; is there a way to read the modem errors that may occur?
A:  No, not directly with DSData. If you are using a modem link then you are allowing DSData to control the modem. Because of this there is no direct access to the modem itself. However, here is an idea if you are using Visual Basic to access DSData:

  1. Familiarize yourself with TAPI (Telephony Application Pgramming Interface) coding and then write Visual Basic code to control the modem yourself instead of allowing DSData to control it.
  2. Configure DSData to use a serial comm link (e.g. COM5) instead of a modem link.
  3. In your TAPI Visual Basic code, control the modem via this comm link (e.g. COM5).

Controlling the modem yourself with TAPI code would allow you to have access to the modem errors, however writing this type of control yourself is time consuming and takes quite a bit of Visual Basic coding.


DSData FAQ0050
20-Aug-2002
Q: Is it possible to make the DSData server invisible when it is running?
A:  Yes. Follow these steps:

  1. Start DSData.
  2. From the menu select View --> Options... (This pulls up the DSData Server Options window).
  3. In the "Run DSData Server box," select "on System Tray."
  4. Click the OK button.
  5. Click the Minimize button at the top right of the DSData Server window. (Notice that DSData no longer appears on the Task Bar; instead the DSData icon appears on the System Tray at the bottom right.)
  6. Now right-mouse click on the icon in the System Tray and pick Close from the sub-menu.

Now, the next time you start DSData, it will not appear on the screen, nor will it appear on the Task Bar. Instead, all that will appear is the small DSData icon in the System Tray.


DSData FAQ0051
15-Apr-2003
Q: Is it possible that data throughput is slower with DSData than with the DDE Server?
A:  Yes. On a few PC / Operating System / application combinations we've seen better responses with the DDE Server than with DSData. Without getting too technical, the 16-bit DDE Server basically had one copy of the DDE data and the pieces of the DDE Server sent messages to each other to process the data. Because of the protected-mode nature of 32-bit applications, the DSData Server requires two copies of the data; one in the communication server and on in DSData. This means that the various pieces need to send process messages as well as actual data to each other. The up-side is that WinNT and Win2K are optimized to handle these types of applications.


DSData FAQ0052
15-Apr-2003
Q: My Visual Basic application is very slow to load when it uses DSData. Why is this and what can I do to make it faster?
A:  On startup, Visual Basic consumes an inordinate amount of CPU time. When it does this, it prevents the Windows DDE Messaging system and DSData from getting any CPU time to process communications requests. To make the problem worse, this lag causes the communications requests to time out, which in turn generates retries. Once Visual Basic (VB) has completed its startup, the communications can take place, and the system becomes responsive again. We've seen delays as high as 30 seconds on some PCs. However, there is a way to "trick" the system into coming up faster by causing all of the initial communications requests to fail immediately. In the FormLoad method, by setting the DDE Timeout value to 0 and ignoring any errors, we get a window of opportunity to get the data points logged into DSData. We then reset the Timeout values back to a reasonable value, like 50, after the form has successfully loaded. Here's an outline of the process:

Sub FormLoad
    On Error Resume Next

    TextBox1.LinkTimeout = 0
    TextBox1.LinkMode = 1

    'Repeat the above for each TextBox or Label.
    'If you create arrays of TextBox's or Label's, you can use a For/Next loop to do this

    Set TextBox1.LinkTimeout = 50
    'Repeat the above for each TextBox or Label

End Sub


DSData FAQ0053 (see also DirectSOFT FAQ0011)
17-Jun-2002
Q: Trying to get USB adapter to work, getting "Comm Error - Cannot access comm port. The port may not be present or another application might be using it."
A: Make sure that there are not any other devices (like internal modems) using the COM port that the USB adapter driver is trying to use. Also, it is recommended that you upgrade DirectSoft to at least v4.0 Build 18, or v3.0 Build 80. Or make sure you use a USB that has been approved and tested by Host Engineering for use with DirectSoft. Also, it is recommended that you:

  1. Install USB device driver first.
  2. Connect the USB device secondly.

 This list is updated as we go:


DSData FAQ0054
16-Apr-2003
Q: How can I display a value from DS Data in an Excel TextBox?
A: Following are two examples. First create a DS Data Topic (e.g. Test).

Example#1:

  1. In cell A5, enter     =dsdata|test!v7747    (V7747 in most DL PLCs is incrementing automatically).
  2. Right-click on your TextBox and pick Properties.
  3. Under the parameter called LinkCell enter A5.

Example#2:

  1. In cell A5, enter     =dsdata|test!v7747
  2. For the TextBox, on the formula line enter    =$a$5

DSData FAQ0055
29-Feb-2008
Q: When I start up my PC, my client application starts trying to access DSData before it gets up and running. How can I remedy this?
A: Host Engineering has created a utility called DSStart that will allow you to sequence the startup of several applications with a single icon, usually in your Startup group. You specify the application name along with a delay time. However, this utility is an older 16-bit application that does not understand long file names. Therefore you must use the hashed names for pathnames that are longer than 8 characters (e.g. "c:\Program Files\.." would be entered as "c:\Progra~1"). You can download this utility here: DSStart.ZIP.


DSData FAQ0056
09-Sep-2002
Q: In DSData there is an Item named "Enable" that I did not create. What is this used for?
A: This Item is automatically created for every Topic in DS Data. It allows you to manually control a link. If it is set to "1" then the link is enabled; if it is set to "0" then the link is disabled and is not being used. For details on how to use this see the DS Data manual (e.g. in 2nd Edtion Rev. A, Chapter 3, page 3-16). The basic format is:

     Sub DisableLink()

          Channel = DDEInitiate("dsdata", "mytopic")     'Open DDE channel to DS Data topic
          DDEPoke Channel, "Enable", Cells(1, 1)     
'If Excel cell A1 (i.e. Cells(1, 1)) has a the value of "0", this will disable "mytopic" link.
          'To re-enable the link, make sure Excel cell A1 has the value of 1, and re-execute this macro.

          DDETerminate (Channel)     'Closes DDE channel to DS Data topic

     End Sub


DSData FAQ0057
08-May-2003
Q: Using Excel, how can I log multiple V-memory locations using a macro, but without them continuously updating?
A: The following macro example gets 16 V-memory locations from the PLC staring at V2000. It is designed to work with a DS Data topic by the name of "Mytopic":

     Sub GetSomeData()

          'Declare these variables as local
          Dim StartingAddress
          Dim NumberOfRows
          Dim CurrentAddress
          Dim RowPosition
          Dim VMemoryAddress

          StartingAddress = 2000     'Starting V-memory address in octal (e.g. V2000).
          NumberOfRows = 16     'Number of consecutive V-memory locations to log.

          'The following formula converts the StartingAddress to a string, then...
          '...adds the &O (octal) radix prefix to that string, then...
          '...converts the octal representation to a usable decimal number.
          CurrentAddress = Val("&O" & Str(StartingAddress))

          'Open the DDE channel that uses a DS Data TopicName called "mytopic"
          'You can change this to whatever your DS Data Topic is named.
          Channel = DDEInitiate("dsdata", "mytopic")

          For RowPosition = 1 To NumberOfRows
              VMemoryAddress = "V" & Oct(CurrentAddress)     'Converts the CurrentAddress to a V-memory octal string.
              Cells(RowPosition, 1).Value = VMemoryAddress     'Lists the data point in the column beside the actual values. 1 is the A column.
              Cells(RowPosition, 2) = DDERequest(Channel, VMemoryAddress)     'Lists the actual value. 2 is the B column.
              CurrentAddress = CurrentAddress + 1
          Next RowPosition

          DDETerminate (Channel)

     End Sub


DSData FAQ0058
06-Aug-2002
Q: Why can't I add an Item to DSData using the menus?
A: This is not possible at the moment. Now you have to right-click on the TopicName and select Add Item... However, this will probably be added to later versions of DSData (i.e. greater than Build 22).


DSData FAQ0059
11-Sep-2002
Q: What is the Class ID number for DSData?
A:  5C03F88E-8AC9-11D3-A47D-00C0F0323521


DSData FAQ0060
11-Sep-2002
Q: Can DSData be closed from another application?
A:  Yes. This is the same as shutting down any other Windows application. Like in VisualBasic you would use FindWindow API, followed by WM_CLOSE. DSData has actually 2 pieces; (1) DSData itself; (2) CommServer (CSMAIN). Closing DSData may not necessarily close the CommServer (CSMAIN) if, for example, you have DirectSoft Programming running. The reason is that both DSData and DirectSoft Programming use the same CommServer.


DSData FAQ0061
21-Aug-2003
Q: Is it possible to get data into an Excel spreadsheet and perform mathematical operations on it before you output the data to a cell?
A:  Yes. The following macro is an example of how you can do this:

     Sub GetSomeData()

          Channel = DDEInitiate ("dsdata", "topic")
          Fred = DDERequest (Channel, "V7747")   
 'V7747 was picked because in most DL PLCs this is a changing clock value.

          'DDERequest returns an array data type. So now Fred is an array.

          Cells(1, 1) = Fred     'Displays the value from V7747 in Cell A1.
          Wilma = Fred(1) + 1000     'To use Fred in an expression, you must use its array form.
          Cells(2, 1) = Wilma    
'Displays the new value in A2.

          DDETerminate (Channel)

     End Sub


DSData FAQ0062
05-Dec-2002
Q: When I execute my Visual Basic program that is supposed to talk to DSData, I get "DDE method invoked with no channel open" error.
A:  According to MSN Internet website, this error means that a DDE method (LinkExecute, LinkPoke, LinkRequest, or LinkSend) was performed on a control that isn't involved in a valid DDE conversation. It lists two proposed solutions:

  1. Changing the LinkTopic property terminates an existing DDE conversation, but doesn't automatically establish a new conversation. After changing the LinkTopic property for a control, you must set the LinkMode property of the form to 1 (Automatic) or 2 (Manual) before executing a DDE method on this control.
  2. You executed a DDE method on a control with LinkMode set to 0 (None). Set LinkMode to 1 (Automatic) or 2 (Manual) and try again.

DSData FAQ0063
09-Jun-2003
Q: How can I get my VB.NET application working with DSData?
A:  DSData has two means by which it passes information on to its client application; (1) DDE or (2) OPC. Therefore it is necessary that any client application wishing to communicate with DSData speak one of these protocols. By default VB.NET does not support DDE nor OPC. Therefore to get VB.NET to talk to DSData two software components must be added to VB.NET:

  1. OPCDA Client/Server.
  2. OPCDA.NET Wrapper Layer.

In the above diagram:

The components you need to purchase are being sold by a number of companies. One of those companies is called "Techno Software." (See http://www.technosoftware.com).


DSData FAQ0064 (Similar to DSData FAQ0021 & DSData FAQ0044)
08-Oct-2003
Q: Is it possible to use a single application over multiple Topics/Links to connect to multiple modems simultaneously?
A:  Simultaneous Modem Links are not possible because the DirectSOFT CommServer can only manage one Modem Link at a time. However, it is possible by using HyperTerminal (or something similar) and multiple DSData Serial Links because DirectSOFT CommServer can manage multiple simultaneous Serial Links.

There are quite a variety of ways of doing this, but the general steps are outlined below:
  1. Use HyperTerminal to talk to first local modem via a Serial Link to the COM port associated with that modem.
  2. Use standard AT commands to call remote PLC modem.
  3. Once remote modem connects, shutdown HyperTerminal (you may have to configure HyperTerminal to NOT hangup when shutting down).
  4. Create a Topic with a Serial Link to the COM port connected to the modem. (Do not create a Modem Link).
  5. Repeat Steps 1-4 as needed for each modem.

When you are finished you should have your multiple modems connected simultaneously to multiple PLCs.


DSData FAQ0065 (similar to DirectSOFT FAQ0234)
14-Jul-2003
Q: If using DSData and the PC's power fails, when the PC comes back up instead of DSData starting back and working without manual action, I get the message, "Database not closed properly" and I have to manually close this. How can I get around having to take manual action?
A:  This is caused by shutting down improperly. By shutting down DSData properly this can be prevented. However, if this is not possible then as of DSData v3.0 Build 44 and later, you can turn all messages off for DSData by adding a line in the DS400.INI file. To edit the see DirectSOFT FAQ0204. Edit the file and make it look like:

[COMMON]
MessageBoxTime=5

The number '5' means that the startup error message will self-acknowledge and disappear in 5 seconds. If you put a zero there, it will wait forever (i.e. no change in behavior). You can set this number to just about any value you want (within reason, of course).

WARNING:  This line turns off messages for the CommServer which is the driver that DSData uses to talk to the DL PLCs. DirectSoft Programming software also uses the same CommServer; so turning these type messages off for DSData will also turn them off for DirectSoft Programming software.


DSData FAQ0066
08-Dec-2003
Q: After attaching an ESD document to my DSData I noticed that none of the V-memory Nicknames were shown.
A:  This and a wide variety of other bizarre symptoms usually are associated with a corrupt documentation database in your DirectSoft Programming project. Many times when the database is corrupt it is not repairable and you must revert to a backup copy. See DirectSOFT FAQ0040 for possible solutions to this and other documentation problems.


DSData FAQ0067
26-Sep-2002
Q: What is the maximum number of Topics that can be created in DSData?
A:  Essentially this is such an enormous number (greater than 16,000) that it is not practical to even publish the limit. So create as many as you need.


DSData FAQ0068
26-Sep-2002
Q: Using Wonderware to talk to DSData. Application works for a long time and then gets, "DSData has received too many errors, shutting down the server."
A:  This is an accumulated error problem. Some things to consider and try:


DSData FAQ0069 (see also DirectSOFT FAQ0125)
26-Sep-2002
Q: When configuring a link, on the Port tab, Advanced Settings, what does "Application Timeout" VS "Timeout" mean?
A:  Refer to the diagram. "Application Timeout" is the time the client will wait on the link to CommServer for a response. "Timeout" is the time the CommServer will wait for a response from the PLC.


DSData FAQ0070 (see also DirectSOFT FAQ129; ECOM FAQ0030; NetEdit FAQ0009)
03-Oct-2002
Q: Does the ECOM work with DHCP? Or does the PC's NIC have to have a static IP address in order to communicate with an ECOM?
A: The ECOM does not support DHCP addressing, (ECOM100s support DHCP). The ECOM must have a static IP address. However, the PC that is talking to the ECOM does not have to have a static IP address. Things to consider:


DSData FAQ0071
04-Sep-2002
Q: If I start DSData before my PLC, then the link in DSData is disabled and it can't be used even after the PLC is up and running.
A: This is because when DSData starts up it checks all its links and determines which ones are up and which ones are down. The ones that are down are disabled (Item "Enable" is set to 0). However, your application has full access to this "Enable" Item in DSData. It is created for all links. Therefore, after the PLC is up and running you can have your application to write a "1" to the "Enable" Item in DSData for this link and it will start working. It will stay "1" until you shut down DSData. It will even stay "1" if the PLC goes down after this.


DSData FAQ0072
12-Nov-2013
Q: Which versions of DDE Server and DSData work on which versions of Windows?
A: See the following chart:

Product Version Windows Operating Systems
Win3.11 Win95 Win98 WinME WinNT4 Win2K WinXP WinXP64 WinVista WinVista64 Win7(32) Win7(64) Win8(5)(6)
DDE Server v1.7a Y Y Y Y Y (1)            
 
DSData v3.0     Y Y Y Y Y (2) Y (2) (3)(4) (3)(4) (3)
v4.0     Y Y Y Y Y (2) Y (2) (3)(4) (3)(4) (3)

NOTES:
(1)
  Runs in the WinNT NTVDM (virtual DOS machine) as a low-priority 16-bit application. It will fully utilize CPU time (e.g. 99%) when it can.
(2)  Have not tested officially but probably will work.
(3)  Have not tested officially, but some customers have reported it works.
(4)  If trouble is encountered in Win7, then it will probably work if WinXP VirtualMachine is used.
(5) Both 32-bit and 64-bit versions work.
(6) Win8-RT version is not supported.
 


DSData FAQ0073
01-Nov-2002
Q: Is there a way to use the DSData modifier suffixes in DSData itself?
A: No; this is a client-side feature. Whatever application is asking for data from DSData must add the data modifier suffix to the Item name; then DSData will recognize it and perform the desired data conversion.


DSData FAQ0074 (see also DirectSOFT FAQ0155)
15-Nov-2002
Q: Are there any plans for a DSData, or DirectSOFT version for Pocket PCs (WinCE)?
A: Not as of 2004; but we are considering it.


DSData FAQ0075
02-Dec-2002
Q: Are there any examples of how to use DSData?
A: Yes. These examples are located (by default) under c:\DirectSOFT4\Project\Examples\DSData folder.


DSData FAQ0076
03-Dec-2002
Q: How do you set up Entivity using its OPC driver to talk to DSData?
A: You can download a Microsoft Word document here that shows how this is done in step-by-step format.


DSData FAQ0077
04-Dec-2002
Q: When DSData is closed, I still see CSMAIN running in the Task Manager.
A: CSMAIN is the communications server (CommServer) that is used by DSData, DS Launch and DirectSOFT Programming. Therefore, if you have DirectSOFT Programming software running and shutdown DSData, the CSMAIN application stays up because it is being utilized by DirectSOFT Programming.


DSData FAQ0078
19-Apr-2004
Q: How can I get data from PLC into Microsoft Word document?
A: Follow these steps:

  1. Start Microsoft Word: Start --> All Programs --> Microsoft Word.
  2. Select Insert --> Field.
  3. Press the <Formula...> button.
  4. Backspace over the = and type in DDEAUTO DSData LinkName ItemName.
  5. Click <OK> button.

Use the LinkName that you have configured in DSData; and use either an ItemName you have configured in DSData, or use an actual memory location (i.e. V2000). For complete details see the DSData to Microsoft Word.DOC.


DSData FAQ0079
11-Dec-2002
Q: How many simultaneous links can I have in DSData?
A: As many as you like. The only limitation is the capabilities of your PC and its ability to keep up with the data.


DSData FAQ0080
16-Dec-2002
Q: I am unable to write to the Enable Item in DSData; nothing happens.
A: This is a bug in DSData that occurs if you start up DSData with the Links disconnected. So if you desire to manipulate the Enable Item for a Topic, you have the following options as work-arounds:


DSData FAQ0081
19-Dec-2002
Q: Getting various errors in client application (e.g. "Cannot obtain data from DSData for TopicName, ItemName).
A: These kind of errors are probably due to the client application asking for a memory location that is out of range for the particular PLC that you are connected to. For example asking for a VC2000 from a DL06 would be invalid because the last VC-memory location in a DL06 is VC1760.


DSData FAQ0082
12-Nov-2002
Q: How can I print in DSData?
A: Unfortunately we have not added this feature to DSData as of yet. Currently the only way to do this is to do Print Screens; or Screen Captures (e.g. <ALT> <PrtScn> buttons).


DSData FAQ0083
03-Feb-2003
Q: When I try to access DSData from my application I get, "No application can use this link."
A: This is probably because of one of three reasons:


DSData FAQ0084 (see also DirectSOFT FAQ0170)
19-Nov-2002
Q: I need to make changes to my DS500.INI (or DS400.INI or DS300.INI) file but I can't edit it.
A: This is probably because the file is in the Windows folder and you do not have Admin privileges. We plan on either eliminating the need for this critical file in later versions of DirectSOFT (probably v5.0) and DSData, or putting it in a folder where Admin privileges are not required to edit it. But for now, you will have to have your Administrator help you out.


DSData FAQ0085 (similar to DirectSOFT FAQ0016)
17-Sep-2004
Q: Installing DSData and get "Uninstaller setup failed to initialize" and then a crash with message "InstallShield engine has encountered a problem and needs to close."
A: This means that InstallShield was unable to create the UnDSD.ISU uninstall log file for some reason. This error is just a warning and shouldn't interfere with completing the installation. Possible fixes:
     - Just press the <OK> button and ignore the message.
     - Make sure you have Administrator rights on your PC.
     - Uninstall and then delete all the .ISU files associated with DirectSOFT and then try again:
          Files to delete:
          1)  UnDSP.ISU
          2)  UnDSD.ISU
          3)  UnCTRIO.ISU
          4)  UnERM.ISU


DSData FAQ0086 (similar to DirectSOFT FAQ0016)
22-May-2003
Q: Trying to run the DSStart program in WinXP and get, "The Win16 SubSystem was unable to Enter Protected Mode. Dosx.exe must be in your Autoexec.nt and present in your Path."
A: This is an NTVDM (WinNT Virtual DOS Machine) subsystem error. Try the following link for a fix:  http://support.microsoft.com/default.aspx?scid=kb;EN-US;314106


DSData FAQ0087 (see also DirectSOFT FAQ0180; NetEdit FAQ0012; EBC FAQ0052; ECOM FAQ0040; EDRV FAQ0010; ERM FAQ0034; EZ Ethernet FAQ0026)
27-Apr-2004
Q: Getting various errors when attempting to use NetEdit to see or establish a link to a Host Ethernet device.
A: Here are know errors and their suggested solutions:

CAUTION: You may want to consult your Network Administrator before doing any of the solutions below! He/she may not want you to change your PC's setup at all!


DSData FAQ0088 (see also ECOM 0028; EBC FAQ0033, ERM FAQ0020, EDRV FAQ0007, EZ Ethernet FAQ0017; DirectSOFT FAQ0181; SDK FAQ0012; NetEdit FAQ0013)
20-Jul-2018
Q: What Ethernet protocols are used by your products?
A: Refer to chart below:

Product Ethernet Protocols
UDP/IP IPX TCP/IP Raw Ethernet Broadcast (1)
K-seq DirectNet ECOM (2) Koyo Backplane User Defined Data Proprietary (1) K-seq DirectNet ECOM (2) Proprietary (1) Modbus TCP Master Modbus TCP Slave Proprietary (1) Koyo Backplane
Hardware ECOM Y Y Y Y (3) Y (4)   Y Y Y         Y (5)
ECOM100 Y Y Y Y (3) Y (4)   Y Y Y   Y (6) Y   Y (5)
EBC           Y       Y        
EBC100           Y       Y   Y    
ERM           Y (7)       Y (7) (8)      
EDRV           Y       Y   Y (12)    
EZ Ethernet Y Y Y       Y Y Y          
EZ EtherPLUS Y Y Y       Y Y Y   Y      
WinPLC                         Y  
Software DirectSOFT Y Y Y       Y Y Y          
DS Data Y Y Y       Y Y Y          
Ethernet SDK Y (9) Y       Y Y (9) Y   Y        
NetEdit Y (10)         Y (11) Y (10)     Y (11)        

(1)  Not an industry standard. However, protocol is available for 3rd-party development upon request.
(2)  Not really a distinct protocol. This setting is used to intelligently pick K-sequence or DirectNet as needed by the hardware/software.
(3)  Used when doing ECOM-to-ECOM via RX/WX instructions with RX/WX Node Map configured in sending ECOM.
(4)  Used when doing ECOM-to-PC (Report-by-Exception) via RX/WX instructions (Address 90 only) with ECOM's dipswitch 7 set ON.
(5)  Used when doing ECOM-to-ECOM via RX/WX instructions without RX/WX Node Map configured in sending ECOM.
(6)  RX/WX Node Map must be configured in ECOM.
(7)  ERM can talk to one slave with UDP/IP and another with IPX simultaneously.
(8) 
No longer in planning (i.e. canceled).
(9)  Requires K-sequence protocol spec (request from Automation Direct)
(10)  Uses K-sequence to perform "Test CPU Access!" function.
(11)  Uses this protocol to perform "Show Base Contents..." function.
(12)  The older HA-EDRV2 cannot talk Modbus TCP.


DSData FAQ0089 (see also ECOM FAQ0016; DirectSOFT FAQ0066; similar to Do-more FAQ0035)
05-Nov-2019
Q: How can I make a link with DirectSOFT (or DS Data) to a single ECOM/ECOM100 or multiple ECOMs/ECOM100s over the Internet?
A: There are a number of ways to accomplish this due to the versatile ways in which Internet connectivity is established.

Method #1 (Direct Connect): Requires the remote ECOM/ECOM100(s) to have a registered Internet IP address.
Method #2 (Indirect Connect): Requires access to the remote gateway/router which must be configured to translate TCP port #s.
Method #3 (ISP VPN): Requires the ISP (Internet Service Provider) set up a VPN (Virtual Private Network).
Method #4 (VPN Software): Requires the use of some form of VPN software (e.g. PC Anywhere, LogMeIn, etc.).

Method #1 (Direct Connect)

Multiple ECOM/ECOM100 Instructions: In this method if connecting to multiple ECOM/ECOM100s, it is assumed that each ECOM/ECOM100 has its own registered Internet IP address and therefore to connect to each of them only requires that you make separate links to each one.

DirectSOFT Link Configuration to connect to PLC1:
     1.  Build link in DirectSOFT.
          a.  On PLC tab select:
                    PLC Family - Direct LOGIC 205 Series
                    PLC Type - 250

          b.  On the Port tab select:
                    Devices - Ethernet
                    Transport - Winsock
                    Transport Protocol - UDP/IP
                    Node Address - IP Address xxx.xxx.xxx.xxx (Registered Internet IP Address of your ECOM)
                    Advanced Settings - Timeout (Increase?)
 

               NOTE: To determine how much the "Timeout" setting should be increased:
                               1.  Go to the DOS Command Prompt (Start --> Programs --> Accessories --> Command Prompt)
                               2.  Type in:    ping xxx.xxx.xxx.xxx (Registered Internet IP Address of your ECOM)
                               3.  Make note of the "Maximum" time as listed and increase this number by at least 50%.
                               4.  Enter this number as the "Timeout" setting.

                    UDP Port Number (if it is displayed) - 28,784 (this is the default; must always be this number)

          c.  On the Protocol tab select:
                    Protocols - ECOM

          d.  Click <Auto>. Should beep for success.

          e.  Enter a name for the link and click <Accept>.

 

Method #2 (Indirect Connect)

Multiple ECOM/ECOM100 Instructions: In this method if connecting to multiple ECOM/ECOM100s, they are assumed to be located behind the gateway/router on an internal network with internal IP addresses assigned to them. Therefore, the DirectSOFT (or DS Data) links to each of them must use the same IP address of the gateway/router (because from the Internet, that is all it can see). Thus, the only way to differentiate between the multiple ECOM/ECOM100s on the other side of the gateway is by DirectSOFT (or DS Data) using different TCP port #s for each. In order to accomplish this 2 things must be done: (1) DirectSOFT (or DS Data) must have this feature turned ON by editing the .INI file, and (2) the remote gateway/router must be configured to translate the TCP port #s to different IP addresses behind its firewall.

DirectSOFT Link Configuration to connect to PLC4:
     1.  Edit .INI file and set UDPPortNumEnable=1
          - To pull up the .INI file for editing, see DirectSOFT FAQ0204.
          - To edit the UDPPortNumEnable parameter in the .INI file, see DirectSOFT FAQ0008.

     2.  Build link in DirectSOFT.
          a.  On PLC tab select:
                    PLC Family - Direct LOGIC 205 Series
                    PLC Type - 250

          b.  On the Port tab select:
                    Devices - Ethernet
                    Transport - Winsock
                    Transport Protocol - UDP/IP
                    Node Address - IP Address 
xxx.xxx.xxx.xxx (Registered Internet IP Address of your Gateway/Router)
                    Advanced Settings - Timeout (Increase?)
 

               NOTE: To determine how much the "Timeout" setting should be increased:
                               1.  Go to the DOS Command Prompt (Start --> Programs --> Accessories --> Command Prompt
                               2.  Type in:    ping xxx.xxx.xxx.xxx (Registered Internet IP Address of your Gateway/Router)
                               3.  Make note of the "Maximum" time as listed and increase this number by at least 50%.
                               4.  Enter this number as the "Timeout" setting.

                    UDP Port Number - 28,787 (can be any free configurable Port # on your particular Gateway/Router)

          c.  On the Protocol tab select:
                    Protocols - ECOM

          d.  Click <Auto>. Should beep for success.

          e.  Enter a name for the link and click <Accept>.

Gateway Configuration Table:

PLC DirectSOFT Link Node Address (Gateway) DirectSOFT Link Port # Nontranslated ECOM Node Address ECOM Port # (cannot be changed)
PLC1 xxx.xxx.xxx.xxx
(your Gateway/Router IP)
28,784 (0x7070) 192.168.20.1 28,784 (0x7070)
PLC2 xxx.xxx.xxx.xxx
(your Gateway/Router IP)
28,785 (0x7071) 192.168.20.2 28,784 (0x7070)
PLC3 xxx.xxx.xxx.xxx
(your Gateway/Router IP)
28,786 (0x7072) 192.168.20.3 28,784 (0x7070)
PLC4 xxx.xxx.xxx.xxx
(your Gateway/Router IP)
28,787 (0x7073) 192.168.20.4 28,784 (0x7070)

 

Method #3 (ISP VPN)

This method requires that you work with your ISP (Internet Service Provider) and have them set up a VPN (Virtual Private Network) for you so you can connect to the remote network where the ECOM/ECOM100s are located. There are quite a variety of ways in which your ISP can do this for you. Some may require you use their own software to do it. But in most cases once the VPN is established, the connection to the ECOM/ECOM100s on the remote network is exactly like Method #1 (Direct Connect) above.

Multiple ECOM/ECOM100 Instructions: Once VPN connection is established it is assumed that each ECOM/ECOM100 has its own IP address on the remote network and therefore to connect to each of them only requires that you make separate links to each one.

 

Method #4 (VPN Software)

This method requires the use of some form of VPN software (e.g. PC Anywhere, LogMeIn, etc.). The ECOM/ECOM100 cannot be accessed directly with this method but instead the VPN software allows you to control a PC (with DirectSOFT (or DS Data) installed) at the remote site that is on the same  network as the ECOM/ECOM100s. Thus, after the connection using the VPN software is established, the connection to the ECOM/ECOM100s on the remote network is exactly like Method #1 (Direct Connect) above.

Multiple ECOM/ECOM100 Instructions: Once VPN connection is established it is assumed that each ECOM/ECOM100 has its own IP address on the remote network and therefore to connect to each of them only requires that you make separate links to each one.


DSData FAQ0090
14-Apr-2004
Q: After upgrading from the DDE Server to DSData I get errors when my application tries to access data.
A: This is because DDE Server has a different Service Name than DSData.

DDE Server uses "DSDDE" as the ServiceName.
DSData uses "DSDATA" as the ServiceName.

You must do one of two things:


DSData FAQ0091
17-May-2004
Q: After some time get "DSData server internal error - System resources may be low, try reducing number of items requested or upgrade to NT4 or Windows2000."
A: This error means that the client software is writing data faster than DSData can empty its buffer. Try:


DSData FAQ0092 (see also DirectSOFT FAQ0073)
10-Nov-2008
Q: How can I change the number of COM ports that DirectSOFT / DS Data makes available for me to use?
A: By default older versions of DirectSOFT and DS Data had COM1, COM2, COM3 and COM4 ports available by default. However, due to the fact that most PCs these days only have COM1 and COM2, DirectSOFT and DS Data have been changed so that COM3 and COM4 are now disabled by default. This change was made for DirectSOFT and DS Data v4.0 Build 18. However, it is possible to enable and disable PC COM ports up to COM199. In order to change your COM port configuration you must edit DirectSOFT's DS500.INI file:

- To pull up the .INI file for editing, see DirectSOFT FAQ0204.
- To edit the COMxEnable parameter in the .INI file, see DirectSOFT FAQ0008.


DSData FAQ0093 (see also DirectSOFT FAQ0183; EBC FAQ0057; ECOM FAQ0043; EDRIVE FAQ0012; ERM FAQ0037; EZ Ethernet FAQ0027; NetEdit FAQ0017)
27-Sep-2010
Q: How can I install IPX protocol for my NIC?
A:  You can find instructions on how to do this for your particular operating system by going to Start --> Help & Support and searching for "Install NWLink." Below are the instructions from Microsoft for doing this on a WinXP PC. The instructions are similar for other operating systems (e.g. WinNT, Win98, WinME, Win2K).

To install NWLink IPX/SPX/NetBIOS Compatible Transport Protocol
(
1)  Open Network Connections:
       (a)  Click Start --> Settings --> Control Panel.
       (b)  Double-click Network Connections.
     NOTE:  You must be a member of the Administrators group to install protocols. Also, when IPX is installed it is installed for all your connections. If you don't want it installed for a certain connection, then right-click that connection, click Properties and, on either the General or Networking tab, clear the NWLink IPX/SPX/NetBIOS Compatible Transport Protocol check box.
(2)  Right-click a local area connection, then click Properties.
(3)  On the General tab, click Install.
(4)  In the Select Network Component Type dialog box, click Protocol, and then click Add.
(5)  In the Select Network Protocol dialog box, click NWLink IPX/SPX/NetBIOS Compatible Transport Protocol, and then click OK.

IMPORTANT: The IPX/SPX protocol is not available on WinXP 64-Bit Edition, WinVista or Win7.


DSData FAQ0094 (see also ECOM FAQ0044)
26-Jul-2005
Q: Can DSData be used with an ECOM100 that has a dynamic IP address (given by a DHCP server)?
A:  It would work for a while, but if the IP address of the ECOM100 expires and it requests for and gets a different IP address from the DHCP server, then the DSData link will no longer function and you would have to go back to DSData and manually change the link to match the latest IP address of the ECOM100.


DSData FAQ0095 (see also ECOM FAQ0049; DirectSOFT FAQ0189)
07-Sep-2005
Q: What kind of security measures can be taken for an ECOM/ECOM100 connected to the Internet?
A:  There are no security measures built into the ECOM/ECOM100 to help with this. The Koyo PLCs have password protection (the DL205 family even has HMI level passwords), but once the PLC is unlocked, it is unlocked for anybody to access. Probably the best and easiest thing is to have your IT (Internet Technology) people set up a VPN (Virtual Private Network) so that only certain predetermined PCs can have access to the ECOM/ECOM100's network.


DSData FAQ0096
08-Sep-2005
Q: Can you make DSData start up in the "Hide" mode?
A:  Yes. First you have to put DSData in the "Hide" mode:

  1. Start DSData normally (e.g. Start --> Programs --> DirectSOFT4 --> DirectSOFT32 Data Server Tools --> DirectSOFT32 Data Server)
  2. Click on the Close button at the top right ("X").
  3. Click on the <Hide> button.

At this point DSData's Taskbar Application button disappears and it now becomes a small icon in the Taskbar Notification area. To make DSData start up in this state the DO NOT restore this icon from this state and close DSData. Instead:

  1. Right-click on the DSData icon in the Taskbar Notification area.
  2. Choose "Exit"

Now the next time DSData is started it will come up in this same "hidden" mode.


DSData FAQ0097
12-Sep-2005
Q: After selecting to turn off (i.e. uncheck) the Toolbar (View --> Toolbar), then restarting DSData, the Toolbar is still visible.
A:  This is a bug in DSData v4.0. Your selection is actually getting stored properly in the DS400.INI file under [DSData] heading as ShowToolbar parameter, however, DSData erroneously does not read this data back on its startup. So the setting is not kept. This bug will be fixed in the next released build of DSData v4.0. However, unfortunately, development on DSData has been suspended due to Automation Direct now selling KepDirect software (e.g. PC-KEPPLC) as a replacement. Support, of course, will always be available.


DSData FAQ0098
09-Nov-2005
Q: If PC is shut down while DSData is running, get "General Page Fault" error.
A:  This is a known issue that has not been fixed yet. While DSData is running, it basically has two processes running underneath it; (1) the CommServer (csmain.EXE) and (2) ElementServer (esmain.EXE). Windows "decides" what order to shut down things. If the CommServer is shut down before DSData, you will get this error. Currently the only work-around is to first shut down the client that is utilizing DSData, then DSData, then the PC.


DSData FAQ0099
20-Feb-2006
Q: From Visual Basic, how can I tell if DSData is running?
A:  This is a Visual Basic question and has nothing to do specifically with DSData. However, the answer is to use the ActivateMicrosoftApp Method. You can find out more about how to use this Method in the Visual Basic help file and/or manual.


DSData FAQ0100
20-Feb-2006
Q: How can I tell if a Topic is responding to requests?
A:  You can monitor any one or more of the default Items that DSData creates with each Topic:

Status
Enable
_StatusValue
_Xfers
_Retries
_Errors
_XferRate
_Writes
_UpdateInterval


DSData FAQ0101
14-May-2007
Q: How are the data-formatting suffixes used for an OPC Client talking to DSData?
A:  Let's take an example of trying to read V2000 as a double word:

If you were using an OLE/DDE Client, then you would simply type in V2000:D and get V2000/V2001 as a double-word. What happens in this case is when you typed V2000:D in the OLE/DDE Client, DSData recognizes this format as a valid PLC memory type with a data format suffix added to it and it dynamically creates an Item in the Topic and then reads V2000/V2001.

However, this will not work with an OPC Client. If you typed in V2000:D in the OPC Client, then it would try to find an already-created Item in DSData by that name. If one didn't exist, then DSData would not create one. Instead what you have to do is create an Item in DSData by some name (e.g. Fred) and associate it with V2000. Then in the OPC Client, instead of trying to use V2000:D, simply use Fred:D.


DSData FAQ0102 (see also CTRIO FAQ0045; DirectSOFT FAQ0132; DL Plus FAQ0010; DNLoader FAQ0011; EBC FAQ0083; ECOM FAQ0084; EDRV FAQ0084; ERM FAQ0058; EZ Ethernet FAQ0010; General FAQ0004; HA-TADP FAQ0008; Lookout Direct FAQ0015; NetEdit FAQ0037; PBC FAQ0014; PSCM FAQ0003; SDK FAQ0022; SERIO FAQ0004; WinPLC FAQ0038)
31-Dec-2009
Q: What is the export classification of your products (e.g. ECCN)
A: None of our products have an ECCN. Automation Direct sells our products and they export EAR99 NLR (No License Required). ECCN is Export Controlled Classification Number and none of our products are controlled.


DSData FAQ0103
22-Nov-2010
Q: Why does CPU Time go up to 99% when using DSDDE?
A:  By default, this older version of DSData using process Cspump.EXE is set up to use as much CPU time as is needed to do the work, but it will yield quickly to any other process that needs CPU time. It will use a lot of CPU time when the CPU would otherwise be idle. Because this makes DSDDE look like a CPU hog, later versions of DSDDE place limits on the amount of CPU time the server process would ever ask for.

So, unless it is noticed the PC is acting slow or some other strange way, do not worry about it. Otherwise, upgrade to a later version of DSDDE or switch over to DSData.