Most observability tooling was built for software. Metrics, logs, traces — coming off web services, containers, and databases running in a datacenter with a stable network and a wall clock you can trust.
Hardware observability breaks most of those assumptions. The device is in a field, a vehicle, a factory, or orbit. It loses the network. It has twelve temperature sensors that only mean something in relation to where they physically sit. And “the system is healthy” is a question about the physical world, not a request rate.
Monitoring answers a question you already knew to ask — is the CPU above 90%? You define the check ahead of time, and it tells you pass or fail.
Observability is the broader property: can you ask new questions of a running system from the outside, without shipping new code to it? When a device does something you didn’t predict, do you have enough signal to figure out why?
For software, the community settled on three pillars — metrics, logs, traces. They map cleanly onto request-driven systems. They map less cleanly onto a motor controller.
Generic dashboards work fine for software services. Hardware is different in a few specific ways.
There are good observability tools here. It’s worth being honest about them.
The honest summary: general-purpose observability is built for anyone monitoring anything. It fits software services out of the box, and it fits hardware after you build the hardware-specific parts yourself.
This is where Plexus sits, and the design follows directly from the differences above.
And the boundary, stated plainly: Plexus is about the data — observing what devices do in the field. It doesn’t do OTA updates, provisioning, or remote SSH. If you need those, pair it with a tool that does.
If you’re already running InfluxDB and Grafana and they’re working for you, there’s no reason to switch. The pitch here isn’t that generic tools are bad — they’re good, and they were built for a different shape of problem. The pitch is narrower: if you’re a hardware team spending real engineering time rebuilding spatial context, edge buffering, and clock correction on top of a software-first stack, that’s the gap Plexus was built to close.
The ability to ask new questions about a running system from the outside — to understand why it's behaving a certain way from the data it emits, without shipping new instrumentation. Monitoring is the subset where you defined the question in advance.
Monitoring checks known conditions (is temperature over 80?). Observability is the broader capability to investigate unknown ones after the fact. You monitor what you expect; you observe what you didn't.
The general-purpose stack (Grafana + InfluxDB/Timescale) is excellent and flexible, but has little native hardware context — spatial layout, edge buffering, and clock correction are mostly yours to build. Hardware-native platforms build those in. Device-management tools (Memfault, Balena) solve firmware and provisioning, a different problem.
Yes, for the charting — it's a great general-purpose tool. Its limit for hardware is context: it shows twelve temperature series as twelve lines, not as positions on a board, and it leaves connectivity and clock handling to you.
Point a device at Plexus in one line of Python and watch it land, in context, on a hardware-native dashboard.