Skip to content

User Reporting and Incentives

The problem

The manufacturer is legally responsible for keeping the battery passport up-to-date (Art. 77(4)). But after selling the battery, they have a practical problem: they no longer have physical access to it. The BMS contains the data they need, but the regulation doesn't specify how it reaches the passport.

Meanwhile, the user (vehicle owner, fleet operator) has daily physical access to the battery and a direct interest in its condition being accurately recorded.

The opportunity

The manufacturer needs data. The user has the data. A Cardano smart contract can coordinate the exchange: users report BMS readings and get rewarded for it.

sequenceDiagram
    participant U as User
    participant B as Battery BMS
    participant C as Cardano L1
    participant M as Manufacturer Backend

    U->>B: Read BMS via OBD-II / app
    B-->>U: SoH, cycles, voltage, temp
    U->>U: Sign reading with wallet key
    U->>C: Submit signed reading + reward claim
    C->>C: Validator checks: valid format, plausible data, user token
    C-->>U: Reward released (ADA or token)
    M->>C: Query submitted readings
    C-->>M: Verified user-reported data
    M->>M: Update passport with new data

Why this works

Party Has Needs Gets
Manufacturer Legal obligation, passport infrastructure BMS data from batteries in the field Fresh readings without running telematics
User Physical access to battery, OBD-II port Incentive to bother reading BMS Reward (ADA, token, discount, warranty credit)
Buyer (secondary market) Need to trust SoH claims Verified, timestamped condition history Confidence in purchase decision

How the user reports

Article 14(2) requires manufacturers to grant read-only access to BMS data for the purchaser or any third party acting on their behalf — for assessing residual value, reuse, or repurposing. The regulation does not mandate a specific interface (such as OBD); the access method is left to the manufacturer. This means the user has a legal right to read BMS data.

Practical methods:

Method Equipment User effort
OBD-II adapter + app ~€20-50 Bluetooth dongle Plug in, open app, tap "report"
Manufacturer's own app Phone + existing app Open app, tap "report" (if manufacturer supports it)
Workshop visit Nothing (workshop does it) Passive — reading happens during service
Charging session Compatible charger (ISO 15118) Passive — reading happens during charge

The lowest-friction option is an OBD-II Bluetooth adapter + mobile app that reads BMS parameters and submits them to the smart contract in one tap. The user doesn't need to understand Cardano — the app handles wallet management and transaction submission.

Smart contract design

Reporting contract

ReportingValidator:
  Datum:
    batteryId     : ByteString     -- links to the CIP-68 passport
    manufacturer  : PubKeyHash     -- who funds the reward pool
    rewardPerRead : Integer        -- ADA per valid submission
    minInterval   : POSIXTime      -- minimum time between reports
    lastReport    : POSIXTime      -- timestamp of last accepted report

  Redeemer: SubmitReading
    reading       : BatteryReading -- SoH, cycles, voltage, temp, timestamp
    userSignature : ByteString     -- signed by user's wallet key

  Validation:
    - Reading format is valid (all fields present, within plausible ranges)
    - Enough time has passed since last report (prevents spam)
    - User holds a valid "battery user" token (linked to this battery)
    - Reward pool has sufficient funds
    - Release reward to user
    - Update lastReport timestamp

Plausibility checks

The validator can enforce basic physical constraints:

  • SoH cannot increase between reports (batteries don't heal)
  • Cycle count cannot decrease
  • Voltage must be within chemistry-specific range (e.g., 2.5V-3.65V per cell for LFP)
  • Temperature must be within operating range (-20°C to +60°C)
  • Time between readings must be positive and reasonable

These don't prove the data is true, but they catch obvious fraud.

Reward pool

The manufacturer pre-funds a reward pool locked at the contract address:

graph TD
    A[Manufacturer] -->|deposits ADA| B[Reward Pool UTxO]
    C[User 1] -->|valid report| B
    B -->|reward| C
    D[User 2] -->|valid report| B
    B -->|reward| D
    B -->|remaining funds| A

The manufacturer decides the reward amount and minimum reporting interval. A reasonable setup might be:

  • 1-2 ADA per monthly reading (~€0.25-0.50)
  • Minimum 7 days between reports
  • Bonus for readings submitted near service milestones

Trust model

A single user-reported BMS reading is no more trustworthy than the BMS itself — the user could manipulate it. But the system builds trust through multiple independent signals:

graph TD
    A[User BMS readings] -->|frequent, low cost| D[Passport Data]
    B[Workshop EIS verification] -->|periodic, high trust| D
    C[Charging session data] -->|passive, medium trust| D

    D --> E{Cross-reference}
    E -->|consistent| F[High confidence]
    E -->|anomalous| G[Flag for investigation]
Data source Trust level Frequency Cost
User BMS report Low-medium (user-signed, plausibility-checked) Monthly Reward cost (~1-2 ADA)
Workshop EIS High (independent measurement, certified) Annually Workshop fee
Charging session Medium (third-party charger, ISO 15118) Per charge Free (passive)
Fleet telematics Medium (fleet operator's system) Continuous Infrastructure cost

No single source is fully trusted. But if user reports, workshop measurements, and charging data all agree, confidence is high. If a user-reported SoH suddenly diverges from charging session data, it's flagged.

What Cardano adds

Without Cardano, the manufacturer runs a centralized reporting portal. Users submit data, manufacturer verifies and pays. The manufacturer controls everything — they could ignore reports, alter data, or stop paying.

With Cardano:

  • Reward is guaranteed by the smart contract — the manufacturer cannot refuse to pay for a valid report
  • Reports are timestamped and immutable — neither user nor manufacturer can alter historical submissions
  • Cross-referencing is transparent — anyone can verify the consistency of reports
  • The manufacturer cannot selectively ignore unfavorable readings — all valid submissions are on-chain
  • Multiple manufacturers can use the same contract — creating a standard reporting protocol across the industry

Broader implications

This model generalizes beyond batteries:

  • Tyre tread depth reported by users via photo + measurement app
  • Appliance energy consumption reported from smart meters
  • Textile condition reported at resale (a stretch, but possible for high-value items)

The pattern is: manufacturer needs field data, user has it, smart contract coordinates the exchange. The DPP becomes not just a static record but a living dataset fed by its users.