Link Search Menu Expand Document

OOCSI server

Before we start here: did you check whether there is maybe a server running somewhere already? If you are in an education institution like a university, academy or else, they might have one running already. If not, it might be a smart move to ask them to set up a server for everybody. Why? Less work for you and more fun, because everybody in your program can connect their prototypes for truly connected experiences (see our workshops for some examples).

Running an OOCSI server

Ok, we hear you. You want the real thing, a full OOCSI server. The OOCSI server is the hub in an OOCSI network. It is a central component that receives and dispatches messages. The server component is a Java application that can be configured for different use-cases.

Server versions

The OOCSI server is available in three different versions:

  • mini server (small footprint, great for local use, no Websocket support, no OOCSI tools): see below for more information
  • web server (all platforms, all tools): OOCSI-web
  • web server for Docker (same as the web server, ready for use as a Docker container): Docker Hub

Mini server

The mini server supports all client platforms except for Websocket communication, such as Java, Processing, Android, Python, C/C++, OSC and Pd or Max/MSP. It is a single .jar file that can be run directly on most operating systems as long as there is a Java Runtime Environment (JRE) installed. The instructions for installing Java on Windows, macOS or Linux differ, but an OpenJDK installer from Adoptium should work in most cases.


Once Java is installed on your system, you can download and run the OOCSI server. The server comes as a pre-compiled .jar file: OOCSI_server.jar (2 MB).

Running / Configuration

It can be run simply by double-clicking on the JAR file in most operating systems. There are, however, command line parameters that are explained in the following:

Switch on logging to a file with:

java -jar OOCSI_server.jar -logging

Allow for a certain maximum number of clients to be connected (here, 55):

java -jar OOCSI_server.jar -clients 55

Run the server on a specific port (4545 instead of 4444 which is the default):

java -jar OOCSI_server.jar -port 4545

Of course, all parameters can be used at the same time, like this:

java -jar OOCSI_server.jar -logging -clients 55 -port 4545

Since the OOCSI server is a console application it does not have an application window or tray presence that you could use to stop it. If you need to stop the server, use the Task Manager on Windows, Activity Monitor on macOS, or similar on Linux. If you start the server on the command line, a simple CTRL-C should stop it, too.

Copyright © 2013-2024 Mathias Funk. test