Middleware that reads a haematology analyser
Middleware for a Mindray BC-series haematology analyser, turning a printed slip and twenty retyped numbers into a result that arrives by itself.
- Client
- A pathology laboratory
- Sector
- Diagnostics
- Shipped
- 2025
- Practice
- Business process automation
Middleware that sits between a haematology analyser and laboratory software, listens for the analyser's output over its serial or network interface, parses it, and files the results against the right sample. It removes the step where a technician reads twenty numbers off a printed slip and types them into a report, which is both the slowest part of the workflow and the one that produces transcription errors.
The problem
A three-part differential CBC carries around twenty parameters. At eighty patients a day that is roughly sixteen hundred keystrokes of pure transcription, and every one of them is a chance to type a 7 as a 1. The analyser already knew the answer; the information was being retyped because nothing was listening.
What we built
- 01
Speak the analyser's own dialect, ASTM E1394 over serial, bridged to the network where the machine has no Ethernet port.
- 02
Parse the record structure rather than scrape the print stream, so results map to parameters reliably.
- 03
Match each result set to the sample it belongs to, so a report cannot be filed against the wrong patient.
- 04
Buffer locally when the destination is unreachable, so a network blip does not lose a run.
- 05
Keep the middleware a separate process, so an analyser problem never takes the laboratory software down with it.
What it does now
- Results reach the report without being retyped.
- Transcription as a source of error is removed from the CBC workflow.
- An older serial-only analyser participates in a networked system.
What people ask about this work.
Can an old serial-only analyser be connected to cloud lab software?
Yes. A serial-to-network adapter puts the analyser's ASTM output on the network, and middleware listens, parses and forwards it. The machine does not need replacing; it needs something listening to what it already says.
What is the difference between unidirectional and bidirectional analyser integration?
Unidirectional means the analyser sends results to the software while the technician still keys the sample ID and test list into the machine. Bidirectional means the software also sends the work order, so a barcode scan tells the machine what to run and results come back attached to the right sample. Bidirectional removes the last manual step and the last source of sample mix-ups.
Related projects.
- Messaging reliability
A WhatsApp delivery service that survives disconnection
An Express service wrapping whatsapp-web.js with a persistent on-disk queue, so messages sent while WhatsApp is disconnected are delivered on reconnect.
Read it - HL7 integration
An HL7 bridge and report builder for a diagnostics chain
A bridge carrying HL7 messages from laboratory instruments into a cloud platform, with a drag-and-drop report builder and generative AI assistance.
Read it
