Skip to content

GlomarGadaffi/bcd325p2-protocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

bcd325p2-protocol

BCD325P2 remote command protocol reference. machine-readable specification for the Uniden BCD325P2 scanner serial interface — command formats, primitives, and parameter structures for remote control and automated monitoring.

codename bcd325p2-protocol in this repository.


Table of Contents

  1. Communication Parameters
  2. Protocol Syntax
  3. Command Index
  4. Command Reference
  5. Appendix A: CTCSS/DCS Codes
  6. Appendix B: Hex Font Mapping

1. Communication Parameters

Configure your serial interface with the following settings:

  • BPS Rate: 4800 / 9600 / 19200 / 38400 / 57600 / 115200 bps
  • Start/Stop Bit: 1 bit, 1 bit
  • Data Length: 8 bit
  • Parity Check: None
  • Code: ASCII
  • Flow Control: None
  • Return Code: Carriage Return (\r) only

2. Protocol Syntax

Base Rules

  • Delimiter: , (Comma)
  • Terminator: \r (Carriage Return)
  • Empty/Reserved: Omitted parameters or [RSV] are sent as empty space between commas (e.g., ,,,).
  • Execution Block: Any command must wait for a response from the scanner before the next command is sent.
  • Program Mode: All memory access commands are only acceptable in Program Mode. Use PRG to enter, and EPG to exit.

Error Handling

If a command fails, the scanner returns one of the following:

  • ERR[\r]: Command format error / Value error
  • NG[\r]: Command is currently invalid/rejected
  • FER[\r]: Framing error
  • ORER[\r]: Overrun error

Standard Data Types

  • [INDEX]: Internal memory chain handle (1 to ~45000).
  • [FRQ]: 8-digit frequency without decimals (1 GHz to 100 Hz). Example: 08510125 = 851.0125 MHz.
  • [MOD]: Modulation (AUTO / AM / FM / NFM / WFM / FMB).
  • [ATT], [LOUT], [MUT]: Binary states (0 = Off/Unlocked, 1 = On/Lockout).
  • [SQL]: Squelch Status (0 = Close, 1 = Open).
  • Coordinates:
    • [LATITUDE]: DDMMSSssL (e.g., 40425112N)
    • [LONGITUDE]: DDDMMSSssL (e.g., 074002305W)

3. Command Index

Category Command Function Prog Mode
Control GID Get Current TalkGroup ID Status
KEY Push KEY
POF Power Off
QSH Go to quick search hold mode
QSC Set current frequency and get reception status
CSC Go to Custom search and get reception status
PWR Get RSSI Level
STS Get Current Status
GLG Get Reception Status
JPM Jump Mode
JNT Jump to Number Tag
MNU Menu Mode
System MDL Get Model Info
VER Get Firmware Version
PRG Enter Program Mode
EPG Exit Program Mode
Settings BLT Get/Set Backlight O
BSV Get/Set Battery Info O
COM Get/Set COM port setting O
CLR Clear All Memory O
KBP Get/Set Key Beep and setting O
OMS Get/Set Opening Message O
PRI Get/Set Priority Mode O
AGV Get/Set Auto Gain Control O
Memory SCT Get System Count O
SIN Get/Set System Info O
TRN Get/Set Trunk Info O
SIF Get/Set Site Info O
CIN Get/Set Channel Info O
TIN Get/Set TalkGroup ID Info O
LOI Lockout ID (TalkGroup ID) O

(Note: See full spec for extended memory mapping, location alerts, and custom search programming commands).


4. Command Reference

Active Control & Monitoring

Get Status (STS)

Returns current LCD lines and global states.

  • Send: STS[\r]
  • Receive: STS, [DSP_FORM], [L1_CHAR], [L1_MODE], [L2_CHAR], [L2_MODE], [L3_CHAR], [L3_MODE], [L4_CHAR], [L4_MODE], [L8_CHAR], [L8_MODE], [SQL], [MUT], [BAT], [WAT], [RSV], [RSV], [SIG_LVL], [BK_COLOR], [BK_DIMMER][\r]

Get Reception Status (GLG)

Continuously returns data when a frequency/TGID is active.

  • Send: GLG[\r]
  • Receive: GLG, [FRQ/TGID], [MOD], [ATT], [CTCSS/DCS], [NAME1], [NAME2], [NAME3], [SQL], [MUT], [SYS_TAG], [CHAN_TAG], [P25NAC][\r]

Get Current TGID Status (GID)

  • Send: GID[\r]
  • Receive: GID, [SITE_TYPE], [TGID], [ID_SRCH_MODE], [NAME1], [NAME2], [NAME3][\r]
    • [SITE_TYPE]: CNV, MOT, EDC, EDS, LTR, P25S, P25F, TRBO, DMR

Push Key (KEY)

  • Send: KEY, [KEY_CODE], [KEY_MODE][\r]
  • Receive: KEY, OK[\r]
    • [KEY_CODE]: M (Menu), F (Func), H (Hold), S (Scan), L (L/O), 0-9, .(dot), E (Yes), >, <, ^, P (Power).
    • [KEY_MODE]: P (Press), L (Long), H (Hold), R (Release)

