Green dongle - System reports: The hardware lock is missing
Technical Note 98236
10/27/2020 4:21 PM
This text is applicable for products that uses Activator M hardware locks. (That is, small "dongles" that connects to a parallel port. This type of dongle has a green plastic housing).
The green dongle is not used in the current (supported) products. Green dongles were replaced by other dongles in 2001 (and onwards).
Limitations due to modern hardware / system
The latest version of the driver was made 1998. Thus there exists hardware / systems that can not work with the green dongle.
- Install/test drivers (A)
- Environment variable (B)
If not solved with (A) or (B) then continue with:
- Run a dongle test utility ck.exe (C)
- Verify that dongle HW is working (D)
- Check parallel port settings (E)
- Check the parallel port itself (F)
- Contact support (G)
Note on Windows XP
All actions on Windows XP must be done with maximum permissions. So restart the computer as Administrator with all permissions enabled.
Why do I have to do that?
All IAR Embedded Workbench product versions with Green Dongle were made a long time before Microsoft introduced the Administrator Mode (and other modes with lower permissions), thus these old IAR Embedded Workbench versions might fail if not in Administrator Mode.
A. Install/test drivers
One of the first things to check is whether you have drivers installed. Using ddinst32 mentioned below, you can install a driver as well as check the version and status of any installed drivers. In most installations, there is a directory named dongle, containing files for installing a driver. Once you have started ddinst32, driver status is displayed in the dialog box, and there is a button marked "Express" to install new drivers. Starting ddinst32 can either be done from the autorun on your installation cd or by double clicking it's icon (in most cases dongle\NT\ddinst32.exe),
The latest (made 1998) version of the driver can be downloaded from the link: Download driver.zip.
In case of difficulties installing/obtaining drivers, please contact support.
Depending on product and version as well as operating system version and configuration, drivers may or may not be required. For example, Windows NT always requires drivers, while for older products running under windows 95, drivers may or may not be required. In any case installing drivers is harmless, be they required or not.
B. Environment variable
Depending on the speed of the CPU and on other parts of the hardware configuration of the PC used, setting an environment variable SSI_ACT can be required. This fixes most issues, with typical symptom being that the dongle is reported missing. In a few odd cases we have seen strange things such as general protection fault go away with this kind of setting.
How to set an environment variable depends on the OS you are using:
- For Windows XP:
Use right mouse button on the "My Computer" icon, select the "Properties" dialog, select the "Advanced" tab, push the "Environment Variable" button. In the next window, scroll (in the list of System variables) to SSI_ACT, push the "Edit"-button, keep SSI_ACT in the variable box, edit X,Y,Z in the value box, and save the new values by pushing "OK".
- For windows NT and 2000:
Use right mouse button on the "My Computer" icon, select the "Properties" dialog, environment tab. Enter SSI_ACT in the variable box, and X,Y,Z in the value box. Remember to click the Apply button to ensure that your setting takes effect.
- For windows 3.x, 95, 98, ME: please add a line
SET SSI_ACT=X,Y,Zto your autoexec.bat and reboot. Note that no spaces are allowed around the equal sign.
What value to use for X,Y,Z varies, please try 100,100,200 and increment in steps of 50 if required (e.g., 150,150,250).
The parameters X,Y,Z control the delay times in the hardware lock libraries for each stage of the interrogation process of the Activator/M (power up, output to the port, input from the port). On certain computers, the hardware configuration may be such that default times are not appropriate. Delay parameters of 2,2,5 are sufficient for most 486 and Pentium 75 to 133 computers, while 10,10,20 seems to do well for most 200 MHz Pentiums.
Activatormedic might help you to find the proper X,Y,Z values without rebooting the computer. Please download it (using the link Download Activatormedic.zip) to your PC and run activatormedic.exe (press Find Key). If the key can not be found with the default values 10,10,20, try to increase the "Timing values to use" (i.e., X,Y,Z) in steps of 10 or 20 until it reports the key found. The maximum value can be 1000. Then use these values in the environment setting mentioned above and reboot the computer.
List of SSI_ACT values at some computers / OS
The link SSI_ACT Setting solutions.pdf holds a .pdf file with values that users have reported as working for them
C. Run a dongle test utility ck.exe
There is a utility ck.exe in the dongle directory (of the zip file containing the latest drivers) that checks the dongle. The information gained from running this is summarized below:
- Reports dongle missing – this does not add much information.
- Finds the dongle, reports status – dongle HW is working, and it is possible to verify that it is the right dongle.
D. Verify that dongle HW is working
If ck.exe can't find the dongle, please try it on another machine (again with appropriate drivers and SSI_ACT settings).
E. Check parallel port settings
- For notebooks, connect to main power, but do not connect to docking station.
- Turn off any energy saving features in your OS and/or BIOS.
- In the BIOS settings, set the parallel port mode to "lowest possible", e.g., uni-directional, standard, AT-Compatible or similar.
F. Check the parallel port itself
- Check that the parallel port itself is working (connect a printer to it and try printing).
- Also, try the dongle both as sole device on the parallel port and with a printer connected behind it.
- The hardware lock system requires a basic technical standard from the parallel port. For example, the port must be bi-directional (allow both reading and writing). This fact prevents it to be used with some notebooks. Also, the port needs to be able to provide a certain voltage level on some pins. Connected equipment, like printers, behind the hardware lock could possibly decrease the voltage level so that the hardware lock fails. A quick solution could be to install a second parallel port. Though they are cheap, they normally meet the technical requirements by a wide margin.
G. Contact support
If none of the above helps, please contact support for further assistance. As always, please state your product name, version and license/serial number. Also, please give relevant information from the above tests as well as the information on the label of the dongle, your operating system type and version and CPU type and clock frequency.
All product names are trademarks or registered trademarks of their respective owners.