Technical Information

OVERVIEW:

The Ping Body performance that took place at Artspace Sydney on 10th April 1996 with Stelarc used three computers, three cameras, two video projectors, a vision switcher, a vision mixer, a specialised sound system and the Internet. Below is an overview of the computer hardware and its functionalities.

Computer 2 and Computer 3 do not have to be 486 machines necessarily. Computer 2's function can be replaced by another machine that has the ability to connect to the Internet and can execute the ping command and output a string of the appropriate format through a serial port. Computer 3's function can be replaced by any machine that has the ability to digitize and upload the image (converted to the appropriate format) to a Website. Note that the artist would wish the activity of digitizing/uploading to be projected for the audience to observe.

The software program that runs on the Mac, Computer 1, is written using Macromedia Director. The software communicates via the serial port using Xobjects. In the program's idle handle, it constantly checks the serial (modem) port for strings from Computer 2. As well as the actual ping value, this string will have other information such as the IP address, domain name and physical location of the server being pinged.

However, because no handshaking is occuring with Computer 2, it is possible to get an incomplete string. If an incomplete string is received, the software will display a "wait" message and will not send out any stimulation signals. In future versions of the software, handshaking will be implemented for better results.

Once a complete string is received, the software will display the appropriate animations and imagery (limb movement, timeline, ping info) and will send out the appropriate values to the StimBox via the serial (printer) port.

The software program that pings other servers connected to the Internet and outputs the result to the serial port, was written in Perl and uses the Linux version of the ping command. Keep scrolling to see more.


| VIDEO IMAGE UPLOAD | LAYOUT DIAGRAM (150KB) | CREDITS |

| PING BODY | STELARC HOME | MERLIN HOME |


Description of Perl Program

The software to collect the statistical information about the load on the Internet is written in Perl. It uses a predefined list of servers located in different geographical locations. The list is stored in a file called sites which should be stored in the same directory as the executable (but it is possible to specify different files in the code as well).

During the execution the program uses perl's built-in random number generator to select the server for pinging. Pinging is done by executing a ping command to send three packets of data (64 bytes each) to the server. Note that a command line option to specify packet count is specific to the Linux version of ping. Its source code can be provided on request.

After pinging, the output of the ping command is parsed and the average round-trip time is slected from the output. If ping has failed (for example, the remote site is down) then the previous value will be used.

The resulting information is output to the COM1 of the PC (this may differ depending on system) in the form of a string. Communication port parameters are 9600,N,8,1. The composition of the output string is given below:

The same string is written to a log file called "script" for archiving and documenting purposes. After each output the program randomly picks the next server to ping.

The format of the "sites" file is:

Note that the above fields are comma separated. No extra spaces should exist in the field otherwise the Mac has trouble passing it.

For further information regarding the pingbody program that ran on the Linux machine, contact Dmitri via dima@merlin.com.au
or garu@eye.usyd.edu.au


| VIDEO IMAGE UPLOAD | LAYOUT DIAGRAM (150KB) | CREDITS |

| PING BODY | STELARC HOME |