# os-xgs-npu: reconstructing Sophos XGS coprocessor interfaces

> os-xgs-npu reconstructs interfaces to Sophos XGS appliance coprocessors through FreeBSD kernel modules and an OPNsense plugin. The work documents undocumented registers, PCIe device families and measured coprocessor behavior to expose front ports and offload firewall flows and IPsec associations.

- Type: Case study
- Targets: Protocol
- Category: Independent reconstruction cases
- Relationship: Independent reconstruction project
- Sources reviewed: 2026-11-06
- Added to the catalog: 2026-11-06
- Original resource: <https://github.com/AbdelmonemAwad/os-xgs-npu>
- Primary source: <https://github.com/AbdelmonemAwad/os-xgs-npu/blob/d4695512cb4491859a3044a34fc25b9a3ed1e8eb/README.md>
- Catalog page: <https://awesomerea.org/resources/os-xgs-npu-case/>
- Record JSON: <https://awesomerea.org/resources/os-xgs-npu-case/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/os-xgs-npu-case/index.md)

## Requirements & limits

- **Prerequisites:** Sophos XGS hardware and a matching OPNsense or FreeBSD environment; kernel modules are built on the appliance.
- **Limits:** The author says the project is still being completed; two coprocessor families currently respond.
- **License:** BSD-2-Clause license.

## Primary sources

1. <https://github.com/AbdelmonemAwad/os-xgs-npu/blob/d4695512cb4491859a3044a34fc25b9a3ed1e8eb/README.md>
2. <https://github.com/AbdelmonemAwad/os-xgs-npu/blob/d4695512cb4491859a3044a34fc25b9a3ed1e8eb/docs/families/README.md>

## More in Protocols

- [LibreMP: an Epson EasyMP screen caster from packet-capture research](https://awesomerea.org/resources/libremp-easymp-case/index.md) · Case study
- [Sony CDX-A250: reconstructing the LCD panel interface](https://awesomerea.org/resources/lc75826-sony-cdx-a250-case/index.md) · Case study
- [MacroPad: reconstructing a USB macropad configuration protocol](https://awesomerea.org/resources/macropad-usb-protocol-case/index.md) · Case study
- [Monix: reconstructing Audient iD USB mixer control on Linux](https://awesomerea.org/resources/monix-audient-id-case/index.md) · Case study
- [Scooter Link: a Xiaomi scooter client built from BLE protocol research](https://awesomerea.org/resources/scooter-link-case/index.md) · Case study
- [Sound Blaster AE-9: reconstructing Linux control from Windows driver analysis](https://awesomerea.org/resources/sb-ae9-case/index.md) · Case study

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
