last updated by Johanson, 2/5/2003
Notes by Brian Luehrs and Brad Johanson
The PointRight system takes a bit of work to install, hopefully this document can help clarify some of the issues that come up in such an installation.
There are 3 types of machines that can run PointRight, and three corresponding ways to run the pointright.exe program:
Room display controller machine: On a machine that is part of the pointer display space (virtual desktop) in the interactive workspace. This machine has a display attached to it, you could think of it is pointright receiver, since it only receives PointRight events. The trick here is to convince pointright into thinking you are in the room database file. That is done with a .cfg file.
Dedicated Pointer Controller machine: This machine has a dedicated mouse attached to it, and that mouse only moves in the topology described by the room database file. Running pointright from a straight install, putting the iroom.db (the room database file) in the right place, and from the tray menu selecting lock in sender mode will achieve this effect. If you don’t want to have to do the tray-menu option each time, there is a “-l” flag that will try to lock it in sender mode 15 seconds after startup. (It will also try again every 15s until successful or terminated.) Other machines (see 1) will have to be running first for sender to successfully lock into sender mode.
On a laptop: Users who enter the room and install PointRight on their machine will run it in this mode. Fortunately this mode is the default mode installed by the iWork Services Installer. Running this installer and having a copy of the appropriate iroom.db (the room database file) referenced correctly, is all you need to get a laptop to use PointRight in the room.
Different configuration files are currently required to operate in each of the different modes.
PointRight uses several registry entries to store information. In general, these are set by the installer, and the general user or administrator should not have to modify them. Nonetheless, if there is a problem with getting PointRight running, one thing to check is that these registry entries are set properly.
All of the entries are under: [HKEY_LOCAL_MACHINE\SOFTWARE\Stanford Interactive Workspaces\PointRight\1.0]. The individual keys, which are all strings, are:
HEAP_MACHINE: Set to the DNS name or IP address of the machine running the Event Heap server for this interactive workspace. (e.g. eheap.stanford.edu).
HEAP_NAME: Deprecated. An older version of the Event Heap server allowed multiple Event Heaps per server, and this specified which server to use. Any value is fine now since it is unused.
DB_FILE: The full path to the iroom.db file. (e.g. "e:\\iwork\\apps\\pointright\\config\\iroom.db").
This example corresponds to the example configuration files shipped with the installer.
eheap.stanford.edu (the machine running the e-heap)
one.stanford.edu (the first display machine, on the left)
two.stanford.edu (the second display machine, on the right)
apps/pointright/config/twoacross.db – The iroom.db file...typically renamed to iroom.db. Contains the screen topology for the local interactive workspace.
apps/pointright/config/one.cfg – A configuration file for the first of the two machines that is part of the permanent display space in the room being controlled by the permanent PointRight server, or laptops that enter into the space.
apps/pointright/config/one-config.bat – The batch file to start up PointRight on the first of the two permanent machines in the display space.
apps/pointright/config/two.cfg – Similar to one.cfg, but for the other permanent machine.
apps/pointright/config/two-config.bat – Similar to one-config.bat, but to start up PointRight on the other permanent machine.
One .cfg file is needed for each machine displaying permanently in the pointer display space. In our example, there are two such machines, and their files are one.cfg and two.cfg. Each .cfg file contains a single line with the following items:
<relative path to iroom.db> <machine name as listed in iroom.db> <machine #, depreciated> <resolved name:port for debug> <event heap resolved name> <eheap name, depreciated>
Note that the second item in the .cfg file is the name for this machine as it is lised in the iroom.db file. It must match the name in the iroom.db file exactly. This is how PointRight knows which display in the permanent display space is being controlled by this machine.
Example:
..\config\iroom.db one 102 one.stanford.edu:9102 eheap.stanford.edu iwork2
Each machine needs iWorkServicesInstall.bat/class run on it to install the basic iROS client software. This is for all three types of PointRight machines, even the permanent PointRight server (which may or may not be the same as the Event Heap server machine).
Permanent PointRight server: This is the machine that is always locked in sender mode. You need the iroom.db file installed in iWork\apps\pointright\config\ and the iWork\scripts\pointright.bat should call the pointright executable directly with a “-l” flag to lock it into server mode (i.e. .'pointright.exe -l')
one.stanford.edu (the left display): Since this machine is in the iroom.db topology, you need the iroom.db & one.cfg files installed in iWork\apps\pointright\config\. You will need to modify the iWork\scripts\pointright.bat to have a few lines such as:
cd ..\apps\pointright\config
.\bin\pointright.exe -s one.cfg
two.stanford.edu (the right display): Will be configured similarly to one.stanford.edu, but using the two.cfg and two-config.bat files instead.
laptop.stanford.edu (any laptop that enters the space): Any laptop intended to allow control of the machines connected to the permanent displays in the interactive workspace will need the iroom.db file copied to it as iWork\scripts\pointright\config\iroom.db to work with a default install. Of course you will also have to specify the correct eheap on installation of the iROS client software and have your jdk 1.3+ installed.
The installer for the iROS software doesn't set up the Java paths for any JDK other than 1.3. If you install under a different JDK you may get an error about a missing jvm.dll or similar. You will need to manually adjust the paths in your environment and in the batch files to point to the appropriate directories.
PointRight complains about a problem with creating a JVM at runtime, or an error about a missing JVM.DLL appears and the program fails to start. Any suggestions about what to do?
Two problems typically cause this:
A conflicting version of Java is somewhere in your path. The 1.1 installers and earlier had a bug that gave priority to your systemwide path over the one needed by the iROS applications. If something conflicting was in that path it could cause stuff not to run. The solution to this is to use the 1.2 installers which were released January 29, 2003.
You are not using Java JDK 1.3. The installer assumes that the DLLs
for Java, specifically the jvm.dll, are in the locations relative to the
Java root that are used in JDK 1.3. JDK 1.4 (and in general all new major
release numbers of Java) place these files in different locations. If you
are using JDK 1.4, you will need to modify the scripts/setenv.bat file
under your iWork install directory to point to the appropriate directories
for the JDK you are using. For JDK 1.4.x, you will need to replace:
%JAVA_HOME%\jre\bin\hotspot
with
%JAVA_HOME%\jre\bin\client