Set Current Frequency / Get Status (QSC)

  • Send: QSC, [FRQ], [RSV], [MOD], [ATT], [DLY], [RSV], [CODE_SRCH], [BSC], [REP], [RSV], [AGC_ANALOG], [AGC_DIGITAL], [P25WAITING][\r]
  • Receive: QSC, [RSSI], [FRQ], [SQL][\r]

Memory & Programming

Requires PRG to initiate and EPG to close.

System Info (SIN)

  • Get: SIN, [INDEX][\r]
  • Set/Receive: SIN, [SYS_TYPE], [NAME], [QUICK_KEY], [HLD], [LOUT], [DLY], [RSV], [RSV], [RSV], [RSV], [RSV], [REV_INDEX], [FWD_INDEX], [CHN_GRP_HEAD], [CHN_GRP_TAIL], [SEQ_NO], [START_KEY], [RSV], [RSV], [RSV], [RSV], [RSV], [NUMBER_TAG], [AGC_ANALOG], [AGC_DIGITAL], [P25WAITING], [PROTECT], [RSV][\r]

Trunk Info (TRN)

  • Get: TRN, [INDEX][\r]
  • Set/Receive: TRN, [ID_SEARCH], [S_BIT], [END_CODE], [AFS], [RSV], [RSV], [EMG], [EMGL], [FMAP], [CTM_FMAP], [RSV], [RSV], [RSV], [RSV], [RSV], [RSV], [RSV], [RSV], [RSV], [RSV], [TGID_GRP_HEAD], [TGID_GRP_TAIL], [ID_LOUT_GRP_HEAD], [ID_LOUT_GRP_TAIL], [MOT_ID], [EMG_COLOR], [EMG_PATTERN], [P25NAC], [PRI_ID_SCAN][\r]

Site Info (SIF)

  • Get: SIF, [INDEX][\r]
  • Set/Receive: SIF, [RSV], [NAME], [QUICK_KEY], [HLD], [LOUT], [MOD], [ATT], [C-CH], [RSV], [RSV], [REV_INDEX], [FWD_INDEX], [SYS_INDEX], [CHN_HEAD], [CHN_TAIL], [SEQ_NO], [START_KEY], [LATITUDE], [LONGITUDE], [RANGE], [GPS_ENABLE], [RSV], [MOT_TYPE], [EDACS_TYPE], [P25WAITING], [RSV][\r]

Channel Info (CIN)

  • Get: CIN, [INDEX][\r]
  • Set/Receive: CIN, [NAME], [FRQ], [MOD], [CTCSS/DCS], [TLOCK], [LOUT], [PRI], [ATT], [ALT], [ALTL], [REV_INDEX], [FWD_INDEX], [SYS_INDEX], [GRP_INDEX], [RSV], [AUDIO_TYPE], [P25NAC], [NUMBER_TAG], [ALT_COLOR], [ALT_PATTERN], [VOL_OFFSET][\r]

TGID Info (TIN)

  • Get: TIN, [INDEX][\r]
  • Set/Receive: TIN, [NAME], [TGID], [LOUT], [PRI], [ALT], [ALTL], [REV_INDEX], [FWD_INDEX], [SYS_INDEX], [GRP_INDEX], [RSV], [AUDIO_TYPE], [NUMBER_TAG], [ALT_COLOR], [ALT_PATTERN], [VOL_OFFSET], [TDMA_SLOT][\r]

Appendix A: CTCSS/DCS Codes

CTCSS (Partial List)

Freq (Hz) Code Freq (Hz) Code Freq (Hz) Code
67.0 64 114.8 80 179.9 97
69.3 65 118.8 81 183.5 98
71.9 66 123.0 82 186.2 99
74.4 67 127.3 83 189.9 100

DCS (Partial List)

Code ID Code ID Code ID
023 128 223 163 446 199
025 129 225 164 452 200
026 130 226 165 454 201
031 131 243 166 455 202

(0 = NONE/ALL, 127 = SEARCH)


Appendix B: Hex Font Mapping

Scanner UI utilizes specific hex codes for rendering standard characters and custom hardware glyphs (Arrows, Battery, Signal, etc.).

Standard Alphanumeric Base:

  • 0x20 - 0x2F: Symbols (! " # $ % & ' ( ) * + , - . /)
  • 0x30 - 0x39: Numbers (0 - 9)
  • 0x41 - 0x5A: Uppercase (A - Z)
  • 0x61 - 0x7A: Lowercase (a - z)

Custom Hardware Glyphs:

  • 0x84 - 0x9F: Directional Arrows, Battery Levels, Keypad Icons.
  • 0xA1 - 0xBF: Priority, Attenuate, Signal Level Bars, Active Channel.
  • 0xC0 - 0xCF: System Modifiers (SRCH, IFX, REP, NAC).

About

BCD325P2 remote command protocol reference: serial command formats, primitives, and parameter structures.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors