Kronos Fix — Sovereign Spacetime Coordinates
One-Line Pitch
GPS tells your phone where it is. Kronos tells the network where YOU are.
The Problem: Lat/Lon Is a Lie We All Agreed To

Latitude and longitude were invented for 2D maps of a 3D planet. Two numbers on a flat grid, projected onto a sphere, and everyone just... went with it.
The military didn't. They use MGRS, ECEF, geocentric cartesian — systems that start from the reality that Earth is a ball with a center of mass and every point on the surface is a radial vector from that center. Central gravity. Vertical spikes in 3D out to the surface. Each point is a fix, even though the surface curves. That's the real geometry.
Civilians got lat/lon because Mercator projections were good enough for paper charts. Then GPS chips spat out lat/lon because that's what the maps expected. And now every app, every API, every database column says latitude FLOAT, longitude FLOAT like that's the natural order of things.
It isn't. It's legacy encoding from the age of sextants. And it left us with a coordinate system that:
- Can't encode altitude without a separate field
- Distorts distances near the poles
- Needs hemisphere flags (N/S, E/W) or sign conventions nobody remembers
- Has a singularity at the poles (all longitudes converge to one point)
- Is trivially spoofable — there's no authentication on a coordinate pair
The military knew all this. They just never shared their better systems with civilians. Until now.
The Insight: You Already Solved Half of This

Kronos Time→ gives you WHEN — a proof-anchored temporal coordinate independent of UTC:
⊕T1·427·G3 | M28·5·+12 | φ0335028589
Train-anchored. Proof-backed. Sovereign. The Temporal Lattice→ reveals it's actually a multi-ring phase space. The Latch→ witnesses the temporal sync between independent time streams.
But there's no WHERE.
When a user taps their Kronos card at a GoW node, the node already knows three things with cryptographic certainty:
- WHO tapped — DeSFire EV3 mutual auth, KronosID on-card
- WHEN — KTC timestamp from the temporal system
- WHERE — ???
The third one is sitting right there. The node IS a physical location. It's bolted to a desk, or mounted in a studio, or deployed at a fleet point. The node knows where it is. And it just witnessed you.
The Temporal Lattice is half a spacetime coordinate. This is the other half.
The Kronos Fix

A Kronos Fix (KF) is a sovereign-verified spacetime event:
KF: studio · ⊕T1·427·G3 · ✓
↑node ↑when ↑sig
Node. Time. Signature. WHERE you were, WHEN you were there, WITNESSED by a sovereign node that signed the whole thing.
No GPS chip. No satellite. No broadcast that anyone can intercept. The node is the anchor. The sovereign WebSocket is the channel. The card tap is the trigger.
GPS vs Kronos Fix

| GPS | Kronos Fix | |
|---|---|---|
| How it works | Satellites broadcast. Your chip listens passively. | You tap. The node witnesses actively. |
| Identity | None. Any device receives. | Mutual auth. The network knows WHO. |
| Authentication | None. Trivially spoofable. | DeSFire AES-128 + node signature. |
| Privacy | Your phone can be tracked by anyone in range | Only shared on the sovereign mesh |
| Coordinate system | Lat/lon — 2D projection of 3D reality | Radial vectors from Earth's center |
| Altitude | Separate field, often ignored | Inherent in the radial distance |
| Temporal | Separate (UTC timestamp, different system) | Unified — KTC is native to the fix |
| Proof | None. A coordinate string proves nothing. | Cryptographic receipt. Node witnessed it. |
GPS answers: "Where is this device right now?"
Kronos Fix answers: "Where was this PERSON, and who witnessed it?"
The Raw Coordinate: Kronos Radial Fix

For the underlying physics — how nodes describe WHERE THEY ARE to the network — Kronos uses a geocentric radial system. Starting from first principles, the way the military does:
- Earth has a center of mass. That's the origin. The REAL zero point.
- Every point on or above the surface is a vector from that origin.
- Express that vector as three integers.
KRF: R6371420 · Ψ18472 · Θ56081
↑radius ↑azimuth ↑polar
(meters) (mrad) (mrad)
R — Radial distance from Earth's center in meters. NOT altitude. The altitude is the difference between R and the local geoid radius. Sea level stations cluster around 6,371,000m. A mountain station might be 6,374,000m. The 3km gap IS the altitude, but the raw number is the real physics — your distance from the center of mass of a 6×10²⁴ kg ball of iron and rock.
Ψ (Psi) — Azimuthal angle in milliradians. Not degrees (Babylonian base-60 nonsense). Not from Greenwich (colonial artifact). From the Kronos Prime — a reference meridian the network defines for itself. Because if you're building a sovereign coordinate system, you don't have to inherit anyone else's zero.
Θ (Theta) — Polar angle from the rotation axis in milliradians. The angle down from the North Pole, not up from the equator. Because that's how spherical coordinates actually work in physics.
Why Milliradians
The military uses milliradians. There's a reason.
- 1 mrad ≈ 1 meter at 1 km range — built-in mental arithmetic
- Radians are the natural unit — 2π per revolution, no arbitrary subdivision
- 6,283 milliradians in a full circle — more precision than 360 degrees without decimals
- No ambiguity about which direction is positive
- No "360 wraps to 0" edge cases — it's modular arithmetic on 2π
Degrees are what you get when an ancient civilisation picked 360 because it was close to the number of days in a year. Milliradians are what you get when you ask the circle itself.
Compact Encoding
For network transmission, a KRF compresses to 12 bytes:
| Field | Size | Range | Notes |
|---|---|---|---|
| R | 4 bytes (uint32) | 0 – 4,294,967,295m | Covers well beyond geostationary orbit |
| Ψ | 4 bytes (uint32) | 0 – 6,283,185 μrad | Full circle in microradians |
| Θ | 4 bytes (uint32) | 0 – 3,141,592 μrad | Hemisphere in microradians |
12 bytes for any position on or above Earth's surface. Sub-meter precision. No decimal points, no hemispheres, no N/S/E/W confusion, no sign conventions. Three unsigned integers.
Compare: a typical {"lat": -33.924910, "lon": 18.424141, "alt": 45.2} JSON blob is ~50 bytes of ASCII and still less precise.
The Node IS the Coordinate

