Before you begin
You need:- A current FXServer with OneSync
- SonoranCADFiveM version
4.0.72or newer for units and calls - Access to the CFX account that owns the Tebex asset
- Permission to add resources and ACE entries to the server
radio_fivem installation is required.
- Download the resource
After purchasing the resource, download it from the CFX portal account that owns the asset. See Accessing Tebex Assets for the established store download process.
Extract the download before copying it to the server.
- Verify the folder structure
The folder containing fxmanifest.lua must be named:
sonoran-stationdisplay folder into the resources directory and remove the empty outer folder.
- Install or update SonoranCADFiveM
Install SonoranCADFiveM according to the SonoranCADFiveM installation guide.
The default dependency resource name is:
4.0.72 or newer and the local GetUnitCache, GetCallCache, and GetEmergencyCache exports. It does not require a second CAD API key.
The optional Bodycams page additionally needs a package/build that exposes GetBodycamRuntime() and the runtime event, plus the standard screenshot-basic resource. The base 4.0.72 cache requirement does not guarantee that every package with that version contains the newer bodycam bridge.
The dependency name is managed internally and must remain sonorancad.
- Configure start order
Add:
screenshot-basic first. Sonoran Station Displays can remain started if either stops; normal boards recover with CAD, while bodycam imagery reports the missing capture dependency and recovers when it returns.
The current preconfigured SonoranCADFiveM bundle may instruct you to use exec @sonorancad/sonorancad.cfg instead of manually ensuring its resources. In that installation, place the exec line before ensure sonoran-stationdisplay; the required core resource must still start as sonorancad.
Do not add ensure radio_fivem for this product unless your server separately uses Sonoran Radio. The radio resource is not a dependency.
- Add ACE permissions
For an administrator group:
sonoran.stationdisplay.menu to each group that should open the administrative menu, then grant only the required action ACEs. See Permissions for least-privilege examples and custom permission mode.
- Review configuration
Open sonoran-stationdisplay/config.lua and confirm:
Config.PermissionMode = "ace"- Default pages, service filter, theme, rotation, clock/weather, and distances
- Live Map and bodycam defaults
- The included display model registry
- Restart and verify startup
Restart the server. In the server console, expect messages similar to:
SSD-CAD-* error. See Troubleshooting.
- Place a test display
- Join with the administrator ACE permissions.
- Confirm at least one unit is on duty in Sonoran CAD.
- Run
/stationdisplay. - Select Mounted Displays.
- Select Place New Display.
- Choose a model, service filter, and one or more pages.
- Leave the rotation interval at the default 30 seconds.
- Select Continue to Placement.
- Position the preview within 15 meters, then select Confirm Placement.
- Walk within the displayβs render distance and confirm current state appears without the CAD unavailable overlay.
unit.data.page classification.
Tebex Asset Escrow
The production package is intended for FiveM Asset Escrow. Customer-editable files are excluded from encryption:config.luaserver/admin_webhook_config.lualocales/*.luadata/displays.DEFAULT.jsondocs/*.mdREADME.md
data/displays.json. Back it up before replacing the resource during an update.
Source builds
Customers do not build the web interface. It ships as static production files and has no Node.js dependency. Repository maintainers can validate and package a source checkout from the repository root:build/stationDisplay.zip with one top-level sonoran-stationdisplay folder.
