Back to EdgeBits
CCTS · Steel · Compliance

CCTS: Building the emissions trail at the source

July 2026 · 7 min read

India's Carbon Credit Trading Scheme puts a tonne-of-CO₂e-per-tonne-of-crude-steel intensity target on your line, with an audited deadline. Not a nice-to-have. A number your line has to hit, backed by evidence a regulator will accept.

What the industry ships
A BI dashboard on a data lake
Meter data streamed to a cloud lake, cleaned in a BI tool, an intensity number computed offline. Every layer adds a screenshot. None of them add proof.
What the regulator wants
A number with lineage
Which meter reading, which emission factor, which window, how they combined, and a hash that says nothing has been edited since.

A regulator does not want a dashboard. A regulator wants a number they can walk back to a meter, an emission factor, and a window — with the hash chain intact.

Here is how EdgeBits builds that trail, at the source, on the edge box, and what we shipped this quarter to prove the pattern end to end.

What we shipped

1
Modbus meter to sealed tCO₂e/t on the box, no cloud in the path
3
Deploy variants: standalone, DMZ (edge-sync), direct (SDK)
0
Inbound firewall rules. Outbound HTTPS only.

The pipeline

One Modbus line meter feeds three streams: electricity kWh, gas m³, crude-steel tonnes. A combine stage joins them over a rolling window and emits a single derived tag: tco2e_per_t. The fasten audit layer seals the meter → combine → report lineage. Only the compliance number leaves the plant.

01 · meter

Modbus ingest

kWh, gas m³, and crude-steel tonnes off one device via the production libmodbus connector (TCP/RTU, all register types, scale/offset).

02 · factor

Emission factors

Grid factor on electricity (Scope 2), fuel factor on gas (Scope 1). Your audited values, applied on-node, versioned in config.

03 · metric

combine → tCO₂e/t

The engine joins the three streams over a window and emits one derived tag: tco2e_per_t. Windowed arithmetic; no ML, no black box.

04 · report

Sealed and shipped

fasten seals the meter → combine → report chain. Only the compliance number is streamed to Analytics, historian, or ERP.

A worked window

Illustrative, one daily window. Real values come from your meters and your audited emission factors.

electricity  1,000,000 kWh × 0.71 = 710,000 kg CO₂  (Scope 2)
gas           40,000 m³ × 2.0 =  80,000 kg CO₂  (Scope 1)
crude steel      500 t
intensity = (710,000 + 80,000) / 1000 / 500 = 1.58 tCO₂e per tonne

Computed and audit-sealed on the edge node, then pushed to Analytics. The raw kWh / gas / tonnes are consumed by the window; only the per-tonne compliance number is distributed downstream.

The number carries its own proof

Every intensity figure is sealed with fasten the moment the window closes. The event records the inputs, factors, expression, window, and result, chained to the previous event with a tamper-evident hash. Gaps and edits are detectable.

code:    CCTS_INTENSITY_REPORTED
actor:   pipeline  ·  target: line meter
detail:  { inputs: kwh / gas / tonnes, factors, expression, window, result }
hash:    sha-chained to the previous event

When a regulator asks "where did this tonne of CO₂e come from?", the answer is the lineage, not a screenshot. Meter reading, factor applied, window closed, hash-chained result. At the source.

Three ways to deploy the same pipeline

The pipeline itself is one thing. Getting it onto the edge node is where every plant is different. We shipped three variants, sharing a single core (one simulator, one pipeline definition, one setup script). Pick the one that fits your IT posture.

STANDALONE

On the box, no manager

Import the pipeline locally onto one Edge Node. Zero infrastructure. Good for pilots, air-gapped labs, or single-line proofs.

./run.sh

DEPLOY · DMZ

Edge Manager + edge-sync

Author the pipeline in Edge Manager. edge-sync polls outbound over HTTPS from the plant network. Manager queues; edge-sync brings it in. No inbound port on the plant firewall.

DEPLOY · DIRECT

Manager via SDK

Manager pushes the pipeline straight to the gateway over the SDK. Drift confirms convergence immediately. Lab and demo path when the gateway is directly reachable.

All three run against the same shared simulator and produce the same audit chain. The DMZ path is the one most steel plants will actually deploy, because the plant IT team will not open an inbound port on the OT network for anyone.

Why "at the source" matters, again

The alternative pattern is to stream every meter reading to a cloud data lake and compute the intensity number up there. Two things go wrong:

Building the emissions trail at the source solves both. The raw kWh and gas readings never leave the plant. The fasten-sealed audit chain lives on your box, exportable in a format you own. The number that leaves is the compliance number, and only the compliance number.

Bring your Modbus meter

A 4-week paid pilot on a single line. We wire one Modbus meter, stand up the emissions pipeline, and hand you an audit-ready tCO₂e per tonne trail you can show a regulator.

Book a pilot scoping call