Here's the deeper point. For most human purposes, you don't need milliradian precision. You need:
- "I'm at the studio"
- "She tapped in at the Cape Town hub"
- "Last seen at fleet point Muizenberg, 3 minutes ago"
In the Kronos sovereign network, your location IS the node. Not coordinates — the node identity itself. The node has a verified, signed physical position registered with the network. When you tap, your location is:
studio
Not -33.9249° S, 18.4241° E — that's noise for humans. The node name carries the meaning. The KRF underneath is there for the machines, for distance calculations, for the spatial geometry. But the human-readable location is the node itself.
This is how location actually works in real life:
- "I'm at the office." (Not: I'm at -33.9249, 18.4241)
- "Meet me at Mom's." (Not: Meet me at 51.5074, -0.1278)
- "Delivered to Fleet Point 7." (Not: Delivered to R6371420·Ψ18472·Θ56081)
People name places. Machines resolve those names to coordinates. The Kronos network makes every sovereign node a named, authenticated, physically-verified place. Every place in the network is a node with a cryptographic identity and a registered KRF.
The Sovereign Location Feed

Static Nodes
Most GoW deployments are fixed — a Pi on a desk, a reader at a door, a studio setup. The operator configures position once during setup. The node embeds its KRF in every sovereign heartbeat to KronosWater.
Mobile Nodes
Future: a phone running as a Kronos node, a vehicle fleet point. GPS module feeds a local KRF converter. The sovereign network never touches legacy lat/lon — conversion happens at the edge and only the KRF travels over the wire.
The Card Tap Spacetime Event
When a Kronos card taps:
- GoW node performs DeSFire EV3 mutual auth → WHO (KronosID)
- Node reads KTC from the temporal system → WHEN (Kronos Time)
- Node signs its configured KRF → WHERE (Kronos Radial Fix)
- Sovereign WebSocket pushes the assembled Kronos Fix to KronosWater
- KronosWater records the receipt:
(KronosID, KTC, KRF, NodeID, Signature)
That receipt is a spacetime proof. Unforgeable. A sovereign node witnessed this person at this place and time, and signed its name to the claim.
From Two Halves to One Whole

The Kronos Temporal Coordinate and the Kronos Radial Fix were always two halves of the same thing. The Latch already captures temporal sync between independent time streams. Now extend it:
Temporal Latch: KHash ⊕ THash → LHash (time witness)
Spacetime Latch: KHash ⊕ THash ⊕ SHash → LHash (spacetime witness)
Where SHash is the spatial proof — the node's signed KRF at the moment of the event. Three independent streams (wall time, train time, physical space) bound together in a single hash. The Latch becomes a full spacetime witness.
The Temporal Lattice gains a spatial dimension. Each point in the lattice is no longer just a temporal phase position — it's a spacetime coordinate in the network's own geometry.
What Exists Now

- Sovereign WebSocket relay between GoW nodes and KronosWater — live, deployed
- Card tap authentication (DeSFire EV3 mutual auth, KronosID extraction) — just built
- Sovereign login (card tap → session → browser redirect) — deployed today
- Kronos Temporal Coordinate — conceptualised, published
- The Latch (temporal witness) — conceptualised, published
- GoW node heartbeat system — live (already carries version, status, hostname)
- No spatial coordinate system yet — this page is the starting gun
Next Step
Add a krf field to the GoW node config and heartbeat. Static position for studio. When the card taps, the sovereign scan result includes the node's KRF alongside the KronosID and timestamp.
First Kronos Fix.
Connections
- Kronos Time→ — The temporal half of the spacetime coordinate
- The Temporal Lattice→ — Phase space now extended into spatial dimensions
- The Latch→ — Temporal witness mechanism, now a spacetime witness
- Sovereign Watch→ — Location-aware sovereign nodes, first practical application