Smart Lights, Outlets & Buttons
Control RGB lights, smart outlets, and SwitchBot button pressers in each scene frame.
What are Smart Lights, Outlets & Buttons?
Sonoran Studio controls RGB light color and power, smart outlet on/off state, and SwitchBot Bot actions in each scene frame. With the FiveM, LSPDFR, and ER:LC integrations, you can build custom patterns for emergency lights, hazards, and turn signals. The same realtime Sonoran CAD and Radio events that power Studio widgets can trigger device sequences for transmissions, unit updates, calls, dispatch activity, and panic changes.
Supported Devices
Studio only lists devices that expose the controls required by the selected provider. A product having Wi-Fi, Bluetooth, Matter, Alexa, or Google Home support does not by itself guarantee compatibility.
Smart lights are third-party products. Their manufacturers may change or retire cloud and local APIs. Match the exact brand, family, and requirements below before purchasing.
Amazon links point to an exact product page when the model could be verified. Links marked Amazon search open a model-specific search; confirm the model or family shown below before ordering.
As an Amazon Associate, Sonoran Software earns from qualifying purchases.
Smart Lights
Smart Outlets
Button Pressers
Provider Timing Reference
Wyze
Cloud
One combined action per light
1,000 ms or longer
Philips Hue
Local Hue Bridge
100 ms between Bridge writes
100 ms or longer; increase for large groups
Govee
Cloud
500 ms/device and 84 ms/account
1,000 ms or longer
Nanoleaf
Local network
100 ms/device
100 ms or longer
LIFX
Local UDP
Acknowledged commands, one queue per light
100 ms or longer
WLED
Local HTTP
One global sequential request queue
100 ms or longer
Shelly
Local HTTP
Direct on/off per outlet
100 ms or longer
SwitchBot
Cloud
Signed OpenAPI command per plug or Bot; 10,000 API calls/day account limit
1,000 ms or longer
Creating Device Sequences
Device sequences tell Studio which lights, outlets, or button pressers to use and how long each frame remains active. Each game or CAD/Radio widget event has its own saved sequence.
1. Choose a game source
Open Smart Lighting in the Sonoran Studio desktop app. Under Choose your game, select FiveM, LSPDFR, or ER:LC. The scene editor shows the persistent lighting states supported by that game, FiveM/LSPDFR gameplay moments when available, and the CAD and Radio widget events.
2. Connect your devices
Under Connect devices, choose your provider and follow the connection steps. After Studio discovers the devices, they are available in every scene and frame.
3. Select the event
Under Build event scenes, use Scene event to select the event family you want to configure, such as Emergency lights, Health threshold, Transmission started, Status changed, or Panic changed. When a family has multiple choices, Studio adds a second selector beside it. Every final event choice saves a separate sequence.
The grouped choices are:
Status changed: Any status, Available, Unavailable, Busy, En route, or On scene.
Transmission started / ended: My transmission, Other user transmission, or Any transmission. A configured scoped scene takes priority; otherwise Studio falls back to the matching Any transmission scene.
Radio emergency call: Ringing or Talking.
Panic changed: Started or Ended / cleared.
Health threshold: Drops below or Recovers above, with the 0–100 percentage box beside the selector.
No active game event is the fallback scene used when FiveM, LSPDFR, or ER:LC is not reporting another active game-lighting state. Panic active (continuous) is the persistent panic scene; Panic changed contains the optional one-shot start and clear scenes.
4. Build the frames
The first frame is created for you. Select smart lights with colors and power, smart outlets with on/off state, or SwitchBot Bots with their available Press, On, or Off action. When compatible Govee lights report scenes, a separate Govee scenes area appears below the device list. Select a built-in scene, DIY scene, or snapshot card to assign that specific light and effect to the active frame. Then set Delay to next frame in milliseconds.
Select Add frame to copy the selected frame, then change its devices, colors, states, or delay. Drag frame cards to reorder them. A sequence can contain up to 40 frames, and each frame delay can be between 50 and 60,000 milliseconds.

Each frame can control a different set of devices. A light, outlet, or Bot not selected in a frame remains unchanged during that frame.

