This guide was written by someone learning EPICS. It reads confidently because prose that hedges every sentence is unreadable — but confidence is not accuracy, and you are entitled to know which parts are solid and which are a learner’s best understanding.
This page is the honest version of that. It also exists to make review tractable: “please check these specific claims” is a request an expert can act on in twenty minutes, whereas “please review 79 pages” is a request nobody accepts.
Where this guide and the official EPICS documentation disagree, the official documentation is right and this guide is out of date. Same for any project’s own README. Please tell us when you find such a case — that’s the most useful contribution available.
| Category | Confidence | Why |
|---|---|---|
| Core concepts — PVs, records, links, scanning, alarm severity | High | Stable for decades, and cross-checked against the Application Developer’s Guide |
| What each tool is for | High | Taken from each project’s own documentation |
| Links and where things live | High | Every external URL was verified, and a monthly CI job re-checks them |
| Command syntax | High | Standard tooling, stable across versions |
| Architectural reasoning — why gateways, why hierarchy, why deadbands | Medium-high | Widely-held practice, but the emphasis is a judgement call |
| Version-specific claims — minimum JDKs, Base behaviour, supported Tomcat | Low | These move, and this guide will lag. Always check upstream. |
| Operational advice — what to monitor, how to deploy | Medium | Genuine practice varies enormously between facilities |
| Numbers in the Helios chapters | Not applicable | Deliberately invented, plausible, and not design values |
| Anything safety-related | Out of scope by policy | This guide states where the boundary is and refuses to go past it. See Machine Protection. |
If you know EPICS well and have twenty minutes, these are the highest-value things to check. Each is a claim I’d want a second opinion on, with the page it appears on.
| Page | Claim to check |
|---|---|
| Scaling & Availability | That there is no general IOC failover, that redundant-IOC support is not the modern mainstream answer, and that fast-restart-plus-autosave is what facilities actually rely on |
| Protocols | The description of modern Base auto-sizing array buffers, and whether EPICS_CA_MAX_ARRAY_BYTES still needs setting in practice |
| Protocols | The current state of authenticated / TLS-protected PVA — deliberately vague here, and it may now be more definite |
| Timing Systems | The TSE semantics table, especially -2 / TSEL behaviour |
| Timing Systems | Whether the beam-synchronous acquisition description is fair, and whether a community-generic solution now exists |
| Process Database | The lock-set explanation, and whether inserting a CA link is still the standard remedy |
| Deployment & Operations | Whether epics-containers and e3 are characterised fairly, and whether the “choosing an approach” table matches real practice |
| Save & Restore | The backing store for the current Phoebus save-and-restore release — this changed across versions and the page hedges |
| Alarms | The claim that the alarm server holds no durable state and rebuilds from Kafka in seconds |
| Access Security | The CALC clause description and the asInit runtime-reload claim |
| Client Libraries | Whether the “which Python library?” recommendation is the consensus one |
| Any page | Every version number. Base 7.0.x, JDK minimums, Tomcat versions, Elasticsearch requirements. |
Not errors — choices. Reasonable people disagree, and you should know these are positions rather than facts:
calc record over a Python script. A genuine bias, stated as such.!!! warning.The single most valuable thing: if you know EPICS well, read one page in your area of expertise and file what’s wrong. One page, one area. That’s a much smaller ask than it sounds and it’s how a guide like this becomes trustworthy.
Corrections don’t need to be polite about it. A guide that misleads beginners is worse than no guide, and “this whole section is wrong because…” is exactly the issue worth opening.
A reasonable way to use this guide:
That’s not false modesty. It’s the correct way to use any secondary source.