Skip to content

Tommy's Radio

Real P25 radio for FiveM — dispatch panel, trunking, and 3D audio

Docs
FiveMEscrowstandaloneqbcoreqboxesx

Tommy's Radio Overview

1 / 19

Escrow
$99.99

or $19.99/mo

One-time purchase — lifetime access to this product, for as long as we continue to offer it.

Powered by Tebex. Instant delivery to your Cfx.re account. Refund policy.

Roadmap

View board
  • 5Planned
  • 6In Progress

Marketplace

Browse add-ons

122 community add-ons, free to install

  • 52Sounds
  • 51UI layouts
  • 19Themes

FiveM usage

Live
tRadio servers, last seven days
DayServers
12 Oct 2026522
13 Oct 2026522
14 Oct 2026511
15 Oct 2026505
16 Oct 2026520
17 Oct 2026518
18 Oct 2026507
507
Servers
1,455
Players
#1,036
Rank

Description

Most FiveM radio scripts add channel routing and an audio filter on top of pma-voice. Tommy's Radio runs its own voice server and encodes speech with P25 IMBE — the same vocoder real public-safety handhelds use. The radio sound is the codec, not an effect painted over your voice.

Channels, trunking, codeplugs, a dispatch panel, 911 calls, 3D audio, and GPS all ship in one resource. No port to open, one config file, nothing external to sign up for.

the vocoder real public-safety radios use
P25 IMBE
less bandwidth than Opus
3.7×
frameworks auto-detected, or run standalone
6
radio models included
11
restarts to change a setting
0

Will it run on your server?

The answer is almost always yes, but this is the part worth checking first.

  • FiveM artifact 4752 or newer. Type version in your server console to check.
  • No port to open. The radio runs over the FiveM connection players already have. A public port is tLib's, and only if you additionally publish the dispatch and admin panels to a browser or host a federation.
  • tLib v1.0 or newer — free, and the only dependency.
  • A framework is optional. ESX, QBCore, QBX, ND_Core, ox_core, and nat2k15 are auto-detected. Standalone works.
  • It does not replace your proximity voice. tRadio captures its own microphone stream and runs beside pma-voice or Mumble, not instead of it.

Try it before you buy it

All three are live right now, on the same server. None of them ask for an email.

  • The dispatch panel

    The real panel, running against that server. Talk to the players on it from your browser.

    141
    Open the panel
  • The admin panel

    Every setting a server owner touches — zones, channels, codeplugs, audio, speakers, towers. Change one and it reaches every connected client instantly.

    141
    Open the admin panel
  • Or just get in the game

    Press F8 in FiveM, paste the line below, and press enter. Once you spawn in, press F6 to open a radio and key up on a channel with the dispatchers above.

    connect fivem.timmygstudios.com
    Connect in FiveM

What you get

Radio that sounds like radio

A real P25 Phase 1 vocoder (IMBE) running in WebAssembly. Your voice is encoded once and decoded by every listener — in game, on the dispatch panel, and by bystanders standing next to you. P25 is set per channel, so a digital dispatch channel and an analog tac channel live on the same radio.

Conventional and trunked channels

Conventional is one shared frequency: everyone on it hears everyone else. Trunked splits units onto sub-frequencies by location, so units spread across the map stop stepping on each other — and dispatch still reaches all of them. Patch any two channels together on the fly, and the patch survives a restart.

A dispatcher patching two channels together from the panel

A dispatch panel, and a working 911 line

Browser panel plus a native Windows app with global push-to-talk. Dispatchers transmit to any channel, patch frequencies, arm announcement groups, replay a transmission they missed, and set callsigns.

Players dial /911 — or 911 on their LB Phone — and land in a queue with their number, location, and message. The dispatcher accepts and they talk, hands-free, ESC to hang up. No radio or codeplug needed to call. It ships off, so a server that does not want a 911 line never has one.

Speakers you can place, tones you can drop

Grab a coordinate in game with one command, paste it into the admin panel with a radius and an optional prop, and group speakers by station. A dispatcher picks a tone and a target, and it plays at those coordinates in 3D — station alerting, tone-outs, PA stingers. Everyone inside the radius hears it positioned. Nobody outside does.

Everyone nearby hears your radio

