TwinCore built the temperature monitoring platform behind isatec's Sensilla product. Wireless IoT sensors installed across all client sites now stream temperature and humidity data to a single live dashboard around the clock. A breach triggers an alarm after a configurable delay. Every sensor reading is retained in the monitoring history. User actions and alarm responses are recorded in a separate audit log built to support Good Distribution Practice (GDP) inspection workflows.

Country
United Kingdom
Project duration
12 months
Team
  • .NET backend
  • React frontend
  • UI/UX designer
  • QA
Outcome
TwinCore replaced the previous system with a real-time platform that provides excursion alerts and inspection-ready reports for all clients and sites in one console.

About the client

isatec is a UK company that operates a temperature-monitoring service for cold-chain and regulated-storage customers, including third-party logistics warehouses, medical and pharma distributors, and food operators.

The company supplies and installs wireless sensors at customer sites and is contractually responsible for the resulting sensor data.

“Inside isatec, operators moved day-to-day monitoring onto the platform, and customer users now log in to watch their own sites, acknowledge alarms, and download inspection reports directly.”

A
Anonimus
Founder
Live Updates

A real-time dashboard now updates whenever a new reading arrives

Auto-Flags

Excursions are flagged automatically after a configurable delay instead of being detected only after a page refresh

100% Data

Every temperature and humidity reading is stored for each sensor and used in live widgets and inspection reports

500K+ Logs

User actions and alarm responses are captured in a searchable audit log, with entries recorded in production

Real-time temperature monitoring platform for cold-chain compliance

What client received

  • Real-time monitoring dashboard

    Problem: operators could not see sensor readings in real time.

    Result: the dashboard shows current temperatures, sensor locations, device status, and active alarms. It updates automatically when a new reading arrives, without requiring a page refresh.

  • Configurable alarm thresholds per sensor

    Problem: freezers and ambient storage areas require different temperature ranges, which a single global threshold could not support.

    Result: each sensor has its own upper, lower, and warning limits, plus a configurable alarm delay. A breach escalates only if it lasts beyond that delay.

  • Alarm acknowledgement and response history

    Problem: the system did not record who had reviewed an excursion or when they responded.

    Result: each alarm appears as a card with a timer showing its duration. Operators can acknowledge an alarm, add a comment, and maintain a timestamped response history.

  • Inspection-ready reports

    Problem: the old system had no custom reporting, so preparing records for GDP or Hazard Analysis and Critical Control Points (HACCP) inspections required manually exporting and restructuring raw readings.

    Result: sensor, device-health, and alarm reports can be generated automatically on a schedule. Clients can download daily summary, monthly summary, trend, and archive reports for inspections.

  • Visible connectivity gaps, not silent data loss

    Problem: when a sensor goes offline, missing readings can remain unnoticed until an inspection finds a gap in the monitoring record.

    Result: the calendar flags data gaps for each sensor ("No signal for 26 min"), so downtime is visible rather than silent, and the alarm delay prevents brief signal losses from triggering false excursion alerts.

  • Multi-tenant client and site management

    Problem: one operator manages many customers, but each customer must have access only to its own data.

    Result: the Clients → Sites → Sensors hierarchy keeps customer data separated. Each tenant sees only its own sites and sensors, while the operator can manage all customer sites and sensors.

Project Goal

isatec wanted to sell continuous monitoring as a managed service, on top of supplying and installing the sensors. They needed one console where internal operators and customer users could monitor sensors in real time. The same console had to raise alerts when readings move outside safe limits and generate inspection-ready reports for every customer and site.

Real-time temperature monitoring platform for cold-chain compliance

Solution

The architecture separates operational data from high-volume sensor readings and sends live updates to the browser without constant polling.

  • Ingestion and alarm engine — accepts readings from wireless temperature/humidity sensors, evaluates each against its per-sensor limits, and triggers an alarm when a reading remains outside the permitted range beyond the configured delay.
  • Real-time layer — SignalR (a .NET library that pushes server updates to browsers over WebSockets) drives live widget updates, the sensor map, and alarm cards without page refreshes.
  • Multi-tenant model — a Clients → Sites → Sensors hierarchy scopes every query by tenant, reducing the risk of cross-client data exposure.
  • Reporting module — daily summary, monthly summary, trend, and archive reports, each schedulable and exportable, with min/avg/max and incident counts per sensor.
  • Calendar and archive views — a monthly grid for each sensor shows daily minimum and maximum temperatures, along with humidity levels, and flags gaps ("No signal for 26 min") so missing data is visible, not silent.
  • Audit and system logs — a searchable audit log records each action, including the user, site, severity, IP address, and user agent. The production audit log already contains more than 500,000 entries.
  • Device records — each sensor record includes a product code, cloud ID, QR code, battery level, calibration expiry date, and warranty details. Floor-plan photos and OpenStreetMap positions help operators locate devices quickly.

Infrastructure included PostgreSQL for clients, sites, sensors, users, and permissions; MongoDB for high-volume readings; React for the front end; and SignalR for live updates.

  • Real-time temperature monitoring platform for cold-chain compliance screenshot 1
  • Real-time temperature monitoring platform for cold-chain compliance screenshot 2
  • Real-time temperature monitoring platform for cold-chain compliance screenshot 3
  • Real-time temperature monitoring platform for cold-chain compliance screenshot 4
Previous slide
    Next slide

    Who needs a platform like this

    The platform is designed for companies that manage temperature data across multiple customers and sites, rather than for a single warehouse. Typical users include 3PL cold-chain warehouses, pharma and medical distributors, and food operators working under GDP or HACCP requirements. They need to produce complete monitoring records on request. This can be difficult with slow, single-site tools, especially when an inspector requests twelve months of historical data.

    One tradeoff we made

    TwinCore separated the data based on its structure and usage. Relational data (clients, sites, sensors, users, and permissions) stays in one PostgreSQL database, where relationships and access rules are easiest to enforce. High-volume time-series data (readings recorded continuously over time) is stored in MongoDB. Each client has a separate MongoDB database, allowing each tenant's history to scale independently.

    The tradeoff is the need to maintain two data stores and manage synchronization between them. In return, dashboard and reporting queries remain efficient as the number of readings grows into the millions.

    Architecture and UI

    The data flows from the sensors to the screen as follows: Sensors → Ingestion/Alarm engine → PostgreSQL (entities) + MongoDB (readings) → SignalR → React console

    Operators use a filterable sensor list for daily monitoring, with status, signal strength, last activity time, and site information. The trend report lets auditors review temperature history, safe ranges, and out-of-range readings at a glance.

    Previous slide
      Next slide

      Technologies used

      .NET
      PostgreSQL
      MongoDB
      React
      SignalR
      Leaflet
      OpenStreetMap

      Why TwinCore

      The client weighed three options. An off-the-shelf IoT dashboard was the quickest option, but it lacked the multi-tenancy, calibration tracking, and audit-log capabilities required for a compliance service. Keeping the previous system meant living with the same slow screens and manual reporting. Building the platform in-house would have pulled the client's small team away from installing and servicing sensors.

      TwinCore was a good fit because the project required experience with legacy .NET systems, IoT data, and real-time applications. TwinCore had previously delivered multi-tenant .NET and React platforms and understood the reporting, audit, calibration, and data-retention requirements of cold-chain monitoring. The team also handled operational edge cases that appeared only after real sensors began sending data.

      Ready to scale your ecommerce store?

      If you rely on a slow monitoring tool with no real-time view, or if you still prepare GDP/HACCP reports from raw exports, book a 30-minute call. You will receive an initial architecture review, an outline of the main technical risks, and a rough development cost estimate.

      Scroll to top