Skip to main content

How JudoNet works

Last updated: 10 August 2026

This page explains what JudoNet is, what problem it solves, and how the pieces fit together. Read it first — the rest of the documentation assumes you know the concepts introduced here.

You do not need a technical background to read this page. Every term is explained the first time it appears, and the Glossary repeats all of them in one place.

What problem does it solve?

At a judo competition, each mat has a scoreboard — the big screen showing the clock, the scores and the competitors' names. Somebody operates it: they introduce the two judoka, start the contest, award scores and penalties, and declare the winner.

Everything that operator does is interesting to somebody else:

  • The results system needs to know when each contest started and ended.
  • The website and JudoTV need the live clock and score to show spectators.
  • CG - JudoGraphics needs the same data to put scores on the broadcast picture.
  • The video system needs the timings so it can cut each contest out of the recordings.
  • The archive needs all of it kept, so a contest can be looked up months later.

Without something in the middle, each scoreboard would have to talk to all of them separately, and nothing would agree about what happened when.

That is what JudoNet does. It sits on one PC at the venue, connects to every scoreboard on the local network, and takes everything they report. Then it hands that data on — to the online systems, to CG - JudoGraphics, to the video recorders — and keeps a copy of its own.

   scoreboard mat 1  ─┐
scoreboard mat 2 ─┤ ┌─► the online platform
scoreboard mat 3 ─┼──► JudoNet ──────────────┼─► CG - JudoGraphics
scoreboard mat 4 ─┤ (one PC at │ ├─► FairReplay Recorder
scoreboard mat … ─┘ the venue) │ └─► its own local database

Video CutterV2 asks
JudoNet for contest
timings
note

JudoNet replaces the older Packet Sender, which is no longer maintained. If you are looking at documentation or a machine that mentions Packet Sender, it is out of date.

Why it is called "packets"

Throughout JudoNet, and throughout this documentation, the unit of data is a packet.

A packet is one snapshot of what a scoreboard is showing at a moment in time: which contest, which screen is displayed, the clock, the scores, the penalties, the competitors' names. The scoreboard sends a new one whenever something changes. A single contest produces hundreds of them.

Everything JudoNet does — storing, sending, broadcasting — it does to packets.

The programs JudoNet works with

ProgramRuns onIts relationship to JudoNet
ScoreboardOne PC per matProduces the packets. JudoNet connects to each one and listens.
JudoManager desktopThe results PCHolds the draw and the competition. JudoNet asks it which competition is running.
CG - JudoGraphicsThe graphics PCReceives live data from JudoNet to put on the broadcast picture. JudoNet's own switches call it just Graphics.
FairReplay RecorderThe recording PC(s)Receives markers and live data from JudoNet, so recordings are tagged with what happened.
Video CutterV2The cutting PCAsks JudoNet when each contest started and ended, so it can cut the recordings into clips.
info

JudoNet is the only source of contest timings for the Video CutterV2. If JudoNet is not running, or is not storing data, the CutterV2 has nothing to work from and cuts nothing.

Two programs, not one

This is the part that confuses people first, so it is worth being clear.

JudoNet itself is a Windows service. A service is a program with no window that runs quietly in the background. You cannot click on it, and it does not appear on the taskbar.

JudoNet Monitor is a small desktop application that starts and stops that service, and gives you a few buttons. It is what the desktop icon opens.

The JudoNet web page is the actual interface — everything you do with JudoNet, you do in a web browser at http://localhost:5220.

You want to…Use
Start or stop JudoNetJudoNet Monitor
See what is happening, change settingsThe web page
Back up and clear the databaseJudoNet Monitor
Give someone else full accessJudoNet Monitor (copy the token), then the web page

So a normal day begins in the Monitor — press START SERVICE, press Open In Browser — and continues in the browser.

The master switches

Along the top of the web page sit five switches. They decide what JudoNet does with the packets it receives, and they are the single most important control in the program.

SwitchWhat it does when on
Store LocallyKeeps every packet in JudoNet's own database on this PC.
Store OnlineSends contest times to the online archive, so contests can be looked up later.
Display OnlineSends live data to the platform, so the website and JudoTV can show the contest as it happens.
Broadcast UDP to GraphicsSends live data to CG - JudoGraphics for the broadcast picture.
Broadcast UDP to FRSends markers and live data to the FairReplay Recorders.

Receiving packets from the scoreboards is not a switch — JudoNet always listens. The switches only control what happens next.

danger