5. Test and save
Changes save automatically on this computer. Select Test once to play Frame 1 through the final frame one time before going live.
When a live game or unit-status state occurs, Studio loops that saved sequence until another state takes over. A gameplay-moment or CAD/Radio widget-event sequence plays once, holding each frame for its configured delay, and then resumes the newest active game or unit-status scene. A newer one-shot event replaces one already playing, while active panic lighting blocks unrelated events. Testing, direct light control, or another sequence cancels the sequence currently playing.
FiveM and LSPDFR Gameplay Moments
FiveM and LSPDFR report the same native-backed gameplay moments. Configure them under FiveM & LSPDFR moments in the scene selector. Each scene is optional and plays once when the transition occurs.
Weapon drawn
The player changes from unarmed to armed
Weapon holstered
The player changes from armed to unarmed; changing weapons emits holstered, then drawn
Player died
The player entity changes to dead
Player revived
The player entity changes from dead to alive
Travel · On foot
The player leaves a vehicle
Travel · Vehicle
The player enters a road or other non-air/non-water vehicle class
Travel · Aircraft
The player enters a helicopter or plane
Travel · Watercraft
The player enters a boat
Health threshold > Drops below
Usable player health crosses below the percentage you set
Health threshold > Recovers above
After low health, usable health crosses above the percentage you set
Set each percentage in the Threshold box shown beside the Health threshold event, or under Choose your game > Health event thresholds after selecting FiveM or LSPDFR. The defaults are Drops below 35% and Recovers above 50%. Studio requires the recovery value to be above the lower value, creating a gap that prevents rapid switching near one boundary. These settings apply to both smart-device scenes and Streamer.bot actions.
Player revived deliberately covers both respawns and framework revives. GTA's entity natives report dead versus alive, but do not identify which recovery flow a server or mod used.
CAD and Radio Widget Events
The Studio desktop app receives these events through the same authenticated realtime connection used by the overlay widgets. Configure any of them under CAD & Radio widget events in the scene selector.
Transmission started
My, another user's, or any radio transmission begins
Transmission ended
My, another user's, or any radio transmission ends
Radio channel changed
Your active Radio channel changes
Radio emergency call
An emergency call rings or someone talks on it
Radio tone
A tone plays in your Radio client
CAD tone
A tone addressed to your signed-in CAD client plays
Status changed
Any update or the selected CAD status becomes active
Call attached
You attach to a different CAD call
Attached call changed
The currently attached call updates
Call detached
You detach from the active CAD call
Call note
A dispatch notification is identified as a call note
Dispatch notification
Any other CAD dispatch notification arrives
Panic changed
A visible panic starts or ends / clears
Location-only unit updates do not trigger Status changed > Any status, preventing routine location refreshes from repeatedly interrupting lighting. Any status is a one-shot scene; a named status scene remains active until the unit status changes. Widget-event scenes are optional: an event with no saved frames leaves the current lighting scene unchanged.
Integrated Games
FiveM
FiveM can connect through the latest Sonoran CAD FiveM resource or through the standalone Sonoran Studio resource. The standalone option does not require a CAD community and sends only to the Studio desktop app on the player's computer.
Install the standalone resource
Extract the ZIP's
[sonoran_studio]folder directly into the server'sresourcesfolder.Add
exec @sonoran_studio/sonoran_studio.cfgtoserver.cfg.Remove any other line that starts
sonoran_studio, includingensure sonoran_studioor an ensured parent folder. Only use theexecline above.Restart the server and keep the Sonoran Studio desktop app open while playing.
Do not run the standalone resource alongside the Sonoran CAD FiveM resource; both contain the Studio bridge and would report every event twice. The default desktop port is 9990. Players using a different local Studio port can run /setstudioport PORT in FiveM.
Automatic resource updates are enabled by default. Run sonoranstudio update in the server console to check immediately. If the resource reports an updater permission, helper, or folder-layout error, reinstall the complete ZIP and confirm that server.cfg uses only the bundled exec line.
FiveM scenes include emergency lights, turn signals, hazards, and the gameplay moments listed above. Sonoran CAD unit statuses, calls, Radio activity, and panic events remain available when the player is also signed into the corresponding Sonoran community.
LSPDFR
The Sonoran Studio LSPDFR plugin synchronizes emergency lights, left and right indicators, hazards, officer details, location, and callout activity through RAGE Plugin Hook. The plugin itself only connects to the Studio desktop app on your computer. When you are signed in, the desktop app sends validated overlay events through your authenticated Studio session.
Install the plugin
Close GTA V and RAGE Plugin Hook.
Extract the ZIP into your Grand Theft Auto V folder. Confirm this file exists:
Grand Theft Auto V\Plugins\SonoranStudio.LSPDFR.dll.Open RAGE Plugin Hook settings and enable Load all plugins on startup.
Open the Sonoran Studio Windows app, go to Lighting, and select LSPDFR.
Start GTA V through RAGE Plugin Hook and launch LSPDFR. Keep Sonoran Studio open while playing.
Supported lighting and overlay data
Emergency lighting
Emergency lights, left indicator, right indicator, and hazards
Gameplay moments
Weapon draw/holster, death/return, travel type, and configurable health lower/higher crossings
Unit HUD
LSPDFR persona name, agency, current street/area, and derived duty status
Attached Call
A locally generated call ID, callout name, and callout street/area after you accept it
Dispatch Notification
The callout name, message, and advisory when LSPDFR presents a callout
Radio Transmission
Not available from the native LSPDFR API
Panic
Not available from the native LSPDFR API
LSPDFR gameplay moments run the same one-shot scenes as FiveM. Its overlay updates can also run the Status changed, Call attached, Call detached, and Dispatch notification event scenes configured in Studio.
Studio derives the unit status from the LSPDFR callout lifecycle: Available while patrolling, En Route after accepting a callout, On Scene near the callout position, and Unavailable while off duty. LSPDFR does not expose the player's callsign/unit number, a postal code, or a standard call priority/response code through its native API. These fields remain blank or use your configured widget fallback. Set overlay location precision to Full to show LSPDFR street and area names; Postal only cannot show an LSPDFR location because no postal is available.
Callout packs control the metadata they expose. If a pack omits a friendly name, message, advisory, or position, Studio shows the remaining supported fields without inventing the missing value.
This support uses LSPDFR's documented callout lifecycle and functions from the official LSPDFR API project. Gameplay moments use GTA entity, weapon, ped, and vehicle natives through RAGE Plugin Hook's documented native invocation API, cross-checked against the CitizenFX GTA V native documentation. The callout field and handle patterns are also demonstrated by established open-source integrations including External Police Computer, ReportsPlusListener, and FirstResponseGPT.
The plugin sends changes only to 127.0.0.1:9990; it does not connect directly to a game server or expose a public port. If it does not load, open the RAGE Plugin Hook console with F4 and run LoadPlugin "SonoranStudio.LSPDFR.dll", then check RagePluginHook.log for a Sonoran Studio message.
ER:LC
Smart lighting for ER:LC reads the lighting and siren controller in the Roblox window. Sonoran CAD and Radio are not required.
Leave the ER:LC ELS controller visible while playing. On macOS, allow Sonoran Studio under Screen & System Audio Recording when prompted. Detection remains on your computer; screenshots are never saved or uploaded.
Last updated
Was this helpful?