diff --git a/README.md b/README.md
index bcebeb6..5256b40 100644
--- a/README.md
+++ b/README.md
@@ -180,6 +180,11 @@ The detail lives in dedicated documents:
repo, VLAN zoning, Telegraf/MQTT acquisition source by source, QC
instrument integration, the factory application, alerting, backup,
security, the data clauses for every RFQ, build order and rough cost
+- [Inline optical QC](docs/equipment/inline-optical-qc.md): devices for
+ the 100% record inspection station (line-scan cameras with dark-field
+ and transmitted light, label camera, laser warp sensors, centring
+ turntable), CD-scanner and PRP precedents, smart-camera versus open
+ NixOS software, specials, prices and a two-station cost estimate
- [Quality automation](docs/quality-automation.md): stamper metrology
(Keyence-class confocal, profiler, XRF), layered pressed-record QC (100%
optical inspection, per-cycle press telemetry, sampled automated audio
@@ -339,6 +344,7 @@ docs/
│ │ optical-disc literature (vendor PDFs)
│ ├── duplex-cell-layout-sketch.png Duplex cell arrangement (sketch, not to scale)
│ ├── galvanics.md Electroforming and stamper prep equipment plan
+│ ├── inline-optical-qc.md Devices for the record inspection station
│ └── pressing-line.md Press fleet strategy and equipment plan
├── finance/ Project cost overviews, revenue model,
│ construction RFQ, PEA electricity tariff
diff --git a/docs/digital-factory.md b/docs/digital-factory.md
index 06328fc..cad19fe 100644
--- a/docs/digital-factory.md
+++ b/docs/digital-factory.md
@@ -563,7 +563,7 @@ same watcher pattern as the metrology exports below. See
| Instrument | How results reach the database | Key | Open integration item |
|---|---|---|---|
-| Inline optical inspection at the press unloader (Keyence or Cognex class, custom integration) | vision controller sends one result string per record over TCP to a receiver on `vinyl-edge-press`; images pushed by SFTP to the collector, synced to the core's image dataset | press ID + cycle counter, passed from the PLC to the vision trigger | the cycle counter hand-off between PLC and vision controller is an integrator deliverable and an acceptance test |
+| Inline optical inspection at the press unloader (PC-based GenICam station or Keyence/Cognex class, custom integration; devices in [inline optical QC](equipment/inline-optical-qc.md)) | vision controller sends one result string per record over TCP to a receiver on `vinyl-edge-press`; images pushed by SFTP to the collector, synced to the core's image dataset | press ID + cycle counter, passed from the PLC to the vision trigger | the cycle counter hand-off between PLC and vision controller is an integrator deliverable and an acceptance test |
| Stamper metrology (Keyence VK-X, VR-6000, XRF gauge, profilometer) | vendor Windows PCs export CSV and raw 3D to an SMB share on `vinyl-st-metrology`; a watcher parses and posts | back-side Data Matrix serial, scanned at the bench before measurement | export format per instrument confirmed with Keyence Thailand |
| PVC material lab (moisture analyzer, spectrophotometer, balance, later torque rheometer, DSC, FTIR) | instruments with RS232/USB export are read at `vinyl-st-lab`; the rest are typed in with the printout photographed; CoA PDF attached | compound lot ID (printed label scanned at intake) | which benchtop models have serial export |
| Audio QC station | capture service on `vinyl-st-audioqc` records the needle-drop (PipeWire, FLAC to the core's capture dataset); analysis pipeline computes spectral-envelope match to the source master, click/pop count, noise floor, channel balance; scores posted | record key (stamper + press + cycle + side), typed or picked from the run list | first-of-kind pipeline, developed in Expand phase against launch-phase recordings |
diff --git a/docs/equipment/inline-optical-qc.md b/docs/equipment/inline-optical-qc.md
new file mode 100644
index 0000000..92b00fd
--- /dev/null
+++ b/docs/equipment/inline-optical-qc.md
@@ -0,0 +1,236 @@
+# Inline optical QC: devices for the record inspection station
+
+Research note, October 2026. This note works out which devices can do
+layer 1 of [quality automation](../quality-automation.md#layer-1-100-optical-inspection-inline),
+the optical check of every pressed record. Prices come from vendor shops,
+vendor pages or third-party listings, and the source is named each time.
+Anything without a source is marked as an estimate. Nothing here is a
+quote.
+
+**Short answer.** Nobody sells a vinyl inspection machine. The template
+is the CD and DVD in-line scanner: spin the disc once under a line-scan
+camera that looks along the radius, with angled lights, and measure the
+height with lasers during the same turn. That can be built from standard
+parts:
+
+- a 4k line-scan camera per side, with dark-field and bright-field lights;
+- a colour area camera per side for the label;
+- two laser distance sensors for warp;
+- a servo turntable with a centring chuck;
+- an edge PC running open-source vision software on NixOS.
+
+The hardware costs about USD 12k to 30k per station (estimate). The launch
+plant needs two stations, one for the Duplex cell and one for the Classic.
+
+## What the station has to catch
+
+| Defect | How it shows optically | Device | Limit or source |
+|---|---|---|---|
+| Non-fill (PVC did not fill the stamper) | dull, matte patches in the groove band, most often at the outer edge of 180 g records ([AnalogPlanet](https://analogplanet.com/content/what-non-fill-looks)) | line-scan camera, low-angle (dark-field) light | any patch; correlates with audible defects |
+| Stitching and flow lines | lines or streaks in the groove sheen | same | any visible line |
+| Bubbles, inclusions, black specks | dark or bright points; in clear and translucent colours seen best in transmitted light | line-scan with a back light | size threshold set in trials |
+| Debris, scratches, scuffs | bright points or lines in dark-field, dark in bright-field | both lights | size threshold set in trials |
+| Edge trim (burr, wrong diameter) | the record edge in the line-scan image | line-scan | trim drawing |
+| Label wrong, on the wrong side, off-centre, wrinkled, bubbled, misprinted | colour image of the label against the approved artwork from the order | colour area camera, ring or dome light | artwork in ERPNext |
+| Off-centre hole (eccentricity) | the groove band edges trace a sine wave in the unwrapped image when the hole sits off the spiral centre | line-scan, fit of the lead-in and the finishing groove | 0.2 mm hole to groove spiral (IEC 98-1987, DIN 45547-1981, as [tabulated here](http://www7a.biglobe.ne.jp/~yosh/standards_table.htm)); Stamper Discs aims below 0.1 mm on the record and 0.05 mm on the stamper ([Stamper Discs, 2025](https://www.stamperdiscs.com/the-physical-attributes-of-a-stamper-eccentricity/)) |
+| Centre hole size | hole diameter in a backlit image, or a go/no-go mandrel | area camera (optional) | 7.24 mm, -0/+0.09 mm (same table) |
+| Warp: edge run-out and dish | height change over one turn | two laser distance sensors, or one laser line profiler | Mobineko rejects above 0.5 mm (black), 1.0 mm (colour) or 1.5 mm (special effects) edge run-out per turn, or above 2 mm (black) or 3 mm (colour) between edge and centre ([Mobineko](https://mobineko.com/vinyl-quality-standards)) |
+| Colour off the approved test pressing | colour values against the first approved records of the job | calibrated colour camera | tolerance set per job |
+| Record temperature at unload (process signal, optional) | temperature map | thermal camera | trend against warp |
+
+No camera can see a wrong master cut into good-looking grooves, or clicks
+from defects smaller than its resolution. Those stay with the sampled
+audio comparison (layer 3). Optical and audio checks complement each other.
+
+## Who does this already
+
+- **No vinyl product.** A search in October 2026 found no inline
+ inspection machine for vinyl records on sale. The presses do not offer
+ one either. The Newbilt Classic's feature list stops at automatic
+ unloading, the spindle stack, cycle recording and OPC UA
+ ([Newbilt Classic](https://vinyl-pressing-plants.com/blog/newbilt-classic-12-inch-vinyl-record-press)).
+- **CD and DVD lines had it, and that is the template.** Dr. Schenk's ISM
+ in-line scanner ([brochure, 2007](https://www.drschenk.com/fileadmin/user_files/brochures/13-other_applications/optical_media_inspection/ism_inline_scanner.pdf)):
+ - a 2048-pixel, 12-bit line-scan camera with LED lights;
+ - one turn in 600 ms or less, 20 µm radial resolution;
+ - radial and tangential disc deformation measured at 1,000 points;
+ - a defect classifier, on embedded Linux.
+
+ Basler began in this market in 1990 for PolyGram in Hanover
+ ([IMVE](https://imveurope.com/feature/caught-camera)) and sold the
+ optical-media business to Xiris in 2009
+ ([Vision Systems Design](https://vision-systems.com/cameras-accessories/article/16747762/basler-sells-optical-media-business-continues-focus-on-camera-markets)).
+ A vinyl record is a bigger, black, grooved disc, but the method carries
+ over.
+- **Precision Record Pressing (Ontario), 2023.** Their in-house AQA system
+ takes the first and second record of each order. Surface-scanning
+ cameras built into the lids of modified turntables scan both records,
+ then both are played in sync and compared with the master
+ ([PRP](https://www.precisionpressing.com/blog/news-prp-announces-new-automated-quality-assurance-system)).
+ It works on samples and is not for sale, but it is the closest vinyl
+ precedent.
+- **Czech Technical University, Prague.** A bachelor thesis built an
+ automated optical defect check for LPs in LabVIEW and ran lighting
+ experiments ([CTU thesis](https://dspace.cvut.cz/entities/publication/11505711-6ce1-4b87-904d-a1421d91cf9f)).
+ A 2018 paper from the same faculty identified defects with a wavelet
+ method and classified them with KNN, and got 57 % of records right
+ ([CTU, 2018](https://starfos.tacr.cz/en/vysledky-vyzkumu/RIV%2F68407700%3A21230%2F18%3A00321872)).
+- **Plants check by hand today.** Mobineko measures flatness with a
+ micrometer gauge and a laser level on a modified turntable
+ ([Mobineko](https://mobineko.com/vinyl-quality-standards)). Third Man
+ checks flatness and label orientation by eye as records leave the press
+ ([WIRED](https://www.wired.com/video/watch/how-vinyl-records-are-made-with-third-man-records)).
+
+## The station
+
+**How it works.** The record goes onto a centring chuck: a mandrel
+expands in the 7.24 mm hole and a ring supports the label area. A servo
+turntable with an encoder turns it once in about 1 s. Both sides are
+imaged during that one turn, one camera set above and one below. The
+lights are strobed on alternate lines, so the same turn gives a
+dark-field, a bright-field and a transmitted-light image. Stacking line
+images from one turn into one picture is standard multi-light line-scan
+practice (estimate for this application; to prove in trials). The PC
+unwraps each image into a strip of radius against angle, which makes
+rings straight lines and an off-centre hole a sine wave.
+
+| Function | Device, per side unless noted | Examples | Price signal |
+|---|---|---|---|
+| Surface | 4k monochrome line-scan camera along the radius, with a lens, plus a dark-field and a bright-field line light | Basler racer 2 r2L4096 (GigE, 14 to 29 kHz); Hikrobot MV-CL042-91GM (GigE, 4096 × 7 µm pixels, 28 kHz, 80 kHz in high-bandwidth mode, GenICam, Linux; [datasheet](https://www.innosmart.bg/en/catalog/product/by-id/MV-CL042-91GM)); Cognex In-Sight 3800 Line Scan (smart camera, 4K at 84 kHz, encoder inputs, AI tools on board; [specs](https://www.cognex.com/products/machine-vision/2d-machine-vision-systems/in-sight-3800-line-scan/specifications)) | Basler 4k GigE line-scan from USD 857 to 1,088 in Basler's web shop ([price listing](https://cards.keenable.ai/w/01a14ab8-9648-7191-8286-bc5956857428)); lens USD 300 to 800 and line lights USD 500 to 1,500 each (estimates) |
+| Transmitted light | a diffuse line light under the record for the top camera | any line-light maker | USD 500 to 1,500 (estimate) |
+| Label | 5 to 8 MP colour area camera with a ring or dome light | Basler ace 2 a2A2840-14gcPRO | USD 1,119 (Basler web shop, same listing) |
+| Warp, simple | two laser distance sensors under the record, at the outer edge and at mid radius | Micro-Epsilon optoNCDT 1420 | from EUR 470 list ([Micro-Epsilon](https://www.micro-epsilon.com/insights/optoncdt-1220-1320-1420/)); ILD1420-25 about USD 1,600 at a reseller ([Radwell](https://www.radwell.ca/Buy/MICRO%20EPSILON/MICRO%20EPSILON/ILD1420-25)) |
+| Warp and thickness, full map (alternative) | laser line profiler across the radius, giving a full height map | Keyence LJ-X8000 (warpage and flatness tools, compensates eccentricity; [Keyence](https://keyence.com/products/measure/laser-2d/lj-x8000)); LMI Gocator 2500 (up to 10 kHz, blue laser; [LMI](https://lmi3d.com/2500-high-speed-3d-laser-profile-sensors/)); Micro-Epsilon scanCONTROL | no list price found; USD 8k to 20k (estimate) |
+| Thermal (optional) | infrared camera over the unload position | Optris Xi 400 (80 Hz, line-scan mode) | from EUR 1,950 ([Optris](https://optris.com/products/thermal-cameras/compact-line/xi-400/)); USD 2,995 at a US reseller ([moviTHERM](https://movitherm.com/product/optris-xi-400-infrared-camera/)) |
+| Compute | edge PC with a GPU, NixOS | any industrial PC | USD 2k to 4k (estimate) |
+| Mechanics | servo turntable, centring chuck, encoder, frame, light shield, reject gate, stack light | local machine builder | USD 4k to 10k (estimate) |
+
+**Resolution.** These are worked figures for a 160 mm field and a 4,096-pixel line:
+
+- **Radial:** about 39 µm per pixel.
+- **Along the groove, at 14 kHz and one turn per second:** about 66 µm per line at the outer edge (146 mm radius) and 22 µm at the label edge. At 28 kHz these halve.
+- **What that sees:** millimetre-sized non-fill, flow lines and specks of about 0.1 mm and up. It does not resolve single grooves.
+- **How defects show:** the camera sees how the groove field scatters light, so a defect has to change that scatter. That is why lighting trials come first, as in the CTU thesis.
+
+**Eccentricity.** At the 0.1 mm target, the sine wave in the unwrapped
+image is about 2.6 pixels high. A sub-pixel fit along the lead-in edge
+and the finishing groove (106.4 ± 0.8 mm diameter in IEC 98) over about
+14,000 lines should repeat within 10 to 20 µm. That figure is an estimate
+and has to be shown in trials. The chuck has to centre on the hole
+exactly, because the station measures the groove spiral against the
+chuck.
+
+**Throughput.**
+
+| | Duplex cell | Classic |
+|---|---|---|
+| Output | a record every 15 to 20 s from its two presses (at 30 to 40 s per press; Newbilt quotes about 30 s, and the [fleet calculator](../fleet-calculator.html) takes 3 records a minute as 40 s) | a 180 g record every 28 s (Newbilt) |
+| Station time per record | about 1 s of scan plus 2 to 3 s to load and unload (estimate) | same |
+
+That leaves slack at both stations. One central station could in
+principle take the launch plant's 5 to 6 records a minute. A station at
+each cell needs no conveyor and catches a non-fill streak within a cycle
+or two. The calculator's iso view draws a conveyor to one optical
+station; that drawing is schematic.
+
+## Where it sits
+
+- **Duplex cell.** The station sits after the edge trimmer, in front of
+ the operator, before the spindle. The flow per record:
+ 1. The operator puts the record on the chuck.
+ 2. A presence sensor starts the scan.
+ 3. A stack light shows green or red.
+ 4. A reject goes into a bin, and a small screen shows the reason.
+
+ The operator still sees every record, so the visual check stays as it
+ is today.
+- **Classic.** The Classic unloads by itself onto the spindle stack. Ask
+ Newbilt whether the unload handling can set the record on an inspection
+ chuck first, or hand it over to a small pick-and-place unit by I/O. If
+ neither works, use a fixed area camera over the unload position. That
+ covers surface and label, and leaves warp and eccentricity to samples.
+- **Warm records.** Records leave the press warm and settle in the stack;
+ 24 hours of cooling is the usual practice
+ ([Stamper Discs](https://stamperdiscs.com/horns-and-quality-issues-in-vinyl-record-pressing)).
+ The warp reading at the press is therefore an early warning. Release on
+ warp uses sampled cooled records, measured on a second station of the
+ same design in the QC lab.
+
+## Two software routes
+
+| | Smart camera or vendor controller | Open, PC-based |
+|---|---|---|
+| Examples | Cognex In-Sight 3800 with edge learning (about USD 8,500 a unit in a [third-party listing](https://robotomated.com/explore/manufacturing/cognex-insight-3800)); Keyence CV-X or XG-X with LumiTrax, which separates shape from surface pattern on shiny parts ([Keyence](https://www.keyence.com/landing/vision/lumitrax-lighting.jsp)); CV-X controllers listed at about USD 5,400 to 5,500 on resale sites ([BigGo](https://biggo.com/s/cv-x%20keyence)); Keyence quotes only locally | GenICam cameras (Basler, Hikrobot, or Keyence's VJ series) with:
- Aravis for acquisition (LGPL-2.1, GigE Vision and USB3 Vision, packaged in nixpkgs as 0.8.35; [GitHub](https://github.com/AravisProject/aravis), [MyNixOS](https://mynixos.com/nixpkgs/package/aravis)), or Harvester (Apache-2.0, needs the camera maker's GenTL producer; [GitHub](https://github.com/genicam/harvesters));
- OpenCV;
- anomalib for learned defect detection (Apache-2.0, PatchCore and others; [PyPI](https://pypi.org/project/anomalib/)) |
+| For | fast set-up, vendor support, tested tools | we own the code and the data, no licence per unit, fits the NixOS stack and the service offer to other plants ([digital factory](../digital-factory.md)) |
+| Against | closed, Windows set-up tools; the polar unwrap, eccentricity fit and per-job learning still have to be built on top | we build and maintain it; the first station takes longer |
+
+Keyence's VJ series sits between the two. It sells Keyence GigE cameras
+and LumiTrax lights for PC-based software, with GenICam, OpenCV and
+HALCON listed as supported
+([Keyence VJ](https://keyence.com/ss/products/vision/vj)).
+
+Recommendation: take the open route for the station itself. Before that,
+ask Keyence Thailand for its free demo and test report on sample records
+with LumiTrax. It costs nothing, teaches us the lighting, and gives a
+benchmark for our own result.
+
+## Colour and special records
+
+Specials are planned at 60 % or more of output, and they are the hard
+part:
+
+- **Marbled and splatter:** the pattern is random, so a fixed golden image
+ cannot work. The model learns each job from its first approved records
+ and flags what differs. That is few-shot anomaly detection, for example
+ PatchCore in anomalib, with the operator confirming the first flags.
+- **Clear and translucent colours:** transmitted light shows bubbles and
+ specks well.
+- **Picture discs:** they need the label-style print comparison over the
+ whole face.
+- **Black:** the easiest.
+
+Expect more false rejects on specials in the first months (estimate). The
+reject rates in the [factory console](../factory-console.html) demo are
+simulated.
+
+## Cost
+
+| Item | Estimate |
+|---|---|
+| Hardware per station, from the table above | USD 12k to 30k |
+| First station: mechanics, lighting trials, software, training data | 2 to 4 person-months, USD 15k to 40k (our own team with a local machine builder) |
+| Launch plant: two stations, Duplex cell and Classic | about USD 40k to 100k (1.3M to 3.3M THB) |
+
+All three figures are estimates. They fit inside the existing metrology
+launch-tier line, USD 170k to 460k for XRF, inline vision and the audio
+station ([total investment](../finance/total-investment.md)). The plan
+prices therefore do not change. That line has no published split, so the
+vision share is not yet confirmed.
+
+## Where to buy in Thailand
+
+| Brand | Channel | Status |
+|---|---|---|
+| Keyence | Keyence (Thailand), direct sales | free demos and test reports, as Keyence offers in other markets ([Keyence](https://www.keyence.eu/landing/lpc/surface-defect-detection.jsp)); confirm locally |
+| Basler | LINX KK (Thailand), Basler's only official distributor in Thailand ([LINX](https://linx.co.th/en)) | |
+| Cognex | local distributor | still to name |
+| Hikrobot | local distributor or the Chinese route | still to name |
+| Micro-Epsilon, LMI, Optris | local distributor | still to name |
+
+## Next steps
+
+1. **Lighting trials.** Get a dozen records with known defects from a
+ partner plant: non-fill, stitching, bubbles, an off-centre one, and a
+ splatter colour. Test them with a borrowed line-scan camera and two
+ lights.
+2. **Keyence test.** Ask Keyence Thailand for a test report on the same
+ records.
+3. **Newbilt.** Ask about the Classic unload hand-off. Also ask for the
+ cycle counter over OPC UA, so every result carries the record key
+ (stamper, press, cycle, side; see [digital factory](../digital-factory.md)).
+4. **Warp sensors.** Choose between two point lasers and a line profiler
+ once the trials show whether a thickness map is worth the extra cost.
+5. **Acceptance test.** Write it before ordering. It should cover the
+ detection rate per defect class on the trial set, the false-reject
+ rate on good records (black and specials apart), and every result
+ matched to its record key.
diff --git a/docs/quality-automation.md b/docs/quality-automation.md
index d3051e4..cf4b2e6 100644
--- a/docs/quality-automation.md
+++ b/docs/quality-automation.md
@@ -134,10 +134,16 @@ print defects). Non-fill and stitching correlate with audible defects, so
optical inspection is a strong proxy for audio quality without playing the
record.
-No vinyl-specific vision product exists; this is a custom integration of
-general machine vision (Keyence or Cognex class) at the press unloader. CNX
-would be an early adopter, and it should be budgeted as an integration
-project.
+No vinyl-specific vision product exists (search of October 2026); this is
+a custom integration of general machine vision at the press unloader, on
+the pattern of the old CD and DVD in-line scanners: one turn under a
+radial line-scan camera with angled lights, plus laser distance sensors
+for warp. The closest vinyl precedent is Precision Record Pressing's
+in-house AQA (2023), which scans sampled records with cameras in the lid
+of modified turntables before playing them. CNX would be an early
+adopter, and it should be budgeted as an integration project. The device
+options, a station design, prices and a cost estimate are in
+[inline optical QC](equipment/inline-optical-qc.md).
### Layer 2: press telemetry, every cycle