Back
Rudex · 2024 – active

A Face-ID alcohol-tester gate — device, gateway, and central record in one system

For Rudex we developed a purpose-built device that verifies identity (Face-ID) and sobriety (breathalyzer) in a single pass before every shift. The system is architecturally split into two services — an edge gateway on a Raspberry Pi that communicates with the physical breathalyzer over a serial link and runs even without internet, plus a central dashboard application where HR and shift supervisors see who passed, who didn't, and what happened. All controlled, all connected.

The story

Software and hardware shouldn't be a hard boundary — the serial link to the device and the central record, all developed by us.

Worth noting

  • · Face-ID + breathalyzer — one gate, one pass
  • · Runs without internet — the shift doesn't stop because of a network outage
  • · Serial link to the breathalyzer, S3 photos, audit trail

The problem

Pre-shift alcohol checks at the industrial site were slow, done by people, and there was no systemic link to the worker's identity. Identity verification and the test itself were separate processes, so the record of who exactly was tested could be disputed. In manufacturing industries, where an intoxicated worker on the production line isn't just an HR problem. Plus two separate machines at the entrance mean two lines, double the long wait for a shift of 100+ people.

What we built

We developed the system as two interconnected services. The edge gateway runs on a Raspberry Pi with the device at the entrance and communicates with the physical breathalyzer over a serial link — the moment a worker approaches, the gateway runs Face-ID recognition, then sends a command to the breathalyzer, reads the result, and locally writes the event to its database. If the internet has gone down, the device still works: later it syncs all accumulated events with the central system as soon as the network is back. The central dashboard application has everything — HR sees attendance by shifts, shift supervisors have a scheduling calendar, and photos from Face-ID checks are kept in storage as evidence alongside every record. The system doesn't allow entry if either of the two checks fails, and every outcome leaves an audit trail.

Modules & surfaces

  • Edge gatewayA service on the Raspberry Pi inside the device itself. Runs Face-ID, communicates with the breathalyzer over a serial link, locally writes the event, and controls the outcome (entry permitted or not).
  • Breathalyzer integrationDirect serial communication (RS-232 / USB) with the physical device. Command, result reading, parsing — without human intervention.
  • Offline operation and syncThe device has its own PostgreSQL database and works even when the network goes down. It later syncs accumulated events with the central system as soon as the link returns.
  • Central dashboardA web app where HR and shift supervisors see attendance, failed checks, and history by worker or shift.
  • Shift calendarVisual shift scheduling and a real-time attendance overview.
  • Photos as evidenceThe image from the Face-ID check is kept in S3 storage and attached to every record — unimpeachable evidence in case of a dispute.
  • Audit trailEvery event (who, when, breathalyzer result, photo) stays written and unchangeable — which, in a regulated industry, is not only desirable but necessary.

How we approached it

The hardware side requires different discipline from a web app — the device MUST work every shift, every day, even when the network goes down. So we designed the gateway as offline-first from the start, with its own database and later sync. Authentication speed was also critical: a 90-second entry per worker means a 30-minute queue at the gate when there are 100+ people. Every decision — the Face-ID model, the serial communication, even the choice of the Pi as the platform — had a clear reason tied to the actual conditions on site.

Outcome

A pre-shift check that used to take minutes now takes seconds. Shifts begin only if both checks pass, with photographic evidence on every record. The network can fail — the device keeps working and syncs later. Rudex now has an unimpeachable audit trail for every shift, connected to the HR system and the company's full operational system.