SGA‑OISOpen Interoperability Standard
1.0 Draft
SGA-OIS/About

SGA Open Interoperability Standard (SGA-OIS)

Version 1.0 Draft — open for integrator review. Not yet ratified, so details may still change.

One wire format between all the components in a golf simulator bay, so that a launch monitor, a simulator, a display, a moving platform and a swing camera from five different vendors can be plugged together without anyone writing a bespoke connector for each pair.

The local service that speaks it is the SGA Engine. It is designed to run on the bay machine under any operating system, including a phone or tablet if that is where your simulator runs, and acts as the traffic cop between every device present.

The SGA Engine at the center of a bay: simulator software, swing cameras, a motorized swing platform, kinematics sensors, an RFID golf bag, a launch monitor, a HUD or alternate display, a swing mat, a tournament officiator and the SGA Cloud, each connected to the engine
Every device in the bay connects to the SGA Engine, which routes data between them and records it.

What this is#

  • A capability handshake. A device says what it can provide and what it wants in return. The engine computes who feeds whom and tells everyone.
  • A provenance model. Every field is declared measured, calculated or inferred, and calculated and inferred values must say what they came from. A simulator's flight model may treat a ball speed calculated from club speed differently from one measured off the ball, and a championship may require that key values come from measured sensors, or from particular certified equipment.
  • A unit contract. Fixed units, fixed sign conventions, unit-suffixed field names. No regional ambiguity, ever.
  • A trust chain. Every result records which launch monitor, simulator and bay produced it, and is only as trusted as the lowest level among them, from A0 (open, no account) to A3 (keys in hardware). See How far a result can be trusted.
  • A conformance kit. A vendor runs it themselves and knows before they ship whether they pass.

What this is not#

  • Not simulator software. Not a launch monitor. SGA does not build either and does not intend to.
  • Not a replacement for a vendor's own protocol. A device can keep speaking whatever it already speaks; SGA-OIS is what it speaks in addition, to be interoperable. Our aim is for it to be useful enough that it becomes the default way simulated golf equipment connects.
  • Not a cloud dependency. A bay with no internet still negotiates, still plays, still records. Cloud sync is an optional participant like any other.

Why a vendor would implement it#

Today every pairing of a launch monitor and a simulator is its own private integration, negotiated and maintained by hand. Ten monitors and ten simulators mean up to a hundred connectors, and it is why a golfer's data does not follow them between bays.

SGA-OIS turns those hundred connectors into one implementation per product. Each product implements the standard once and works with everything else that has — including software and hardware that does not exist yet.

The standard is free to implement and free to redistribute inside commercial products. SGA gates only two things: the trust levels above A0, which need the free technology partner agreement, and the SGA Certified mark (conformance plus a verified signature at A2 or higher). Neither is about commercial terms. See Governance.

Where to start#

Implementing this? Start with integration/ — one page, four steps, a working code sample. Then the guide for your device class. The specs below are reference material, not onboarding.

integration/README.mdconnect, describe, want, exchange — the whole protocol in one page
integration/launch-monitor.mdrequired and optional fields for a sensor.ball device
integration/simulator.mdwhat only the simulator knows, and tournament hosting
integration/accessory.mdone-field devices: RFID, environment, actuators, displays
conformance/run it yourself, offline, before you contact us

Normative reference#

The fifteen specification documents are in spec/, with a one-line summary of each on the Overview. JSON Schemas are in spec/schema/. The specs explain why as well as what; if you just want to connect a device, the guides in integration/ are shorter.

Prose and schema disagree: the schema wins.

Status of each part#

partstatus
conventions, units, sign conventionsdrafted, wants vendor review
provenance modeldrafted, wants vendor review
identity and trustdrafted; attestation format unsettled, needs manufacturers
capability handshakedrafted; connection-matrix tie-breaks want review
bundle distributiondrafted
deployment and privilege boundarydrafted
offline courier and presencedrafted
shot record, trajectory, scorecarddrafted
competition conformancedrafted
JSON Schemasdrafted — 17 schemas, refs resolve
shot record: putting, swing, pressure, platformdrafted from both vendor sweeps
transport bindingsdrafted
bay capability profiledrafted
media capturedrafted
engine configuration interfacerequirements set, unimplemented
conformance kitworking; --list-rules shows the current set
notices, questions, operator reachdrafted
reference implementation (SGA Engine)working; separate repository

License#

Specification CC BY 4.0, conformance kit Apache 2.0, name and certification mark reserved to SGA. Details: LICENSE · reasoning: Governance.

Simulated Golf Association · SGA-OIS · generated from the specification sources