- Measures
- NO₂, PM2.5, PM10, O₃, noise
- For
- City environment teams, permitted industrial sites
- Integrates
- Dispersion modelling, camera feeds, ESG reporting
From Libelium. We make the sensor and the platform it reports to.
11 public REST endpoints, and two of them write: one sends commands back to the field in bulk. Cities, utilities and industrial operators use iris360 to ingest their devices and third-party feeds, type them against Smart Data Models, and act on what comes back. Your gateways and your SCADA stay where they are.
Bring in whatever is already deployed. Switch on the module a department needs. Build the view a role needs, send the report a regulator asked for, catch the threshold that matters, and model the intervention before the street does.
Devices arrive over MQTT, HTTP, an IoT Agent or the integrated LoRaWAN network server, and every reading leaves as an NGSI-LD entity typed by a Smart Data Model. The dashboards and rules downstream were written against the model, so the eleventh manufacturer is a Tuesday and not a quarter.
The same normalisation is what lets the data leave again. Below is the out-connector list from a real deployment: five destinations configured, none of them written in code. A sixth is a form, not a release.
Verticals, the AI marketplace and the twin engine are licences on the same core, not separate products with separate logins. A mobility team can run parking360 while the environment team runs envair360 in the same organisation, on the same entities, with different dashboards and different people. Nobody migrates anything to add the second one.
Separate workspaces, separate dashboards, separate people, one set of entities underneath.
Forty-two chart and panel types, grouped the way you would look for them: linear, bar, scatter, map, heatmap, pie, boxplot, radar, 3D. Drag one in, bind it to entities, publish. Every dashboard has a public route that needs no login.
Schedule a report against the same entities the dashboards use. It arrives by email as PDF, CSV or Excel, on whatever cadence the regulator asked for. When an auditor questions a figure, the report and the API return the same number, because both read the same time series.
The same numbers the API returns, because both read the same time series.
Conditions combine several measures across several entities, and the action is not limited to a notification: a rule can call a webhook, push to an out-connector, or send a command back to the field.
Each alarm below is named for the limit it watches, and keeps its own history of every time it fired. That history is what turns an alert into evidence in front of an auditor.
Available on request
A twin is the entities you already have, placed in a 3D model and driven by live telemetry plus a forecast. Run the restriction scenario, read the modelled dispersion, take a number to the council meeting.
The 3D engine ships with Special. Ask and we will walk you through a running one.
The model, the entities that drive it and the scenarios are built for one city or one site.
Connect the assistant your team already uses and it can check the platform itself: what is deployed, what a sensor read last night, why an alarm went off. It signs in as one of your own people, so it sees exactly what that person sees and nothing else. Your data stays where it is: nothing is exported, and no copy of it is made anywhere.
It reads, and it can draft. An assistant can put a dashboard or a report together for someone to approve, but it cannot send a command to a device or change a connector. Those go through the API, with a key you hand out on purpose.
finds
what you have out there, and where it is
fetches
last night’s readings across a whole district in one go
explains
why an alarm went off, and what set it off
drafts
a dashboard or a report for someone to approve
obeys
the same permissions as the person it signed in as
None of them needs a firmware change or a data engineer on standby. Every one happens in the interface, and each is shown here as it actually looks.
Point the gateway at the integrated LoRaWAN network server, at an IoT Agent, at MQTT, or at plain HTTP. The device keeps sending exactly what it already sends. Libelium builds the Smart Spot and Plug & Sense hardware as well, so on our own boxes the ingest path has been through a few winters on a pole.
Choose the Smart Data Model that matches the device. Orion-LD creates the entity and the time series starts filling, so two parking sensors from two manufacturers become the same kind of thing for every dashboard, rule and connector downstream.
Drag panels onto a dashboard and bind them to entities. Publish it internally, or on a public URL when the audience is the city.
A rule decides what a broken threshold does: notify, call a webhook, push to an out-connector, or send a command straight back to the devices.
You license the ones a department needs and the rest stay off. Each one is its own data models, its own algorithms and its own screens, on the same core. Four are generally available and two more are scoped on request.
Measures what people breathe and models where it goes next. Built for the department that has to defend a restriction in public.
Watches the assets that fail expensively. Conductor temperature and wind load per span, not one number for the whole line.
Bay-level occupancy, and the turnover figure that tells you whether the policy worked.
Counts people, and tracks where they came from and where they go next.
Runs the forecast the other modules borrow, on a WRF domain, and speaks to whatever broker your region standardised on.
Soil moisture at three depths, because irrigation decided on one depth wastes water.
Who the deployment belongs to, who gets in, what is licensed, and how it is run. These four are settled once, at contract time, and they hold across everything else on this page.
Data comes in over the radios and protocols you already run and leaves through the out-connectors already in production — HTTP, MQTT, Azure IoT, Sentilo and FIWARE — plus a WebSocket feed and the public REST API. Anything that speaks HTTP or MQTT is a configuration away. The full matrix, with a search box, is on the architecture page.
Starter, Basic and Pro are tenancies on our EU cloud and differ only in how much room they give you. Enterprise runs on your own infrastructure and Special on a cluster we run for you alone. Reading and writing through the public API is not metered per call on any of them.
A tenancy on our cloud, live in days. Three sizes, from a first pilot to a city running several teams, and the ceilings are the only thing that changes between them.
One dedicated instance inside your perimeter, on hardware your team controls. Chosen where the security review ends with "not in a shared cloud".
A cluster we run for one organisation and nobody else, sized S, M or L to a throughput you can name. The only one where we own the whole stack, which is why it is the only one with the commitment in writing.
Commands that reach the field through the same bearer token you read with, and one endpoint that hands the entire history back on the day you ask for it.
Libelium has been putting sensors on lamp posts since 2006. iris360 is the software we ended up writing, because our own hardware kept arriving in cities that already had three other vendors on the street. One supplier for the box on the pole and for the platform it reports to.