A good place to start when troubleshooting Frigate with MemryX is to verify that the host runtime, Docker permissions, and device mappings are configured correctly.
Common Issues
If you encounter this error:
raise RuntimeError("Init DFP Runner failed!")
This usually means mxa_manager is not mounted or initialized correctly, so the Docker container cannot communicate with the host.
Verify Docker Configuration
Make sure your Docker Compose configuration includes:
privileged: true
volumes:
- /run/mxa_manager:/run/mxa_manager
Check MXA Manager Service Status
Confirm that the MXA Manager service is active on the host machine:
sudo systemctl status mxa-manager
If the service looks inactive or is reporting errors, you can restart it with:
sudo systemctl restart mxa-manager
Verify the Host SDK Installation
Make sure MemryX SDK 2.1 is installed on the host machine.
First, verify that the driver and firmware match SDK 2.1:
cat /sys/memx0/verinfo
Compare the reported firmware hash with the table below:
| SDK | Firmware hash |
|---|---|
| 1.0 | 0x2ea0a584 |
| 1.1 | 0x7c963585 |
| 1.2 | 0x61e866cf |
| 2.0 | 0xe49f484d |
| 2.1 | 0xa3bbe449 |
| 2.2 | 0x196bb59f |
Then check the installed package versions:
sudo apt policy memx-drivers memx-accl mxa-manager
The installed version should show 2.1.
Only MemryX SDK 2.1 is supported for Frigate 0.17. Other SDK versions are not currently supported.
If any of the installed components are not on version 2.1, update them to 2.1 before continuing. Please follow this guide: How to Upgrade or Downgrade to MemryX SDK 2.1 for Frigate
Expose MemryX Devices to Docker
To connect MemryX devices inside Docker, add the device mappings in your docker-compose.yml or docker run setup.
For a single MX3:
devices:
- /dev/memx0
For multiple MX3 devices:
devices:
- /dev/memx0
- /dev/memx1
- /dev/memx2
Configure Detectors in Frigate
Inside the Frigate config file, define the detectors like this:
detectors:
memx0:
type: memryx
device: PCIe:0
memx1:
type: memryx
device: PCIe:1
memx2:
type: memryx
device: PCIe:2
Add more detector entries as needed if you are using additional cards.