Current network

See all public Dancer processes that are currently on-line. If you add your own process, it will appear on the map within minutes.

Read more about the network ...

On-line tutorial

With the on-line tutorial, installing and running Dancer on your own computer becomes very easy. Try processing your own RINEX data.

Get started right here ...

This brief tutorial explains the basic functionalities of the GPS Dancer software to help you get started. It is not a complete user guide to all available functionalities of the software, but once that you have learned the basics it will be straightforward to explore further possibiliities through the menu system.

1  Main window

The installation guide includes a description of how to launch the dancer.jar program. It is assumed here that you have found a way to launch the software on your own platform, and you see the main window (Figure 1) appear on your screen. The window shows a day / night photographic image of the world as background, deriving the current Greenwich Mean Time from your computer clock. Operational GPS Dancer processes will be able to derive local time from their GPS receiver, but during the test campaign we depend on your computer clock. Most computers nowadays synchronize their clock via internet, in which case you do not need to do anything special. If your computer clock is more than one or two minutes wrong, please find a way to adjust your clock automatically over the internet before going on-line.

The main Dancer window has a menu bar at the top of the screen, with three separate sections.

Towards the left side of the menu bar are the main menu options for configuring your process. Not all options will be enabled at the same time. You can probably find out what these menus do just by browsing through them. Some options are explained below in more detail.

Towards the right side of the menu bar you see three mode selector buttons (off-line / LAN / WWW) and the Play/Stop buttons. These will also be explained below.


Figure 1 - Dancer main window


2  Running modes

Dancer runs in one of three available modes called "off-line", "LAN" and "WWW". You can select one of these modes by means of mode selector buttons at the top of the main Dancer window, right of the centre.

The off-line mode runs a local process on your own computer, without interacting with any other Dancer instances. This allows you to run a variety of parameter estimation processes, such as a precise point-positioning solution for your receivers or some general tests.

The LAN mode (Local Area Network) and WWW mode (World-Wide-Web) are essentially the same. In these modes, Dancer will expect to interact with other Dancer processes on a computer network, in a peer-to-peer analysis process. The difference between the two network modes is that in LAN mode all processes run on a private network (or even on one single computer) and are not necessarily connected to the public internet. This mode is used by the project for testing new features before releasing them on-line. The rest of the world can not see your Dancer processes if they run in LAN mode.

In WWW mode, your processes will go on-line for real, and will join the one and only global network of Dancer processes. In WWW mode, your local configuration settings have little or no influence on the process, because all on-line instances of Dancer must behave in exactly the same way.

In LAN mode and WWW mode, your Dancer process represents one particular GPS receiver, and will never process data from two or more receivers in the same run. In off-line mode, you could process data from multiple receivers in a single least squares estimation process. This is similar to what any Analysis Centre in the world does. However, note that Dancer was not really designed for this and will for instance not pre-eliminate clock partitions per epoch. If you do not know what that means, just be aware that you may need a lot of memory to run a multi-receiver estimation process.

3  Running off-line from a configuration file

In off-line mode, you need a process configuration file to instruct Dancer what it should do. This mini-tutorial will not discuss all possible functionalities and configuration options of the software, but will talk you through some basic examples that are provided with your test set-up.

If you select "off-line" at the main Dancer menu bar, you will see that some of the menu options on the left are enabled, while others are disabled. Choose the Process option, which opens a window from where you can Find a configuration file on disk, and even Edit it if necessary. If you click on Find, a standard file browser window opens to let you select an input file. You can browse to the directory configurations and select the file orbfit.cfg. If you now click on Done, your Dancer process is ready to run a simple orbit fit example process.


Figure 2 - defining a process configuration file

On the far right of the main menu bar you see two buttons "play" and "stop" just like on a video recorder or similar device. These buttons are used to start a configured process (with the "play" button) or to stop a running process (with the "stop" button).

Now that you have configured an off-line process, click on the "play" button to launch it. You should see log messages starting to scroll over the screen, which give you an idea of what the process is doing in real-time. The orbfit.cfg example run is quick, and should only take a minute or so to complete.

Congratulations - you have just executed your first Dancer estimation process.

 Figure 3 - Play / Stop buttons (only one is enabled at any time)

