Before OpCore Simplify can build your EFI, it needs a complete picture of your system’s hardware. This is captured in aDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/lzhoang2801/OpCore-Simplify/llms.txt
Use this file to discover all available pages before exploring further.
Report.json file — a structured JSON document that describes your motherboard, CPU, GPU, network adapters, storage controllers, and more — accompanied by an ACPI dump directory containing your system’s raw ACPI tables. Together these two artifacts give the tool everything it needs to check compatibility, select kexts, apply ACPI patches, and generate a working config.plist.
What Is the Hardware Report?
The hardware report is a pair of outputs produced by Hardware Sniffer, a companion utility written for OpCore Simplify:Report.json— a JSON file that encodes every relevant device on your system, grouped by category (Motherboard, BIOS, CPU, GPU, Network, Storage Controllers, etc.).ACPI/directory — a dump of your firmware’s ACPI tables (DSDT and SSDTs) that OpCore Simplify uses when generating ACPI patches.
Two Ways to Generate the Report
Option A — Windows Built-In Export (Recommended)
On Windows, OpCore Simplify can download and run Hardware Sniffer for you automatically.
- Launch OpCore Simplify and select Option 1 — Select Hardware Report from the main menu.
- At the report prompt, type
Eand press Enter. - The tool downloads the latest
Hardware-Sniffer-CLI.exefrom GitHub (or reuses a cached copy if already up to date), then runs it with the-eflag. - The report is saved to the
SysReport/folder inside the OpCore Simplify directory. - Validation runs automatically; if successful, the workflow proceeds to the Compatibility Checker.
Always make sure you are using the latest version of Hardware Sniffer before generating a new report. The tool self-updates on each export, so typing
E is sufficient.Option B — Manual Generation (All Platforms)
If you are not on Windows, or if you prefer to generate the report on the target machine and transfer it separately, you can run Hardware Sniffer manually.
- Download Hardware Sniffer from the lzhoang2801/Hardware-Sniffer releases page.
- Run it on the machine you want to make a Hackintosh. It will produce a
Report.jsonand anACPI/folder. - Copy both to any location accessible from the machine running OpCore Simplify.
- Launch OpCore Simplify, select Option 1 — Select Hardware Report, and drag-and-drop the
Report.jsonpath into the terminal prompt, then press Enter. - OpCore Simplify will locate the
ACPI/folder automatically if it sits next toReport.jsonin the same directory.
Report Validation
Every time a report path is entered manually, OpCore Simplify runs it throughReportValidator before accepting it. The validator checks:
- File existence — the path must point to a real file.
- Valid JSON — the file must parse without errors.
- Schema compliance — required top-level sections must be present and each field must match its expected type and pattern.
- Field patterns — values are checked against regular expressions for correctness (e.g. Device IDs must match
XXXXorXXXX-XXXXhex format, platform must beDesktoporLaptop, firmware type must beUEFIorBIOS).
Report.json Structure
The table below maps each top-level key inReport.json to its purpose and whether it is required by the validator.
| Key | Required | Description |
|---|---|---|
Motherboard | ✅ | Board name, chipset, and platform (Desktop / Laptop) |
BIOS | ✅ | Firmware type, Secure Boot state, version, and release date |
CPU | ✅ | Manufacturer, processor name, codename, core/thread count, SIMD feature flags |
GPU | ✅ | Per-GPU manufacturer, codename, Device ID, device type, PCI/ACPI path, Resizable BAR state |
Monitor | ❌ | Connected displays with connector type and resolution |
Network | ✅ | Ethernet and wireless adapters with bus type and Device ID |
Sound | ❌ | Audio codecs and controllers with audio endpoint names |
USB Controllers | ✅ | USB host controllers with PCI/ACPI path |
Input | ✅ | Keyboards, mice, and trackpads |
Storage Controllers | ✅ | NVMe/SATA/AHCI controllers with Device ID and attached drives |
Biometric | ❌ | Fingerprint readers or other biometric sensors |
Bluetooth | ❌ | Bluetooth adapters with bus type and Device ID |
SD Controller | ❌ | SD card readers with Device ID |
System Devices | ❌ | Miscellaneous ACPI and PCI system devices |
Example Skeleton
Common Errors
| Error | Likely Cause | Fix |
|---|---|---|
Missing required key 'GPU' | Report generated without GPU information | Re-export using option E while a display is connected |
Value 'VEN_8086&DEV_1234' does not match pattern | Malformed Device ID in JSON | Re-export; do not manually edit Device IDs |
Missing required key 'Firmware Type' | Outdated Hardware Sniffer version | Update Hardware Sniffer and re-export |
File does not exist | Wrong path dragged in | Re-drag the correct Report.json file |
Hardware Sniffer Limitations
Hardware Sniffer has two known limitations when running inside Windows PE environments (such as a WinPE-based USB installer):
- Resizable BAR — GPU Resizable BAR status is not collected; it defaults to
Disabledin the report. - Monitor connections — connected display information (connector type, resolution) is not available in PE environments.