If several JudoNets are running on the same network, only one of them may have Store Online, Display Online, Broadcast UDP to Graphics or Broadcast UDP to FR switched on.

Two JudoNets both sending online means the platform receives everything twice. JudoNet detects this and highlights the conflicting instance in orange on the Live data page, but it cannot stop it — you have to switch the extras off yourself.

A second JudoNet running purely as a backup with only Store Locally on is perfectly safe, and is a sensible precaution.

What the scoreboard tells JudoNet

The scoreboard is always showing something — a competitor's name, the running contest, the winner. Each of these screens has a number, called a display mode:

ModeNameWhat is on the screen
1LogosSponsor or event logos.
2CountdownA countdown to the start.
3WhiteThe white competitor is being introduced.
4BlueThe blue competitor is being introduced.
5Both CompetitorsBoth judoka together, with the round of the contest.
6ContestThe live scoreboard — clock and scores.
7WinnerThe winner has been declared.
8PauseThe contest is paused.
9Category / RoundThe category or round.
10Team BothBoth teams, in a team event.
11Team WinnerThe winning team.
12CategoryThe category.
13No-WinnerThe contest ended with no winner declared.
14Team No-WinnerA team tie with no winner.
15Doctor CallA doctor has been called to the mat.

The bold ones are the six that matter to the rest of the system: JudoNet records the exact moment each of them appeared, and those timestamps are what the Video CutterV2 later uses to find each contest inside the long recordings.

note

Mode 6 is not hajime. It marks the moment the contest screen with the clock is put on the display. The referee still has to bring the judoka on and call hajime, which usually takes a few more seconds.

Time, and why it matters so much

JudoNet's job is to say when things happened. If its clock is wrong, everything downstream is wrong — contests are archived at the wrong time and the Video CutterV2 cuts the wrong part of the recording.

So JudoNet takes time seriously:

  • On startup it sets time.cloudflare.com as the PC's time server and forces a synchronisation — provided it is running with administrator rights, the PC is not part of a Windows domain, and the internet is reachable.
  • Every minute it checks itself against trusted time, taking ten samples and discarding the two highest and two lowest before averaging.
  • It considers the clock correct while the difference is under 300 milliseconds. Beyond that, the left-hand menu says so and an alert is raised.

The left-hand menu of the web page always shows the current state, in plain words — JudoNet server time is correct, or how many seconds it is ahead or behind.

danger

JudoNet can only fix its own clock. The scoreboards, the JudoManager server and the FR Recorders each have their own, and JudoNet reports on all of them but cannot correct them. Where you see Sync Time! against a machine on the Live data page, somebody has to go and fix that machine.

What JudoNet keeps, and where

Everything JudoNet owns lives in C:\JudoNet:

WhatWhere
The database of packetsC:\JudoNet\data\db.sqlite
Database backupsC:\JudoNet\data\backup\
SettingsC:\JudoNet\settings.json
The access tokenC:\JudoNet\authtoken.json
Log filesC:\JudoNet\logs\

The database grows as the competition runs. It is meant to hold one competition at a time — see backing up and clearing.

How other machines find JudoNet

Nothing at a venue is configured with addresses by hand. Everything announces itself over the local network and everything else listens.

Who announcesHowWho listens
JudoNetUDP broadcast on port 8888, saying "I am JUDONET" and which competition is loadedThe Video CutterV2, other JudoNets
Scoreboards and JudoManager serversUDP on port 8888JudoNet
FairReplay RecordersUDP multicast group 239.225.89.212, port 18918JudoNet, the Video CutterV2

Once JudoNet has found a scoreboard, it connects to it properly — a WebSocket on port 855 — and that connection is what carries the packets.

danger

All of this depends on broadcast and multicast traffic working on the venue network. Many managed switches and most guest Wi-Fi networks block it. If devices are powered on and reachable but never appear in JudoNet, this is almost always why.

What JudoNet does not do

Being clear about the boundaries saves time when something goes wrong:

  • It does not run the scoreboard. The operator on each mat does that. JudoNet only listens.
  • It does not decide the result of a contest. It records what the scoreboard showed.
  • It does not record video. That is the FairReplay Recorder.
  • It does not cut video. That is the Video CutterV2.
  • It does not upload video. That is the Video Ingester.
  • It cannot correct another machine's clock — only report on it.
  • It does not start by itself. The service is set to start on demand, so after a PC restart somebody must open JudoNet Monitor and press START SERVICE.

Where to go next