To see what this process has done, try clicking on the Log file menu option, and then select View. Scrolling through this file (with the sliders at the right and at the bottom of the window) you will probably be able to follow the iterated batch least squares process that was performed. The orbfit example takes an external orbit file, and fits its own estimated satellite orbits to that external solution. The residuals statistics for the final iteration give you an impression of the internal orbit modelling accuracy of Dancer, which is around 1 cm.

If you return to the Process menu, you can now select the ppp.cfg file. This is a precise-point-positioning run for the receiver for which you have (...hopefully) prepared the set of nine RINEX files in the directory ~/campaign/obs/ (see the installation section). After selecting the ppp.cfg file, click on Edit to open the file ( can of course use any other suitable editor of your choice). Somewhere at the start of this file you see a list of RINEX files, but for a different station than yours. You will need to modify the RINEX file names into the ones that you have stored in the ~/campaign/obs/ directory. After this, you can save the ppp.cfg file (... there is a save button at the top) and close it. Click Done, followed by the "play" button to start the process. Once it finishes, you can view the Log file to find out more or less what this process has done.

4  Running on the world-wide-web

We will skip the LAN process in this tutorial, and immediately set you off on the world-wide-web. Assuming that you have installed the required RINEX data files, you are good to go. Click the WWW selector at the top of the Dancer screen. You will see that different menu options are now enabled or disabled, in particular you can now configure your own local GPS Receiver.

Click on the Receiver menu option, and a new panel opens. In most cases, you only need to type here the 4-letter RINEX name of your receiver, which matches the first four characters of your RINEX observation files. Press ENTER after typing the name (... just clicking "Done" without Enter will ignore your input).


Figure 4 - Receiver configuration menu


Your RINEX observation files have a file header with meta-data, describing for instance the type of receiver, antenna, and the approximate location of your GPS station. If you are happy that these header details are correct, you can click "Done" and you are ready to go. If your RINEX headers are incomplete - for instance, the approximate position is not provided - you can select the checkbox that says "use the data from this panel", and complete the options on the panel as necessary.

After configuring your receiver, you only need to click the Play button. You should see some initialization messages, and after a short while Dancer will say something like "Looking for the Dancer network...". If you have an internet connection with open TCP ports 9701 - 9799, your process will find the other Dancer processes on the internet.

Congratulations! Your process is now part of the Dancer estimation process.


NOTE 1: it can take up to 30 minutes to get the proper synchronization data from the Dancer network and/or before your Dancer process appears on the website picture (Home). Please be patient...

NOTE 2: if your process fails to connect at the first attempt (...and stops with some error message), it will often work in a second attempt. What happens here is a crossing of two JXTA initialization messages at the level of the peer-to-peer network layer. The only way to properly fix this behaviour is with a fairly large network of Dancer processes on-line, so we should be able to rectify this minor issue in the future.

NOTE 3: if at any time your process seems to have crashed or is in an apparent communication deadlock state, just close it and launch it again. If your process has a communication problem with the rest of the network there is no way to fix this remotely, but restarting it tends to solve any such issues.


We can in fact block certain receivers and internet addresses from further participation, but we would prefer not to need such drastic measures.

Ready for action

The GPS Dancer software implementation stage was completed by the end of 2012. Various approaches are studied for on-line deployment and validation of an ITRF backbone network.

Read more about the ITRF in the cloud ...

Search on this site

Apache license


The GPS Dancer software is available for free under the Apache II license.

Read more ...


Full technical details about how Dancer works are available on this site.

Read more ...

Free JXTA eBook

Free Joomla! eBook

Free Joomla ebook | Joomla 3.0 Made Easy

Project details

Ultimate Browsers SupportThe GPS Dancer project started in 2007 as a voluntary project of a working group of the International Association of Geodesy.

Read more ...

Square dance algorithm

Great Docs and SupportThe GPS Dancer system was named after its "square dance" exchange algorithm. Of course, it also wants to to make the GPS reference frame denser.


Here, there be pirates

The Dancer on-line network became immune against internet connection problems by leaving the US marines, and becoming a pirate.

Read more ...

Go to top