Nexma

Plan an FTTH network

Fiber, end to end

In this tutorial you will plan a complete fiber-to-the-home network for a neighborhood — from an empty Globe to a cost-optimized, constraint-checked design you can export to a vendor format. You will learn how to create a project with the FTTH skill, load a service area and premises, design with Jax respecting splitter ratios and optical budget, optimize trench cost with Nexma MathEngine, review on the Globe, and branch a what-if before exporting. The only prerequisite is an account in an organization; see Quickstart if you need one.

What you'll build

A two-stage GPON network for one neighborhood: an OLT feeding cabinets, splitters at 1:32, distribution cable to closures, and drops to every household. The design will satisfy the FTTH skill's constraints — splitter ratios, optical loss budget, cascade depth — and be cost-optimized for trench length. You will end with an exported plan and a saved what-if branch at 1:64.

1. Create the project

From Projects → New, name the project (for example, "Maple Ward FTTH") and bind its world model:

  1. Pick the FTTH ontology — the typed world model with OLT, Cabinet, Splitter, Closure, Drop, ONU, and the fiber entities.
  2. Add the FTTH Network Design skill, which targets that ontology and carries the design constraints and constants.
  3. Click create. The project opens with its own Globe view and its own Jax session.

If you would rather not pick manually, describe the work instead — "plan a fiber network for a neighborhood" — and Jax proposes the matching ontology and skill. See Projects and Skills overview.

2. Load the service area and premises

Open the Globe and search to your neighborhood. Draw a polygon around the service area; it is saved into the project as a real entity you can edit or hand to Jax.

Next, get premises. You have two options:

  • Bring your own. Connect an addressable-households or parcels feed through Nexma SyncEngine. Spatial feeds render on the Globe automatically.
  • Let Jax derive them. With no feed, ask Jax to build a demand layer from building footprints:
Derive a household demand layer from OSM building footprints inside the service-area polygon. One ONU per dwelling unit.

Click a few of the resulting points to confirm the count looks right before moving on.

3. Design with Jax

Open the Jax panel and describe the outcome you want. Be specific about the constraints that matter:

Plan a feeder and distribution network for every household in the service-area polygon. Use existing pole runs where possible. Splitter ratio 1:32. Keep total optical loss within the GPON budget. Place cabinets along the street network with feeder runs under 2 km.

Jax plans the work, calls Nexma MathEngine for the placement and routing, and streams the result onto the Globe — cabinets, splitter chains, distribution cable, and drops appear as it works. The hierarchy follows OLT → Cabinet → Splitter → Closure → Drop → ONU.

When it finishes, push on the design with follow-up questions:

  • "Why did you place this cabinet here?"
  • "Show me the splitter chain feeding the north block."
  • "How many homes does each cabinet serve?"

Every answer is grounded in the actual entities on the Globe, not a guess.

4. Optimize and validate

Now optimize for cost and check the constraints. Ask Jax to minimize trench length while holding coverage and budget:

Cost-optimize the trench layout. Minimize total cable and trench length, keep every household connected, and stay within the optical budget. Re-route distribution along shared trenches where possible.

Jax dispatches the optimization to Nexma MathEngine and updates the layout in place. Then validate explicitly:

Validate the optical budget across every cascade and flag any over-budget path. Confirm no splitter exceeds 1:32 and cascade depth is within limits.

Over-budget paths are flagged inline on the Globe. If any appear, ask Jax to fix them — "split the over-budget runs onto a second cabinet" — and re-validate. See Running an optimization and the FTTH skill reference.

5. Review and branch

Review the plan on the Globe. Cabinets render as 3D extruded boxes, splitters as points scaled by ratio, cables thickness-graded by fiber count, drops styled per home status. Click any feature to read its full record; hover a cable to see fiber count.

Before you commit, explore an alternative without disturbing the approved plan. Branch the DataStore and run a what-if:

On a new branch, swap every 1:32 splitter for 1:64 and re-route. Then compare against main — homes served, total trench length, and any optical-budget violations.

Compare the branch against main the way a reviewer reads a pull request: entities added, links rewired, constraints checked. If 1:64 saves trench without breaking the budget, merge it back. Otherwise discard the branch and keep main. See Spatial Branches.

6. Operate

When the plan is approved on main, export it. From Project → Export, choose your format:

  • GeoJSON or KML for general handoff.
  • Vendor formats — NetAdmin, VETRO, IQGeo — for production tooling.

Ask Jax for a quick summary to attach to the handoff:

Summarize the final design: cabinet count, total homes passed, splitter ratio, total trench length, and worst-case optical loss.

The design stays live in the project. If field conditions change, reopen it, edit on a branch, and re-validate — every change is reversible.

Recap

You created an FTTH project, loaded a service area and premises, designed a two-stage network with Jax respecting 1:32 splitter ratios and the optical budget, cost-optimized the trench layout with MathEngine, validated the cascade, branched a 1:64 what-if, and exported to a vendor format. Every step was a real, reversible change grounded in the project's world model.

Where to go next

Plan an FTTH network