BK4819

BK4819 Register Reference

The BK4819 is the RF transceiver at the heart of both the RT-900 and the UV-K5. Understanding its registers is key to customizing radio behavior.

Key Registers

RegisterNameDescription
0x07CTCSS FreqCTCSS tone frequency setting
0x08DCS DataDCS code data (low/high 12-bit)
0x0CStatusRSSI level, squelch status, CTCSS/DCS detection flags
0x30Mic ControlMicrophone enable/disable, PGA gain
0x31VolumeAudio output volume/gain (0–63, 0.5 dB per step)
0x33GPIOGPIO control for PA enable, LED, speaker
0x36PA ControlPower amplifier enable and gain setting
0x40BandwidthReceiver bandwidth and audio path configuration
0x51Tone ModeCTCSS/DCS mode selection and gain
0x52Tone DetectCTCSS/DCS detection enable and status readback
0x7DMod DepthModulation depth control
0x7EVolume TableVolume gain lookup table access

Modulation Modes

ValueModeDescription
0FMStandard frequency modulation — primary mode
2DTMFDual-tone multi-frequency encoding and decoding
3FSKFrequency Shift Keying at 1200 baud — digital messaging
4SelcallSelective calling — address individual radios
6AMAmplitude modulation reception (airband, SW)
AM airband reception at 122.500 MHz — BK4819 modulation mode 6
AM airband reception (122.500 MHz) — BK4819 modulation mode 6

FSK Capability

The BK4819 has a hardware FSK modem — the same one used for text messaging on the UV-K5 with rfsplatter firmware. The RT-900 stock firmware already implements FSK functions:

  • Baud rate: 1200 (register 0x32 = 0x3065)
  • Enter FSK mode: Rfic_EnterFSKMode()
  • Transmit data: Rfic_FskTransmit(uint16_t *pData)
  • Receive data: Rfic_ReadFskData(uint16_t *pData)
  • Check RX flag: Rfic_GetFskRxFlag()
  • Exit FSK mode: Rfic_ExitFSKMode()

Cross-radio messaging

Since both the RT-900 and UV-K5 use the same BK4819 FSK engine, cross-radio text messaging is theoretically possible. A custom RT-900 firmware could exchange messages with UV-K5 radios running rfsplatter firmware — same protocol, same modulation, just different displays.

CTCSS Tone Table

Repeater operation with CTCSS tone — BK4819 handles tone generation and detection
Repeater operation with CTCSS tone — BK4819 handles tone generation and detection

The BK4819 supports 51 standard CTCSS tones. Values are stored as frequency × 10 (e.g., 67.0 Hz = 670).

HzHzHzHzHz
67.069.371.974.477.0
79.782.585.488.591.5
94.897.4100.0103.5107.2
110.9114.8118.8123.0127.3
131.8136.5141.3146.2151.4
156.7159.8162.2165.5167.9
171.3173.8177.3179.9183.5
186.2189.9192.8196.6199.5
203.5206.5210.7218.1225.7
229.1233.6241.8250.3254.1

DCS Codes

105 standard DCS codes in octal format.

CodeCodeCodeCodeCodeCodeCode
023025026031032036043
047051053054065071072
073074114115116122125
131132134143145152155
156162165172174205212
223225226243244245246
251252255261263265266
271274306311315325331
332343346351356364365
371411412413423431432
445446452454455462464
465466503506516523526
532546565606612624627
631632654662664703712
723731732734743754

UV-K5 Comparison

FeatureUV-K5RT-900
FSK messagingCommunity firmware onlyStock firmware has FSK functions
AM receptionCommunity firmware onlyAvailable (mode 6)
DTMF decodeBasicFull encoder + decoder
Power control3 levels, basic curves3 levels, per-band APC curves
Tone detectionCTCSS/DCSCTCSS/DCS + QT scan
Selective callNot implementedImplemented (mode 4)
DisplayMonochrome 128×64Color 160×128
Channels2001000