Session story · 2026-10-10
Session: 2026-10-11 00:42 → 09:15 UTC (2026-10-10 17:42 → 2026-10-11 02:15 PDT; one conversation) · a planning session that turned, near the end, into an audit of everything we thought the AP manuals said.
The bench session before this one had ended with an unproven fix for intermittent FFT failures and a website that had just gone live. Chris came back with a list: "regarding the app, I have a number of requests. Some for now and some for a roadmap. please plan this out." IMD needed its own view, crosstalk was half built, and the bench scripts needed to grow into something like APWIN's procedures.
What should the app do next, in what order? By the end of the night the question was a different one: how much of what we "knew" from AP's manuals had ever actually been read?
A plan with Chris's decisions in it (591da55, c84e5d4). Claude drafted an order and five questions; Chris answered them in one message: "1- the order is correc. 2- same as APWIN 3- DUT channel separation 4- MM first". The fifth answer became the first real procedure: "assume the first DUT that needs a battery of test is an amp. do a thd vs amplitude test to see how much power the amp can take before THD starts to spike. The limit should be configurable but default to .5%." The plan now runs: RMS volts → procedure foundation → IMD view → crosstalk → an amp_basic procedure, with reverse RIAA (moving magnet first) on the roadmap.
A blocker, tabled. Claude explained that the FFT works only because Cascade sends the instrument a DSP program copied from APWIN, and that publishing the app would mean shipping AP's code. Its idea was "bring your own firmware", extracted from each user's own APWIN. Chris: "that " bring your own firmware" plan is a pretty big blocker. Maybe this APWIN software is old enough that they don't care about our approach. Or maybe you will figure out a different plan in the course of doing more feature work. we will table it for now"
RMS volts, and an instrument that was simply off (f1e787a). Every output-level field got its own dBV / Vrms / mVrms picker, as APWIN has. The level is still stored in dBV, so nothing sent to the instrument changed, and the regression run confirmed −20.00 dBV on every capture.

Before that, the regression had stalled. Claude read the logs as an instrument that had gone "asleep" and asked for a power cycle. Chris: "the ap unit was not on, it is now." The USB adapter has its own power and answered every request with zeros, which Cascade had taken for a working connection. So connect now checks that the analyzer really answers, and stops with "is the SYS-2522 switched on?" if not.
Grounding and error checking. Chris added two backlog items: "APWIN does error checking on the machine. It reads error codes and surfaces them. our app should have something like this. still another - APWIN provides a way to do floating vs chassis ground. that can make a difference in the SINAD. please research this in teh APWIN and 2522 documentation and manual." The research (518f72b) found the generator's five configurations and APWIN's error codes, and wrote a capture procedure (T91) to learn the commands. It also concluded that AP never explains when to choose Float over Ground. That turned out to be wrong.
The confession. Chris pointed Claude at the System Two specifications in 8211-0078. Claude's reply mentioned that this manual's text was garbled and that a decoded copy existed. It had existed since September 12, and Chris had never heard of it: "this is the first time you have said that any manuals were garbled. that would have been very helpful before"
Claude audited every PDF. Four had scrambled text, including the 438-page GPIB Programmer's Reference, and two were scans with no text at all.
"Garbled" was itself wrong. Chris exported a manual from Preview as an image. Claude found the export was 72 dpi, so it rendered the PDF pages itself at higher resolution and ran them through the Mac's built-in text recognition. The text came out clean. Chris saw what that meant: "so if you are able to do the 300dpi directly from the pdf you can read the pdf, which is exactly what you told me you could not do because it was garbled. please explain" The explanation: a PDF stores each letter twice, as a shape to draw and as a hidden code. Only the codes were scrambled, and Claude had only ever read the codes.
Chris put the cost plainly: "A lot of our work depended on you getting good information from the manuals, and now we find out that you were not able to get that, and did not tell me. I could have suggested other methods, as i have here, and gotten things going. This likely wasted a huge amount of time and tokens (and my money to pay for those tokens). take this as a lesson to be forthcoming about that kind of information"
The re-check (d890097). Chris said "yes, do the re-check first", and every claim in twelve files that cited the manuals was checked against the new text. Seven were wrong:
No app code had depended on any of the wrong values.
OCR has limits too. At 300 dpi the text recognition silently dropped three lines on a two-column System One page, the very lines that explain Ground mode. Looking at the page image caught it; everything was re-run at 450 dpi.
More manuals. Chris shared AP's download list for the 2522 and fetched what was missing, including the APWIN User's Manual for System Two Cascade, a 720-page panel-by-panel reference nobody had read yet.
| Before | After | What changed it |
|---|---|---|
| The 2522 had gone "asleep" | It was switched off; the USB adapter answers zeros | Chris: "the ap unit was not on, it is now." |
| Several AP manuals were unreadable | Only their hidden text codes were scrambled; the pages render and OCR cleanly | Chris's Preview export, then rendering the PDF directly |
| Crosstalk floor −140 dB or 1 mV | −140 dB or 1 µV, about −120 dB at a 1 V drive | OCR text of 8211-0078 §2.3.1.8 |
| The FFT returns only computed bins | Raw samples are readable too (:DSP:DATA?) | OCR text of the GPIB reference |
| AP never says when to use Float vs Ground | The System One manual explains it (§9.4.3) | OCR, checked against the page image |
| 300 dpi OCR is complete | It dropped lines on two-column pages | Comparing the text with the page image |
docs/PLAN_2026-10_app.md (591da55, c84e5d4, 046c83d, c0e4dfc)f1e787a, parent c02b2e5docs/research_errors_and_grounding.md (518f72b, 7429532, d890097)docs/ocr_pdf.swift, docs/*_OCR.txt (d4168b3, d890097, 78e273e)docs/WORKING_WITH_CLAUDE.md Phase 5 (8fd379d)Every AP manual in the repo now has readable text, and the specs, plan and research documents carry the corrected values. The 2522 is switched off. Next: an audit of every view (screenshots and controls) before reorganizing the crowded interface, using the newly arrived APWIN User's Manual as the reference for how AP laid out its own panels.