Stand next to a unit taking a call and you hear their radio at their position — voice, tones, the siren behind them, rotor wash, gunshots fired mid-transmission. A unit wearing earbuds is heard by nobody around them — the audio goes to their ears instead of their radio's speaker — and a configured earpiece item switches earbuds on automatically.

A radio that's really in the dash

Not a screenshot taped to the dashboard. It is a streamed prop with a live display — zone, channel, signal bars, status LEDs — rendering the same thing the player's radio shows. Walk away from the car and it takes over as the audio source at longer range.

Placement is per vehicle model, done in game: sit in the car, open the editor, and drag it into place with a Three.js gizmo. Save, and every client sees it immediately.

A dash-mounted radio head at night showing the zone and an outgoing transmission, beside a second unit's lit control head
The in-game prop editor — drag to move, rings to rotate, save to push it to every client.

Codeplugs — one radio per department

The same thing real agencies program into their fleets. A codeplug decides which channels a unit can transmit on, which it can only scan, which radio models it may carry, and whose GPS blips it sees. Map jobs to codeplugs in one table, optionally per rank, so a sergeant's radio carries channels a patrol officer's does not.

Building a codeplug in the admin panel

Coverage you can plan — and lose

Put signal towers at coordinates you pick. Strength falls off with distance from the nearest one, and with degradation on, a weak signal audibly chews up the audio — the edge of the county sounds like the edge of the county.

Geo zones work the other way: a coordinate and a radius around the mall or the prison, and a unit walking in switches to that area's channel and back out again.

Built to be taken apart

Radio models are HTML and CSS folders; eleven ship. Twenty-seven tone slots. Five dispatch themes, plus a four-tier theming SDK — recolour with tokens, restyle with CSS, swap individual components, or rebuild the console from a declarative template. None of it needs JavaScript.

Retheming the dispatch panel live

One click, no code, no restart

Radio UIs, dispatch themes, and tones publish to the tMarketplace. Find one, press install in Admin Panel → Marketplace, and it shows up in every player's style picker the next time they open the radio. No file transfer, no restart tRadio, no editing anything.

Live today: extra handhelds, a car radio, a tone pack, and a full dispatch-console theme. Because layouts and themes are just HTML and CSS, anyone can build one — and publishing needs no review queue.

Also included

  • A live admin panel. Every audio knob, FX setting, signal curve, and timer, pushed to every connected client instantly.
  • Alerts and panic. Coloured banners with activate, repeat, and clear tones, plus man-down escalation and announcement groups.
  • An official Stream Deck plugin. Free, and it works with Stream Deck Mobile and OpenDeck.
  • Details that sell it. Battery drain, bonk tones, spoken zone and channel announcements. All optional.
  • Multi-server federation. Satellites share one voice server and one dispatch panel.
  • Integrations. LB Phone, LB Radio, ImperialCAD, and Discord OAuth for panel access.
  • An API. Lua exports, a REST API, and a Socket.IO event stream.
  • Translatable. Every player-facing string lives in one JSON file.

Specifications

Compatibility

FiveM artifact
4752 or newer
Frameworks
Standalone, ESX, QBCore, QBX, ND_Core, ox_core, nat2k15 — auto-detected
Dependencies
tLib v1.0+ (free). Nothing else
Voice
Runs alongside pma-voice / Mumble, does not replace it
Ports
None for the radio itself. tLib's port only to publish the panels to a browser or host a federation
Multi-server
Satellite federation onto one shared voice server and panel

What stays open

Protection
FiveM Asset Escrow
Editable, unencrypted
config.lua, cl_functions.lua, sv_functions.lua, locales.json, layouts/
Yours, never shipped
data.json — created on first start, never included in an update
Framework hooks
All of them, in sv_functions.lua and cl_functions.lua
Extension points
Lua exports, REST API, Socket.IO events, theme SDK

What is included

Radio models
11, plus marketplace installs
Tone slots
27, remappable globally or per model
Dispatch themes
5 built in, more from the marketplace
Dispatch app
Browser panel + Windows desktop app with global PTT
Stream Deck
Official plugin, free with the resource
Marketplace
One-click UIs, themes, and tones from the admin panel — no restart
Preconfigured
3 zones, 12 channels, a working codeplug, 4 alerts

Buying it

Updates
Included, forever, on both the one-time and monthly options
Support
Discord, with a purchase-linked role
Refunds
7-day money-back guarantee on the one-time purchase
Test server
Public, permanent, no purchase needed

Questions people actually ask