Initial RS-UV3A Starlight documentation site

Documentation for the HobbyPCB RS-UV3A tri-band FM transceiver board
covering 2m, 1.25m, and 70cm amateur radio bands.

Structure:
- Getting Started: quick start, connections, serial setup
- Guides: voice, packet/APRS, beacons, repeater/satellite, firmware
- Reference: specs, 66 serial commands, connector pinouts, hw revisions
- Accessories: RS-UVPA 5W power amplifier

Features:
- Ham radio green theme for readability
- Full command reference with categorization
- Searchable via Starlight/Pagefind
- Mobile responsive
This commit is contained in:
Ryan Malloy 2026-01-28 12:14:16 -07:00
commit 364b6602c4
33 changed files with 11838 additions and 0 deletions

23
.gitignore vendored Normal file
View File

@ -0,0 +1,23 @@
# Build output
dist/
# Node modules
node_modules/
# Environment
.env
.env.*
!.env.example
# IDE
.idea/
.vscode/
*.swp
*.swo
# OS
.DS_Store
Thumbs.db
# Astro
.astro/

51
README.md Normal file
View File

@ -0,0 +1,51 @@
# RS-UV3A Documentation
Documentation site for the HobbyPCB RS-UV3A VHF/UHF Tri-Band FM Transceiver.
Built with [Astro](https://astro.build) and [Starlight](https://starlight.astro.build).
## About the RS-UV3A
The RS-UV3A is a compact FM transceiver board designed by Jim Veatch (WA2EUJ) at HobbyPCB. It covers:
- **2m Band:** 136174 MHz
- **1.25m Band:** 200260 MHz
- **70cm Band:** 400520 MHz
Features include on-board USB-serial, wide-range DC-DC converter (3.5V16V), and Arduino/Raspberry Pi compatibility.
## Documentation Structure
- **Getting Started** — Quick start, connections, serial setup
- **Guides** — Voice operation, packet/APRS, beacons, repeaters
- **Reference** — Specifications, all 66 serial commands, connector pinouts
- **Accessories** — RS-UVPA 5W power amplifier
## Development
```bash
# Install dependencies
npm install
# Start dev server at localhost:4321
npm run dev
# Build for production
npm run build
# Preview production build
npm run preview
```
## Source Material
Documentation is based on official HobbyPCB manuals:
- RS-UV3A Rev A Manual
- RS-UV3 Command Reference (Firmware 2.4A)
- RS-UV3 Rev C Manual
- RS-UVPA Manual
## Links
- [HobbyPCB Wiki](https://sites.google.com/site/hobbypcbrsuv3awiki/)
- [Starlight Documentation](https://starlight.astro.build/)

86
astro.config.mjs Normal file
View File

@ -0,0 +1,86 @@
// @ts-check
import { defineConfig } from 'astro/config';
import starlight from '@astrojs/starlight';
// https://astro.build/config
export default defineConfig({
telemetry: false,
devToolbar: { enabled: false },
integrations: [
starlight({
title: 'RS-UV3A',
description: 'Documentation for the HobbyPCB RS-UV3A VHF/UHF Tri-Band FM Transceiver',
logo: {
light: './src/assets/radio-light.svg',
dark: './src/assets/radio-dark.svg',
replacesTitle: false,
},
social: [
{
icon: 'external',
label: 'HobbyPCB Wiki',
href: 'https://sites.google.com/site/hobbypcbrsuv3awiki/'
},
],
customCss: ['./src/styles/custom.css'],
sidebar: [
{
label: 'Getting Started',
items: [
{ label: 'Introduction', slug: 'getting-started' },
{ label: 'Connections', slug: 'getting-started/connections' },
{ label: 'Serial Setup', slug: 'getting-started/serial-setup' },
],
},
{
label: 'Guides',
items: [
{ label: 'Voice Operation', slug: 'guides/voice-operation' },
{ label: 'Packet & APRS', slug: 'guides/packet-aprs' },
{ label: 'Beacon Operation', slug: 'guides/beacon-operation' },
{ label: 'Repeater & Satellite', slug: 'guides/repeater-satellite' },
{ label: 'Firmware Upgrade', slug: 'guides/firmware-upgrade' },
],
},
{
label: 'Reference',
items: [
{ label: 'Specifications', slug: 'reference/specifications' },
{
label: 'Commands',
collapsed: true,
items: [
{ label: 'Quick Reference', slug: 'reference/commands' },
{ label: 'Frequency', slug: 'reference/commands/frequency' },
{ label: 'Audio', slug: 'reference/commands/audio' },
{ label: 'Squelch & Tones', slug: 'reference/commands/squelch-tones' },
{ label: 'DTMF & CW', slug: 'reference/commands/dtmf-cw' },
{ label: 'Beacon', slug: 'reference/commands/beacon' },
{ label: 'Memory', slug: 'reference/commands/memory' },
{ label: 'I/O Control', slug: 'reference/commands/io-control' },
{ label: 'System', slug: 'reference/commands/system' },
],
},
{ label: 'Connectors', slug: 'reference/connectors' },
{ label: 'Hardware Revisions', slug: 'reference/hardware-revisions' },
],
},
{
label: 'Accessories',
items: [
{ label: 'RS-UVPA Power Amp', slug: 'accessories/rs-uvpa' },
],
},
],
head: [
{
tag: 'meta',
attrs: {
name: 'keywords',
content: 'RS-UV3A, HobbyPCB, ham radio, amateur radio, FM transceiver, VHF, UHF, 2m, 70cm, 1.25m, Arduino',
},
},
],
}),
],
});

6394
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

17
package.json Normal file
View File

@ -0,0 +1,17 @@
{
"name": "rs-uv3-docs",
"type": "module",
"version": "0.0.1",
"scripts": {
"dev": "astro dev",
"start": "astro dev",
"build": "astro build",
"preview": "astro preview",
"astro": "astro"
},
"dependencies": {
"@astrojs/starlight": "^0.37.4",
"astro": "^5.6.1",
"sharp": "^0.34.2"
}
}

1
public/favicon.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128"><path fill-rule="evenodd" d="M81 36 64 0 47 36l-1 2-9-10a6 6 0 0 0-9 9l10 10h-2L0 64l36 17h2L28 91a6 6 0 1 0 9 9l9-10 1 2 17 36 17-36v-2l9 10a6 6 0 1 0 9-9l-9-9 2-1 36-17-36-17-2-1 9-9a6 6 0 1 0-9-9l-9 10v-2Zm-17 2-2 5c-4 8-11 15-19 19l-5 2 5 2c8 4 15 11 19 19l2 5 2-5c4-8 11-15 19-19l5-2-5-2c-8-4-15-11-19-19l-2-5Z" clip-rule="evenodd"/><path d="M118 19a6 6 0 0 0-9-9l-3 3a6 6 0 1 0 9 9l3-3Zm-96 4c-2 2-6 2-9 0l-3-3a6 6 0 1 1 9-9l3 3c3 2 3 6 0 9Zm0 82c-2-2-6-2-9 0l-3 3a6 6 0 1 0 9 9l3-3c3-2 3-6 0-9Zm96 4a6 6 0 0 1-9 9l-3-3a6 6 0 1 1 9-9l3 3Z"/><style>path{fill:#000}@media (prefers-color-scheme:dark){path{fill:#fff}}</style></svg>

After

Width:  |  Height:  |  Size: 696 B

View File

@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="#4ade80" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<rect x="2" y="6" width="20" height="12" rx="2"/>
<line x1="6" y1="10" x2="6" y2="14"/>
<line x1="10" y1="10" x2="10" y2="14"/>
<circle cx="17" cy="12" r="2"/>
<path d="M12 2L12 6"/>
<path d="M9 2L12 5L15 2"/>
</svg>

After

Width:  |  Height:  |  Size: 383 B

View File

@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="#2d8659" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<rect x="2" y="6" width="20" height="12" rx="2"/>
<line x1="6" y1="10" x2="6" y2="14"/>
<line x1="10" y1="10" x2="10" y2="14"/>
<circle cx="17" cy="12" r="2"/>
<path d="M12 2L12 6"/>
<path d="M9 2L12 5L15 2"/>
</svg>

After

Width:  |  Height:  |  Size: 383 B

7
src/content.config.ts Normal file
View File

@ -0,0 +1,7 @@
import { defineCollection } from 'astro:content';
import { docsLoader } from '@astrojs/starlight/loaders';
import { docsSchema } from '@astrojs/starlight/schema';
export const collections = {
docs: defineCollection({ loader: docsLoader(), schema: docsSchema() }),
};

View File

@ -0,0 +1,223 @@
---
title: RS-UVPA Power Amplifier
description: 5W power amplifier companion board for the RS-UV3A
---
The RS-UVPA is a 5W power amplifier designed to integrate with the RS-UV3A transceiver, boosting output power for improved range.
## Overview
The RS-UVPA provides:
- **5W output** on 2m and 1.25m bands
- **4W output** on 70cm band
- **Low-noise preamplifier** for improved RX sensitivity
- **SWR protection** to prevent amplifier damage
- **Band-keying outputs** for external amplifiers
## Specifications
| Parameter | Specification |
|-----------|---------------|
| **TX Frequency Range** | 144148 MHz, 220225 MHz, 432450 MHz |
| **RX Frequency Range** | 130500 MHz |
| **Drive Level** | 200 mW 1W |
| **Output Power** | 5W min (2m/1.25m), 4W min (70cm) |
| **Spurious** | > 53 dBc, typically 60 dBc |
| **Antenna Impedance** | 50Ω |
| **SWR Trip** | 3:1 |
| **RX Gain** | 23 dB or 1215 dB (jumper selectable) |
| **RX Noise Figure** | 1.5 dB max |
| **DC Power** | 8V 15V DC |
| **TX Current** | 2A max |
| **RX Current** | < 50 mA |
| **Size** | 120 × 75 × 25 mm |
## Operation
Once installed, the RS-UVPA operates transparently—it automatically switches between TX and RX and selects the correct band filtering.
### SWR Protection
The RS-UVPA includes SWR protection:
- **SWR LED** illuminates when high SWR is detected
- Amplifier is disabled for remainder of transmission
- Normal operation resumes on next transmission
:::warning[Antenna Required]
Always connect an antenna or 50Ω load before transmitting. Operating without a load can damage the amplifier despite SWR protection.
:::
:::danger[Shielding Required]
Do NOT operate with the antenna directly connected to the PCB unless the RS-UVPA is mounted in a **shielded metal enclosure**. Otherwise, the PCB becomes part of the antenna system, causing unexpected behavior or component damage.
:::
## Installation
### Compatible Hardware
| Board | Compatibility |
|-------|---------------|
| RS-UV3A Rev A | ✓ Full support |
| RS-UV3 Rev D | ✓ Full support |
| RS-UV3 Rev C | ✓ Full support |
| RS-UV3 Rev B | Contact HobbyPCB |
### Required Modifications
Before installing the RS-UVPA on the RS-UV3A:
#### Step 1: Prepare the RS-UV3A
1. **Remove solder from SJ1** — This solder jumper routes RF to the SMA jack. Use solder wick to clear it.
2. **Remove the VIN power connector** — It interferes with the amplifier's power connector. The RS-UVPA will supply power to the RS-UV3A.
:::tip
The SMA jack can remain installed—it doesn't interfere mechanically and is difficult to remove.
:::
#### Step 2: Add Headers to RS-UV3A
Solder three headers to the RS-UV3A:
| Header | Pins | Purpose |
|--------|------|---------|
| AMP | 6 | Amplifier interface |
| PW | 2 | Power switch |
| PA | 2 | RF connection |
**Soldering tips:**
- Solder one pin first
- Verify header is seated flat and perpendicular
- Solder remaining pins
#### Step 3: Mate the Boards
1. Align headers on RS-UV3A with sockets on RS-UVPA
2. Press boards together firmly
3. Install jumper across PW header (or connect switch)
The RS-UVPA has a redundant PW header for switch connection.
#### Step 4: Enclosure Mounting
The board stack can be mounted using:
- PCB mounting holes
- Extruded enclosures for 120×75 mm boards (e.g., Hammond 1455K1201)
- HobbyPCB enclosure (available on website)
**Important:** Transfer the plastic cap from the RS-UVPA's SMA connector to the unused RS-UV3A SMA connector to prevent confusion.
## Connections
### Power
| Parameter | Specification |
|-----------|---------------|
| Connector | On RS-UVPA (shared with RS-UV3A) |
| Voltage | 8V 15V DC |
| Current | 2A max (TX) |
The RS-UVPA provides power to the RS-UV3A through the interconnecting headers.
### Antenna
Connect antenna to the RS-UVPA SMA jack (not the RS-UV3A jack when mated).
### Control Outputs
The RS-UVPA provides band-select outputs for keying external amplifiers:
| Signal | Description |
|--------|-------------|
| 2m Key | Active during 2m TX |
| 1.25m Key | Active during 1.25m TX |
| 70cm Key | Active during 70cm TX |
## RX Preamplifier
The RS-UVPA includes a switchable LNA (Low-Noise Amplifier):
| Mode | Gain | Use Case |
|------|------|----------|
| Low Gain | 23 dB | Overcomes amplifier insertion loss |
| High Gain | 1215 dB | Improved weak-signal reception |
Select mode via jumper on the RS-UVPA board.
### When to Use High Gain
- Weak signal work (DX, satellites)
- When the RS-UV3A's sensitivity is limiting
- Base station installations with long feedlines
### When to Use Low Gain
- Strong signal environments
- To avoid receiver overload
- Mobile installations in urban areas
## Drive Level Adjustment
The RS-UVPA is optimized for the RS-UV3A's ~200 mW output. If using with other transmitters:
| Drive Power | Notes |
|-------------|-------|
| < 200 mW | Reduced output power |
| 200 mW 500 mW | Optimal range |
| 500 mW 1W | May require attenuator adjustment |
| > 1W | Not recommended |
For drive levels above 500 mW, internal attenuator adjustment may be required—contact HobbyPCB for guidance.
## Troubleshooting
### Low Output Power
1. Check drive level from RS-UV3A (`PW1` = high power)
2. Verify antenna connection
3. Check for SWR LED illumination
4. Measure DC input voltage (should be 8V15V)
### SWR LED Always On
1. Check antenna connection
2. Verify antenna is for correct band
3. Measure antenna SWR with analyzer
4. Check for damaged feedline
### No TX
1. Verify RS-UV3A is transmitting (TX LED)
2. Check header connections between boards
3. Verify power is applied to RS-UVPA
### Receiver Desensitized
1. Check antenna connection
2. Try low-gain preamp mode
3. Verify no strong nearby transmitters
## Using with Other Radios
The RS-UVPA can be used with other VHF/UHF transmitters that provide up to 1W output, including:
- Hamshield (Arduino shield radio)
- Other RS-UV3 variants
- Low-power transmitter modules
For non-RS-UV3 applications:
1. Connect TX output to RS-UVPA input
2. Connect RS-UVPA output to antenna
3. Provide PTT signal for TX/RX switching
4. Provide 8V15V DC power
Contact HobbyPCB for detailed integration guidance.
## Regulatory Notes
When using the RS-UVPA:
- Output power increases to 5W (37 dBm)
- Ensure compliance with band plans and power limits
- Spurious emissions meet FCC Part 97 requirements
- Operator is responsible for proper station identification

View File

@ -0,0 +1,205 @@
---
title: Connections
description: Complete connector pinouts and wiring guide for the RS-UV3A
---
The RS-UV3A provides multiple connection options for power, audio, control, and expansion. This page covers all physical connections on the board.
## Board Layout
The RS-UV3A has the following major connection points:
1. **VIN** — DC power input jack
2. **USB** — Micro USB for power and serial
3. **ANT** — SMA antenna connector
4. **JP1** — Arduino/serial header
5. **ICSP** — PIC programmer header
6. **AMP** — Power amplifier header
7. **I/O** — DB-9 external interface
8. **SPK/MIC** — 3.5mm TRRS jack
9. **JP2** — FTDI cable header
10. **26M** — Oscillator output
11. **PW** — Power switch header
12. **PA** — Internal PA header
13. **I/O_P** — I/O power jumper
## DC Power (VIN)
The main power input uses a 2.1mm barrel connector.
| Parameter | Value |
|-----------|-------|
| Connector | 5.5 × 2.1 mm barrel |
| Polarity | Center positive |
| Voltage | 3.5V 16V DC |
| Protection | Reverse polarity diode |
| Recommended Fuse | 1A |
The on-board buck-boost converter provides stable power across this wide input range. Power consumption is approximately 1.6W maximum; actual current draw varies inversely with input voltage.
## Micro USB
The USB connector provides both power and serial communication.
- **Power:** 5V from USB host
- **Serial:** Driverless FTDI chip (most OS)
- **Baud Rate:** 19200 (default), configurable via `B1` command
USB and VIN power are diode-isolated—you can connect both simultaneously for backup power operation.
## Antenna (ANT)
The SMA female jack handles both TX and RX.
| Parameter | Specification |
|-----------|---------------|
| Connector | SMA female |
| Impedance | 50Ω |
| Max RF Input | -10 dBm |
| Max DC | 25V |
Internal filtering:
- **RX:** 100 MHz high-pass filter, LNA with band-equalizing filter
- **TX:** Individual low-pass filters for 2m, 1.25m, and 70cm bands
## Arduino Header (JP1)
Four signals for microcontroller integration:
| Pin | Signal | Direction | Description |
|-----|--------|-----------|-------------|
| 1 | DIN | In | Digital input (PTT, SQ open, or disabled via `AI` command) |
| 2 | RXD | In | Serial data to RS-UV3A (connect to MCU TXD) |
| 3 | DOUT | Out | Digital output (configurable via `AO` command) |
| 4 | TXD | Out | Serial data from RS-UV3A (connect to MCU RXD) |
| 5 | 3.3V | — | 3.3V output for accessories |
| 6 | GND | — | Ground |
**Logic levels:**
- Input: 3.3V and 5V compatible
- Output: 2V5V, set by VIO pin voltage
### DIN Pin Functions (`AI` command)
- `0` — Disabled (default)
- `1` — Squelch open input
- `2` — PTT input
### DOUT Pin Functions (`AO` command)
- `0` — Always low (default)
- `1` — High when squelch open
- `2` — High when DTMF detected
- `3` — High when transmitting
- `4` — High when CTCSS detected
- `5` — Always high
## I/O Connector (DB-9)
:::danger[Not RS-232!]
The DB-9 connector uses **3.3V/5V TTL levels**, NOT standard RS-232 voltages. Connecting to a true RS-232 port may damage the RS-UV3A.
:::
| Pin | Signal | Description |
|-----|--------|-------------|
| 1 | TX Audio | Line-level TX input, adjustable via VR3 |
| 2 | PTT | Ground to transmit (-24V to +24V tolerant) |
| 3 | GND | Ground |
| 4 | RX Audio | Line-level RX output, adjustable via `VU` command |
| 5 | COR | Open-drain, low when squelch open (150mA @ 12V max) |
| 6 | PWR | 8.5V if I/O_P jumper installed, otherwise N/C |
| 7 | E_TX | External serial TXD or TX indicator (see `EX` command) |
| 8 | E_RX | External serial RXD or squelch indicator (see `EX` command) |
| 9 | GND | Ground |
### E_TX/E_RX Functions (`EX` command)
- `0` — E_TX high during TX, E_RX low when squelch open
- `1` — TTL serial port (default)
## Speaker/Mic Jack (SPK/MIC)
Standard 3.5mm TRRS connector for speaker-microphones:
| Contact | Signal |
|---------|--------|
| Tip | Speaker (+) |
| Ring 1 | Microphone |
| Ring 2 | PTT |
| Sleeve | Ground |
## Internal Audio/PTT
Direct solder points for internal enclosure mounting:
| Pad | Signal | Notes |
|-----|--------|-------|
| SPKR | Speaker out | Low-impedance (8Ω), level via VR1 |
| MIC | Microphone in | 3.3V bias for electret |
| PTT | Push-to-talk | Ground to transmit |
Adjacent pads provide ground connections.
### Microphone Bias
The MIC input includes 3.3V bias through R6 for electret microphones. To use a dynamic mic or external preamp:
- Remove R6 and install in R7 position, OR
- Add a DC blocking capacitor in series
## USB Serial Header (JP2)
For FTDI cable connection (alternative to on-board USB):
| Pin | Signal |
|-----|--------|
| 1 | GND |
| 2 | CTS |
| 3 | VIO (reference voltage) |
| 4 | TXD (from RS-UV3A) |
| 5 | RXD (to RS-UV3A) |
| 6 | RTS |
:::note
JP1 and JP2 share the same serial port. Use only one at a time.
:::
## Amplifier Header (AMP)
For connection to RS-UVPA power amplifier:
| Pin | Signal | Description |
|-----|--------|-------------|
| 1 | RC1 | Digital control 1 |
| 2 | RC2 | Digital control 2 |
| 3 | AN1 | Analog input 1 |
| 4 | AN2 | Analog input 2 |
| 5 | +8.5V | Power output |
| 6 | GND | Ground |
## Power Switch Header (PW)
Direct connection to VIN power. Ships with jumper installed.
- Remove jumper to install external power switch
- Can also be used as alternate power input or to power peripherals
## PA Header and SJ1
Internal connection for RS-UVPA integration:
- **SJ1** (Solder Jumper): Factory-installed, routes RF to SMA jack
- **PA Header**: RF connection when using internal amplifier
To use RS-UVPA: Clear solder from SJ1 and connect amplifier to PA header.
## I/O Power Header (I/O_P)
Install jumper to put 8.5V on DB-9 pin 6. Useful for powering:
- GPS receivers
- Bluetooth modules
- Other 5V8.5V accessories
## 26 MHz Output (26M)
Access to the 26 MHz TCXO reference oscillator. Intended for sub-receiver applications—advanced use only.
## ICSP Header
Programming header for the PIC18F45K22 microcontroller. Pins are staggered to allow connection without soldering a header.

View File

@ -0,0 +1,93 @@
---
title: Getting Started
description: Quick start guide for the RS-UV3A FM transceiver
---
This guide will help you get your RS-UV3A up and running for basic voice operation.
## What You'll Need
Before powering on your RS-UV3A, gather these essentials:
1. **Antenna** or 50Ω dummy load
2. **Power source** (one of the following):
- USB cable and USB power supply/computer
- 9V battery
- 12V DC wall adapter (5.5×2.1mm barrel connector)
3. **Speaker** (or headphones)
4. **Microphone** (electret type)
5. **PTT switch** (momentary contact)
## Minimum Connections
### 1. Antenna
Connect a suitable antenna or 50Ω load to the SMA jack. The RS-UV3A is tolerant of antenna mismatches (even open or short circuits), but a well-matched antenna gives best performance and equipment longevity.
:::caution[Never transmit without a load]
While the RS-UV3A can survive momentary antenna mismatches, always connect an antenna or dummy load before transmitting.
:::
### 2. Power
You have several options for powering the RS-UV3A:
| Method | Voltage | Notes |
|--------|---------|-------|
| **USB** | 5V | Powers board and provides serial |
| **VIN Jack** | 3.516V | 5.5×2.1mm barrel, center positive |
| **PW Header** | 3.516V | For custom installations |
The RS-UV3A includes diode protection, so USB and external power can be connected simultaneously. This provides backup power capability—connect a USB power bank to keep operating if primary power fails.
:::tip[Power Switch]
The PW header has a factory-installed jumper. Remove it and wire in a switch for on/off control.
:::
### 3. Audio and PTT
For basic voice operation, connect:
| Connection | Signal | Notes |
|------------|--------|-------|
| **SPKR** | Speaker output | 8Ω speaker, level via VR1 |
| **MIC** | Microphone input | 3.3V bias for electret mic |
| **PTT** | Push-to-talk | Ground to transmit |
The ground pads next to each signal provide convenient connection points.
## Factory Default Settings
Out of the box, your RS-UV3A is configured for:
- **Frequency:** 146.520 MHz (2m FM simplex calling frequency)
- **Mode:** Simplex (TX and RX on same frequency)
- **Power:** High (~200 mW)
- **Squelch:** Level 3
- **Baud Rate:** 19200
At this point, you can listen on 146.52 MHz and transmit by pressing PTT!
## Next Steps
To change frequencies or adjust other parameters, you'll need a serial connection:
- [Serial Setup](/getting-started/serial-setup/) — Connect to a computer for full control
- [Connections Reference](/getting-started/connections/) — Detailed pinouts for all connectors
- [Voice Operation](/guides/voice-operation/) — In-depth guide for voice communications
## Quick Test
1. Power on the RS-UV3A
2. Connect a speaker to hear receiver audio
3. Turn the squelch control (VR1) to hear background noise
4. Tune a handheld radio to 146.52 MHz and transmit
5. You should hear the signal on your RS-UV3A speaker
If you have a serial terminal connected:
```
FS146520 # Confirm frequency
SQ3 # Set squelch level
VU15 # Set volume
```

View File

@ -0,0 +1,247 @@
---
title: Serial Setup
description: Connecting to the RS-UV3A via serial for configuration and control
---
Full control of the RS-UV3A requires a serial connection. This guide covers the various ways to connect and configure serial communication.
## Connection Options
The RS-UV3A provides three serial connection methods:
| Method | Connector | Best For |
|--------|-----------|----------|
| **On-board USB** | Micro USB | Most users—single cable for power and control |
| **JP1 Header** | 0.1" header | Arduino and microcontroller projects |
| **JP2 Header** | 6-pin header | FTDI cable or Raspberry Pi |
| **DB-9 I/O** | DB-9 pins 7/8 | External serial devices |
:::note[Important]
JP1 and JP2 share the same internal serial port (`B1` baud setting). The DB-9 uses a separate serial port (`B2` baud setting).
:::
## On-board USB (Recommended)
The RS-UV3A Rev A includes an FTDI FT230X USB-serial chip that works without drivers on most modern operating systems.
### Setup Steps
1. Connect a micro USB cable to the RS-UV3A
2. Connect the other end to your computer
3. The board powers on and enumerates as a serial port
### Finding the Port
**Linux:**
```bash
ls /dev/ttyUSB*
# or
dmesg | grep tty
```
**macOS:**
```bash
ls /dev/tty.usbserial*
```
**Windows:**
- Open Device Manager
- Look under "Ports (COM & LPT)"
- Note the COM port number (e.g., COM3)
## Terminal Software
Use any serial terminal program to communicate with the RS-UV3A:
| Platform | Options |
|----------|---------|
| Linux | `minicom`, `screen`, `picocom`, `putty` |
| macOS | `screen`, `CoolTerm`, `Serial` |
| Windows | PuTTY, Tera Term, RealTerm |
| Cross-platform | Arduino Serial Monitor, VS Code Serial Monitor |
### Connection Settings
| Parameter | Value |
|-----------|-------|
| Baud Rate | 19200 (default) |
| Data Bits | 8 |
| Parity | None |
| Stop Bits | 1 |
| Flow Control | None |
| Line Ending | Carriage Return (CR) |
### Example: Using screen (Linux/macOS)
```bash
screen /dev/ttyUSB0 19200
```
To exit: `Ctrl-A` then `K`, confirm with `Y`
### Example: Using minicom (Linux)
```bash
minicom -D /dev/ttyUSB0 -b 19200
```
Configure: `Ctrl-A` then `O` → Serial port setup → Hardware flow control: No
## Verifying Connection
Send a command to verify communication:
```
FW
```
Expected response:
```
FW: 2.4A
```
(Version number may vary)
Try a few more commands:
```
F? # Query frequency
SS # Read signal strength
VT # Read voltage
TP # Read temperature
```
## Changing Baud Rate
The RS-UV3A supports multiple baud rates:
| Code | Baud Rate |
|------|-----------|
| 0 | 1200 |
| 1 | 4800 |
| 2 | 9600 |
| 3 | 19200 (default) |
| 4 | 38400 |
| 5 | 57600 |
### Internal Serial (USB/JP1/JP2)
```
B13 # Set to 19200 (default)
B15 # Set to 57600
```
### External Serial (DB-9)
```
B23 # Set to 19200 (default)
B25 # Set to 57600
```
:::caution
Baud rate changes require a **power cycle** to take effect. After changing, you'll need to reconnect your terminal at the new baud rate.
:::
## Arduino Connection
To connect the RS-UV3A to an Arduino:
1. Install headers on JP1 (see [Connections](/getting-started/connections/))
2. Connect:
- RS-UV3A RXD → Arduino TX pin
- RS-UV3A TXD → Arduino RX pin
- RS-UV3A GND → Arduino GND
3. Use SoftwareSerial or hardware UART at 19200 baud
### Arduino Example
```cpp
#include <SoftwareSerial.h>
SoftwareSerial radio(10, 11); // RX, TX
void setup() {
Serial.begin(9600);
radio.begin(19200);
delay(100);
radio.println("F?"); // Query frequency
}
void loop() {
if (radio.available()) {
Serial.write(radio.read());
}
}
```
### Logic Levels
The RS-UV3A accepts 3.3V or 5V logic inputs. Output voltage depends on the VIO pin:
- If Arduino VIN powers the RS-UV3A: outputs match Arduino logic
- For 3.3V devices (like Raspberry Pi): jumper JP1 3.3V to JP2 VIO
## Raspberry Pi Connection
Connect directly to GPIO UART:
| RS-UV3A (JP1/JP2) | Raspberry Pi |
|-------------------|--------------|
| TXD | GPIO 15 (RXD) |
| RXD | GPIO 14 (TXD) |
| GND | GND |
| 3.3V → VIO | (jumper on RS-UV3A) |
Enable UART on Raspberry Pi:
```bash
sudo raspi-config
# → Interface Options → Serial Port
# → Login shell: No
# → Serial hardware: Yes
```
## Command Syntax
All RS-UV3A commands follow these rules:
- **Not case sensitive**`fs146520` equals `FS146520`
- **Terminated by CR** — Carriage return (ASCII 13)
- **Fixed digit counts** — Some parameters require all digits (e.g., `FS146520` not `FS14652`)
- **Query with ?** — Most commands accept `?` to query current value
### Quick Command Test
```
FS146520 # Set frequency to 146.520 MHz
F? # Query current frequency
SQ5 # Set squelch to level 5
TX1 # Transmit for 1 minute max
TX0 # Stop transmitting
```
See the [Command Reference](/reference/commands/) for the complete command list.
## Troubleshooting
### No Response to Commands
1. Check USB cable is data-capable (not charge-only)
2. Verify correct COM port
3. Confirm baud rate is 19200
4. Ensure line ending is CR (not LF or CRLF)
5. Check for loose connections
### Garbled Output
- Wrong baud rate — try 19200, then other rates
- Line ending issues — try CR only
- Noise on serial line — use shorter cables, add bypass capacitors
### USB Not Recognized
- Try a different USB cable
- Try a different USB port
- On Windows, install [FTDI drivers](https://ftdichip.com/drivers/) if needed
- Check `dmesg` output on Linux for errors

View File

@ -0,0 +1,260 @@
---
title: Beacon Operation
description: Using the RS-UV3A as an automatic CW beacon
---
The RS-UV3A has built-in beacon functionality for transmitting periodic CW identification or messages. This is useful for propagation studies, fox hunting, and repeater ID.
## Beacon Types
The RS-UV3A supports two beacon modes:
| Type | Command | Description |
|------|---------|-------------|
| **MCW** (Audio CW) | `BT` | FM carrier with CW-modulated audio tone |
| **True CW** | `BC` | On-off keyed carrier (OOK) |
### MCW vs True CW
**MCW (Modulated CW):**
- Transmits on FM frequencies
- Can be received with any FM receiver (HT, mobile radio)
- Must be used in voice portions of the band
**True CW:**
- Traditional on-off keying
- Requires a CW receiver (SSB/CW mode)
- Can be used in CW/data portions of bands
- Better range due to narrower bandwidth
## Setting Up a Beacon
### Step 1: Set the Beacon Message
```
BMWA2EUJ # Simple callsign
BMWA2EUJ BEACON # Callsign with text
BM? # Query current message
```
Maximum message length is 32 characters. Valid characters:
- Letters AZ
- Numbers 09
- Punctuation: period, comma, question mark, slash
- Space
### Step 2: Set CW Parameters
```
CS15 # 15 WPM (words per minute)
CF0800 # 800 Hz tone frequency
CS? # Query speed
CF? # Query frequency
```
Speed range: 525 WPM
Tone range: 4001300 Hz
### Step 3: Set the Beacon Timer
For MCW beacon:
```
BT120 # Send beacon every 120 seconds (2 minutes)
BT600 # Every 10 minutes (maximum)
BT060 # Every 60 seconds (minimum)
BT000 # Disable beacon
```
For true CW beacon:
```
BC120 # Send CW beacon every 120 seconds
BC000 # Disable beacon
```
:::note
Setting `BT` automatically disables `BC`, and vice versa. Only one beacon type can be active.
:::
## Advanced Beacon Features
### Carrier Insertion (True CW Only)
In true CW mode, you can insert unmodulated carrier segments for DF (direction finding):
```
BM#10WA2EUJ # 10 seconds of carrier, then callsign
BMWA2EUJ#05 # Callsign, then 5 seconds carrier
BM#15WA2EUJ#10 # 15s carrier, call, 10s carrier
```
The `#nn` syntax inserts `nn` seconds of unmodulated carrier (130 seconds).
### Message Repeat
Use `&` to repeat the message continuously during the beacon:
```
BMWA2EUJ & # Repeats "WA2EUJ" until timer expires
```
Everything after `&` is sent once at the end.
### Multi-Channel Beacons
Send beacons on multiple frequencies by storing different frequencies in memory channels:
```
# Setup channel 1
FS144275 # 2m frequency
PW1 # High power
ST1 # Save to channel 1
# Setup channel 2
FS222100 # 1.25m frequency
PW1 # High power
ST2 # Save to channel 2
# Setup channel 3
FS432100 # 70cm frequency
PW0 # Low power (different power level example)
ST3 # Save to channel 3
# Enable multi-channel beacon
MC3 # Cycle through channels 1-3
BT120 # Beacon every 2 minutes
```
The beacon will:
1. Recall channel 1, transmit beacon
2. Wait 2 minutes
3. Recall channel 2, transmit beacon
4. Wait 2 minutes
5. Recall channel 3, transmit beacon
6. Wait 2 minutes
7. Return to channel 1, repeat...
To disable multi-channel mode:
```
MC0 # Single channel beacon
```
## CW Sidetone
Enable sidetone to hear the CW through the speaker:
```
SD1 # Sidetone on
SD0 # Sidetone off (default)
```
The sidetone level follows the DTMF/CW gain setting:
```
GT08 # Default tone gain
GT12 # Louder tones
```
## Manual CW Transmission
Send CW messages on demand:
```
CTWA2EUJ # Send "WA2EUJ" as MCW (audio)
CWWA2EUJ # Send "WA2EUJ" as true CW
```
Maximum manual message length is 28 characters.
## Fox Hunting Setup
For a hidden transmitter (fox hunt):
```
FS146565 # Out-of-the-way frequency
BMFOX # Simple message
BC060 # Beacon every minute
PW0 # Low power for nearby hunting
ST0 # Save settings
```
For longer-range hunts, use true CW with carrier segments:
```
BM#30FOX # 30 seconds carrier + "FOX"
BC120 # Every 2 minutes
PW1 # High power
```
## Propagation Beacon
For propagation studies across multiple bands:
```
# Store frequencies for each band
FS144280
ST1
FS222100
ST2
FS432400
ST3
# Configure beacon
BMWA2EUJ/B QTH # Beacon message with locator
CS12 # Slow speed for weak signal copy
MC3 # Three bands
BC300 # Every 5 minutes
```
## Beacon with External Controller
For more sophisticated beacon applications (APRS beacons, GPS-based beacons), connect an Arduino or Raspberry Pi:
1. Connect MCU to JP1 (serial + control)
2. Use `CT` or `CW` commands to send messages
3. Use `TX1`/`TX0` for transmitter control
4. MCU handles timing and message generation
This allows:
- GPS-derived position beacons
- Temperature/telemetry beacons
- Conditional beacons (only when conditions met)
## Stopping a Beacon
```
BT000 # Disable MCW beacon
BC000 # Disable CW beacon
```
Or simply power cycle the RS-UV3A if beacon was not saved with `ST0`.
## Complete Beacon Example
Setting up a 2m MCW beacon for a propagation test:
```
# Set frequency (beacon sub-band)
FS144280
# Configure CW
CS18 # 18 WPM
CF0750 # 750 Hz tone
SD1 # Enable sidetone to verify
# Set message
BMWA2EUJ/B FN20 # Call + grid square
# Set timing
BT180 # Every 3 minutes
# Set power
PW1 # High power
# Save to channel and as default
ST1 # Save to channel 1
ST0 # Save as power-on default
```
The RS-UV3A will now beacon every 3 minutes until power is removed or beacon is disabled.

View File

@ -0,0 +1,164 @@
---
title: Firmware Upgrade
description: How to update the RS-UV3A firmware using the bootloader
---
The RS-UV3A firmware can be updated using a built-in bootloader. This guide covers the upgrade process.
## Prerequisites
You'll need:
1. **RS-UV3A** connected via USB or serial
2. **Windows PC** (bootloader software is Windows-only)
3. **mikroBootloader 2.3** software
4. **Latest firmware file** (.HEX format) from HobbyPCB
## Getting the Software
### Bootloader Software
Search for and download `mikroBootloader2.3.zip`. This is a standalone tool from MikroElektronika that doesn't require installation.
### Firmware File
Download the latest `RS_UV3_FIRMWARE_VX-X.HEX` from the [HobbyPCB Files](https://sites.google.com/site/hobbypcbrsuv3awiki/) page.
## Upgrade Process
### Step 1: Configure the Bootloader
1. Extract and run `mikroBootloader.exe`
2. Click **Change Settings**
3. Set **Port** to your RS-UV3A's COM port
4. Set **Baud rate** to **115200**
5. Leave other settings at defaults
6. Click **OK**
:::tip[Finding Your COM Port]
On Windows, check Device Manager → Ports (COM & LPT) to find the RS-UV3A.
:::
### Step 2: Enter Bootloader Mode
The RS-UV3A must be listening for the bootloader before you can connect.
**Method 1: BL Command (Normal Operation)**
If your RS-UV3A is working and responsive:
1. Open a terminal program (PuTTY, Tera Term)
2. Connect at 19200 baud
3. Send the command:
```
BL
```
4. **Close the terminal program** (important!)
The RS-UV3A is now waiting for the bootloader. It will wait indefinitely.
**Method 2: ICSP Jumper (If Unresponsive)**
If the RS-UV3A won't respond to commands (corrupted firmware):
1. Power off the RS-UV3A
2. Place a jumper on the ICSP header:
- Pins 1-2 for USB/JP1 serial upload
- Pins 4-5 for DB-9 serial upload
3. Power on the RS-UV3A
The RS-UV3A will boot directly into bootloader mode.
### Step 3: Connect and Upload
1. Ensure your terminal program is **closed**
2. In mikroBootloader, ensure **PIC18** is selected in "Select MCU"
3. Click **Connect**
4. You should see "Connected" in the History window
5. Click **Browse** and select the firmware .HEX file
6. Click **Begin uploading**
7. Wait for the upload to complete (progress bar fills)
### Step 4: Restart
1. Power cycle the RS-UV3A
2. Connect with a terminal program
3. Verify the new version:
```
FW
```
You should see the new firmware version reported.
## Troubleshooting
### "No response from device"
- Verify the COM port is correct
- Ensure the terminal program is closed
- Check that you sent `BL` command successfully
- Try the ICSP jumper method
### Upload Fails Partway
- Check USB cable connection
- Try a different USB port
- Reduce cable length
- Ensure stable power supply
### RS-UV3A Unresponsive After Failed Upload
Use the ICSP jumper method to force bootloader mode, then re-upload.
### Wrong Bootloader Baud Rate
The bootloader always runs at 115200 baud, regardless of the `B1` setting. Don't confuse this with the normal operating baud rate (default 19200).
## After Upgrading
After a successful upgrade:
1. Check version: `FW`
2. Your saved settings should be retained
3. If settings were lost, restore defaults: `FD1`
4. Reconfigure as needed
5. Save settings: `ST0`
## Version History
Check the HobbyPCB wiki for release notes on each firmware version. Typical improvements include:
- New commands
- Bug fixes
- Improved receiver performance
- Additional features
## Important Notes
:::caution[Don't Interrupt the Upload]
Never power off or disconnect during the upload process. This can leave the RS-UV3A in an unresponsive state requiring the ICSP jumper recovery method.
:::
:::note[Windows Only]
The mikroBootloader software only runs on Windows. For Linux/Mac users, a Windows VM or separate Windows PC is required for firmware updates.
:::
### Exiting Bootloader Mode Without Uploading
If you accidentally entered bootloader mode (`BL` command) and want to exit without uploading:
- Simply power cycle the RS-UV3A
- It will boot normally (unless you have an ICSP jumper installed)
## ICSP Header Pinout
For reference, the ICSP header pins (when viewed from the top):
```
1 2
3 4
5 6
```
- **Pins 1-2 jumper:** Bootloader on USB/JP1 serial
- **Pins 4-5 jumper:** Bootloader on DB-9 serial
Remove the jumper after successful upload to resume normal operation.

View File

@ -0,0 +1,220 @@
---
title: Packet & APRS
description: Using the RS-UV3A for packet radio and APRS
---
The RS-UV3A supports packet radio and APRS (Automatic Packet Reporting System) operations when connected to a TNC (Terminal Node Controller) or software modem.
## Overview
The RS-UV3A provides:
- **TX audio input** for packet tones from the TNC
- **RX audio output** for received signals to the TNC
- **PTT control** for keying the transmitter
- **COR output** for carrier-operated relay
## Hardware Connections
### Using the DB-9 I/O Connector
Connect your TNC or sound card modem to the DB-9:
| DB-9 Pin | Signal | TNC Connection |
|----------|--------|----------------|
| 1 | TX Audio In | TNC TX audio out |
| 2 | PTT | TNC PTT output |
| 3 | GND | TNC ground |
| 4 | RX Audio Out | TNC RX audio in |
| 5 | COR | TNC COR/DCD input (optional) |
:::danger[TTL Levels!]
The DB-9 is NOT RS-232! Use only TTL (3.3V/5V) devices or a level converter.
:::
### Audio Level Adjustment
1. **TX Audio:** Adjust VR3 on the board for proper deviation (typically 33.5 kHz for packet)
2. **RX Audio:** Use the `VU` command to set receiver audio level
```
VU15 # Good starting point for DTMF/packet decode
```
## Configuration for Packet
### Basic Setup for 1200 Baud
Standard 2m packet uses 144.39 MHz (APRS) or 145.01 MHz (general packet):
```
FS144390 # APRS frequency
AF0 # Wide audio filter for data
DP0 # Disable pre/de-emphasis for flat response
SQ3 # Moderate squelch
ST0 # Save as defaults
```
### APRS Digipeater/iGate Configuration
For unattended operation:
```
FS144390 # 144.39 MHz
TM0 # No tone squelch
SQ3 # Open on moderately weak signals
AF0 # Wide audio bandwidth
DP0 # Flat audio response
TO000 # Disable timeout (TNC controls TX)
ST0 # Save settings
```
## COR (Carrier Operated Relay)
The DB-9 pin 5 provides a COR output:
- **Low (ground)** when squelch is open
- **Open circuit** when squelch is closed
This can signal the TNC that a carrier is present, useful for collision avoidance in packet operations.
### COR Inhibit
After transmitting, there's often a burst of noise as the receiver recovers. Use COR inhibit to prevent false DCD triggers:
```
CO0100 # 100 ms COR inhibit after TX
CO0200 # 200 ms inhibit
CO? # Query current setting
```
## External Serial for TNC Control
If your TNC needs to send commands to the RS-UV3A, configure the DB-9 serial:
```
EX1 # Enable serial on E_TX/E_RX pins
B23 # Set external serial to 19200 baud
```
Now pins 7 (E_TX) and 8 (E_RX) function as a TTL serial port.
## Using with Software TNCs
### Direwolf on Linux
Connect the RS-UV3A to a USB sound card:
```
# direwolf.conf
ADEVICE plughw:1,0
CHANNEL 0
MYCALL N0CALL-1
MODEM 1200
PTT /dev/ttyUSB0 RTS # If using RS-UV3A serial for PTT
```
### SoundModem on Windows
1. Connect RS-UV3A audio to sound card line in/out
2. Configure SoundModem with your sound card
3. Use a serial port (or VOX) for PTT
## Channel Bandwidth
Standard packet uses 25 kHz channel spacing:
```
BW1 # 25 kHz bandwidth (default)
```
For narrow-band packet environments:
```
BW0 # 12.5 kHz bandwidth
```
:::note
Bandwidth changes require a power cycle to take effect.
:::
## Multiple Frequency Operation
Store different packet frequencies in memory channels:
```
FS144390 # APRS
ST1 # Save to channel 1
FS145010 # General packet
ST2 # Save to channel 2
FS144990 # Alternate
ST3 # Save to channel 3
```
Switch channels via serial:
```
RC1 # Recall APRS frequency
RC2 # Recall general packet
```
## Troubleshooting Packet
### Not Decoding Packets
1. **Check audio level:** `VU15` is a good starting point
2. **Disable filters:** `AF0` and `DP0` for flat response
3. **Check squelch:** `SQ2` or `SQ3` for reliable opening
4. **Verify frequency:** `F?` to confirm
### TX Not Working
1. **Verify PTT:** Ground pin 2 should key TX
2. **Check audio:** Use a speaker to verify TNC is sending tones
3. **Adjust deviation:** VR3 controls TX audio level
### Audio Distortion
1. **TX too hot:** Turn down TNC output or VR3
2. **RX overdriven:** Reduce `VU` setting
3. **Check filters:** Try `AF1`/`AF0`, `DP1`/`DP0` combinations
## 9600 Baud Considerations
The RS-UV3A Rev A can support 9600 baud packet, but requires careful setup:
- Use wide bandwidth mode (`BW1`)
- Disable all audio filtering (`AF0`, `HP0`, `DP0`)
- Adjust audio levels carefully—9600 baud is more sensitive to deviation errors
- VR3 adjustment is critical for proper deviation
:::caution
9600 baud operation is more demanding than 1200 baud. Some experimentation may be required for reliable operation.
:::
## Complete APRS Setup Example
For a typical APRS tracker/digipeater:
```
# Set frequency and save
FS144390 # APRS frequency
# Optimize for data
AF0 # Wide audio
DP0 # Flat response
# Squelch and volume
SQ3 # Moderate squelch
VU15 # Good decode level
# TX settings
PW1 # High power
TO060 # 60 second timeout (safety)
CO0150 # 150 ms COR inhibit
# Save as defaults
ST0
```
Then connect your TNC, configure it with your callsign and path, and you're ready for APRS!

View File

@ -0,0 +1,258 @@
---
title: Repeater & Satellite
description: Using two RS-UV3A boards for full duplex operation
---
A single RS-UV3A cannot transmit and receive simultaneously. However, two RS-UV3As can be combined to create a full-duplex system for repeater or satellite communications.
## Full Duplex Configuration
### Hardware Setup
You'll need:
- Two RS-UV3A boards
- Two antennas (with sufficient isolation)
- Shared power supply
- Audio interconnection between boards
**Basic wiring:**
| RX Board | TX Board |
|----------|----------|
| RX Audio Out (DB-9 pin 4) | TX Audio In (DB-9 pin 1) |
| COR Out (DB-9 pin 5) | PTT (DB-9 pin 2) |
| Ground | Ground |
The COR-to-PTT connection automatically keys the TX board when the RX board hears a signal.
### Frequency Configuration
**Repeater example (2m input, 70cm output):**
*RX Board:*
```
FS146940 # 2m input frequency
TF10000 # 100.0 Hz CTCSS (input tone)
TM2 # Require tone to open squelch
SQ4 # Moderate squelch
```
*TX Board:*
```
FS446100 # 70cm output frequency
TF10000 # 100.0 Hz CTCSS (output tone) - optional
TM1 # Encode tone on TX
PW1 # High power
```
## Repeater Features
The RS-UV3A includes several features specifically for repeater operation.
### Hang Time
Keep the transmitter keyed briefly after the input signal drops:
```
HT1000 # 1000 ms (1 second) hang time
HT2000 # 2 second hang time
HT0000 # No hang time (immediate drop)
HT? # Query current setting
```
Range: 05000 ms
### CW Identification
FCC requires repeaters to identify at least every 10 minutes. Configure automatic CW ID:
```
CLWA2EUJ # Set callsign (15 characters max)
IT600 # ID every 600 seconds (10 minutes)
CS15 # 15 WPM CW speed
CF0750 # 750 Hz CW tone
```
The CW ID is sent after the current transmission ends, not interrupting conversations.
### Timeout Timer
Prevent stuck transmitters from tying up the repeater:
```
TO180 # 3 minute timeout
TG TIMEOUT # Message to send on timeout
```
When a user exceeds the timeout, the repeater sends the timeout message in CW and unkeys.
### Courtesy Beep
Signal users that the repeater is ready for the next transmission:
```
CB0 # No courtesy beep (default)
CB1 # Low tone beep
CB2 # High tone beep
CB3 # High/low beep
CB4 # Two-tone beep
```
The courtesy beep sounds after the hang time expires.
### COR Inhibit
Prevent receiver squelch noise from keying the transmitter after TX drops:
```
CO0200 # 200 ms inhibit after TX
```
## Complete Repeater Example
**RX Board Configuration:**
```
# Frequency and tones
FS146940 # Input frequency
TF10000 # 100.0 Hz CTCSS
TM2 # Tone squelch (require tone to access)
# Squelch
SQ4 # Moderate squelch
TSM # Medium tone sensitivity
# Audio
VU18 # RX audio level (to TX board)
AF1 # Audio filter on
# Save settings
ST0
```
**TX Board Configuration:**
```
# Frequency and tones
FS146340 # Output frequency (600 kHz down)
TF10000 # 100.0 Hz CTCSS
TM1 # Encode tone on TX
# ID and timeout
CLWA2EUJ/R # Repeater callsign
IT600 # ID every 10 minutes
CS15 # CW speed
TO180 # 3 minute timeout
TGTIME # Timeout message
# Hang time and courtesy
HT1500 # 1.5 second hang time
CB2 # High tone courtesy beep
CO0150 # COR inhibit
# Power
PW1 # High power
# Save settings
ST0
```
## Satellite Communications
For satellite work, configure one RS-UV3A for uplink and one for downlink.
**Example for a 2m uplink / 70cm downlink satellite:**
*Uplink Board:*
```
FS145980 # Uplink frequency
TM1 # Encode any required tone
PW1 # High power for satellite
```
*Downlink Board:*
```
FS435800 # Downlink frequency
SQ2 # Sensitive squelch
VU20 # Good volume for weak signals
```
### Doppler Considerations
Satellite frequencies shift due to Doppler effect. You'll need to adjust frequencies during the pass:
- Use a tracking program to calculate Doppler
- Send frequency commands via serial as the pass progresses
- Or use an Arduino to automate frequency updates
```
# Example Doppler correction commands
FR435804 # Adjust downlink as satellite approaches
FR435800 # Nominal at TCA
FR435796 # Adjust as satellite recedes
```
## Cross-Band Repeat
A simpler configuration where you repeat between two bands:
**2m to 70cm:**
*2m Board:*
```
FS146520 # 2m simplex
COR Out → TX Board PTT
RX Audio → TX Board TX Audio
```
*70cm Board:*
```
FS446000 # 70cm simplex
TX triggered by 2m board COR
```
This allows extending range between a 2m mobile and a 70cm HT, for example.
## Important Considerations
### Antenna Isolation
For full-duplex operation, the TX and RX antennas must have sufficient isolation to prevent the TX signal from desensing or damaging the RX:
- **Physical separation:** Different poles, opposite sides of building
- **Frequency separation:** Different bands provide natural isolation
- **Filtering:** Cavity filters or duplexers for same-band operation
:::danger[Same-Band Full Duplex]
Operating a repeater with input and output on the same band (e.g., both 2m) requires expensive cavity duplexers. The RS-UV3A alone cannot provide sufficient isolation.
:::
### Power Supply
Both boards can share a power supply, but ensure adequate current capacity:
- Two boards: ~3.5W maximum during TX
- If using RS-UVPA amplifiers: plan for up to 30W total
### Cooling
Extended TX duty cycles may require additional cooling. The RS-UV3A will read its temperature:
```
TP # Read PCB temperature
```
If temperatures exceed 60°C, consider adding airflow or heatsinking.
## Controller Integration
For more sophisticated repeater control, interface both RS-UV3As to a repeater controller or Raspberry Pi:
1. Connect both boards via USB (each gets its own COM port)
2. Use serial commands for:
- Frequency changes
- Power control
- Status monitoring
- Remote programming
This enables features like:
- DTMF remote control
- Internet linking (EchoLink, IRLP)
- Weather announcements
- Scheduled operations

View File

@ -0,0 +1,270 @@
---
title: Voice Operation
description: Using the RS-UV3A for voice communications
---
This guide covers setting up the RS-UV3A for voice communications, including simplex operation, repeater access, and tone squelch configuration.
## Basic Voice Setup
For voice operation you need:
1. **Antenna** connected to SMA jack
2. **Power** via USB or VIN
3. **Speaker** connected to SPKR pads or SPK/MIC jack
4. **Microphone** (electret) connected to MIC pad
5. **PTT switch** connected to PTT pad
## Setting Frequencies
### Simplex Operation
For simplex (same frequency TX and RX), use the `FS` command:
```
FS146520 # 146.520 MHz (2m FM calling)
FS223500 # 223.500 MHz (1.25m FM calling)
FS446000 # 446.000 MHz (70cm FM calling)
```
:::tip[Frequency Format]
Always use 6 digits for frequency in kHz. For example, 146.52 MHz = `146520` kHz.
:::
### Repeater Operation (Split Frequencies)
Use the `FD` (down) or `FU` (up) commands for standard repeater offsets:
```
FD146940 # RX 146.940, TX 146.340 (600 kHz down)
FU147060 # RX 147.060, TX 147.660 (600 kHz up)
```
Standard offsets by band:
- **2m:** ±600 kHz
- **1.25m:** ±1600 kHz
- **70cm:** ±5000 kHz
For non-standard splits, set TX and RX separately:
```
FR146940 # Set RX frequency
FT146340 # Set TX frequency
```
## Volume and Audio
### Receiver Volume
The volume can be adjusted two ways:
1. **Hardware:** Turn VR1 potentiometer on the board
2. **Software:** Use the `VU` command (039, in 1 dB steps)
```
VU15 # Set volume to 15 (recommended for DTMF decode)
VU20 # Increase volume
VU? # Query current volume
```
### Audio Filters
The RS-UV3A has switchable audio filters:
| Command | Filter | Passband |
|---------|--------|----------|
| `AF1` | Low-pass ON | 3002500 Hz |
| `AF0` | Low-pass OFF | 3005500 Hz |
| `HP1` | High-pass ON | Higher low corner |
| `HP0` | High-pass OFF | Lower low corner |
For natural-sounding voice, use the defaults (`AF1`, `HP1`). For data modes, you may want wider audio (`AF0`).
### Microphone Gain
Adjust microphone sensitivity with the `GM` command:
```
GM10 # Default gain (10)
GM15 # Maximum gain
GM05 # Lower gain for hot mics
GM? # Query current setting
```
Range is 015 in 2 dB steps.
## Squelch Settings
### RSSI Squelch
The basic squelch uses received signal strength:
```
SQ3 # Default, opens on moderate signals
SQ0 # Always open (listen to noise)
SQ9 # Very tight (strong signals only)
SQ? # Query current level
```
For extended range (weak signal work), enable high squelch range:
```
SR1 # Add 30 dB to squelch setting
SR0 # Normal range (default)
```
### Checking Squelch Status
Query whether the squelch is currently open:
```
SO # Returns SO: 0 (closed) or SO: 1 (open)
```
## Tone Squelch (CTCSS/PL)
Many repeaters require CTCSS (Continuous Tone-Coded Squelch System) tones.
### Setting the Tone Frequency
```
TF10000 # 100.0 Hz (multiply desired Hz by 100)
TF13180 # 131.8 Hz
TF08850 # 88.5 Hz
TF? # Query current tone
```
Common CTCSS frequencies: 67.0, 71.9, 74.4, 77.0, 79.7, 82.5, 85.4, 88.5, 91.5, 94.8, 97.4, 100.0, 103.5, 107.2, 110.9, 114.8, 118.8, 123.0, 127.3, 131.8, 136.5, 141.3, 146.2, 151.4, 156.7, 162.2, 167.9, 173.8, 179.9, 186.2, 192.8, 203.5
### Tone Mode
Control when tones are transmitted/required:
```
TM0 # Off (default)
TM1 # TX only (encode tone on transmit)
TM2 # TX and RX (encode + tone squelch)
```
- **TM1:** Use when the repeater requires a PL tone to access but you want to hear all traffic
- **TM2:** Use when you only want to hear stations with your tone (tone squelch)
### Tone Squelch Sensitivity
If tone squelch is unreliable:
```
TSL # Low sensitivity (default)
TSM # Medium sensitivity
TSH # High sensitivity
```
## Transmitting
### Manual PTT
Ground the PTT pad or press the button on a speaker-mic. The TX LED illuminates during transmission.
### Software Control
Transmit via serial command:
```
TX1 # Transmit with 1 minute timeout
TX2 # Transmit with 2 minute timeout
TX5 # Transmit with 5 minute timeout
TX0 # Stop transmitting immediately
```
:::caution[TX0 Override]
`TX0` will stop transmission even if the hardware PTT line is still held low.
:::
### Timeout Timer
Prevent excessive transmissions with the timeout timer:
```
TO120 # 120 second (2 minute) timeout
TO300 # 5 minute timeout
TO000 # Disable timeout
TO? # Query current setting
```
When timeout occurs, the RS-UV3A sends a configurable CW message and unkeys:
```
TG TO # Set timeout message to "TO"
TGTIME # Set timeout message to "TIME"
```
## TX Power
The RS-UV3A has two power levels:
```
PW1 # High power (~200 mW, 23 dBm)
PW0 # Low power (~10 mW, 10 dBm)
PW? # Query current setting
```
## VOX Operation
The RS-UV3A includes voice-operated transmit (VOX):
```
VX1 # Enable VOX
VX0 # Disable VOX (default)
VL0 # High sensitivity
VL1 # Medium sensitivity (default)
VL2 # Low sensitivity
```
:::warning[Don't use VOX with speaker-mic]
VOX will key the transmitter when it hears audio from the speaker. Only use VOX with headphones or when the speaker is isolated from the microphone.
:::
## Pre/De-emphasis
For standard FM voice, keep pre-emphasis and de-emphasis enabled:
```
DP1 # Enabled (default)
DP0 # Disabled (for some data modes)
```
## Signal Monitoring
Read current signal conditions:
```
SS # Signal strength in dBm
SN # Noise level (lower = cleaner signal)
SO # Squelch state (0 = closed, 1 = open)
```
## Complete Voice Setup Example
Setting up for a typical 2m repeater (146.94 MHz, -600 kHz offset, 100.0 Hz PL):
```
FD146940 # 146.94 RX, 146.34 TX
TF10000 # 100.0 Hz CTCSS
TM1 # Encode tone on TX only
SQ4 # Moderate squelch
VU18 # Comfortable volume
PW1 # High power
TO180 # 3 minute timeout
ST0 # Save as power-on default
```
Then to recall these settings after power-up:
```
RC0 # Not needed if saved as defaults
```
Or save to a memory channel:
```
ST1 # Save to channel 1
RC1 # Recall channel 1
```

View File

@ -0,0 +1,87 @@
---
title: RS-UV3A FM Transceiver
description: Documentation for the HobbyPCB RS-UV3A VHF/UHF Tri-Band FM Transceiver
template: splash
hero:
tagline: A versatile tri-band FM transceiver for 2m, 1.25m, and 70cm amateur radio bands
image:
file: ../../assets/radio-dark.svg
actions:
- text: Get Started
link: /getting-started/
icon: right-arrow
variant: primary
- text: Command Reference
link: /reference/commands/
icon: external
---
import { Card, CardGrid } from '@astrojs/starlight/components';
## Overview
The **RS-UV3A** is a compact FM transceiver board designed by Jim Veatch (WA2EUJ) at HobbyPCB. It provides a complete radio solution for voice, data, and beacon applications across three amateur radio bands.
<CardGrid stagger>
<Card title="Tri-Band Coverage" icon="star">
- **2m Band:** 136174 MHz
- **1.25m Band:** 200260 MHz
- **70cm Band:** 400520 MHz
</Card>
<Card title="Integrated USB" icon="laptop">
On-board FTDI USB-serial chip provides driverless connection to most operating systems. Power and control through a single USB cable.
</Card>
<Card title="Wide Voltage Range" icon="setting">
Built-in buck-boost DC-DC converter accepts 3.5V to 16V input. Run from USB, 9V battery, or 12V wall adapter.
</Card>
<Card title="Arduino Ready" icon="puzzle">
Direct headers for Arduino connection. Compatible with Raspberry Pi and other single-board computers.
</Card>
</CardGrid>
## Applications
### Voice Communications
- Single or multi-channel RX/TX transceiver
- Repeater and remote base operation
- Base station, mobile, or portable use
### Data Communications
- 1200 baud packet radio
- APRS with external TNC
- DTMF encode and decode
- CW (Morse code)
### Specialized Uses
- CW and audio beacons
- Signal measurement and test equipment
- Direction finding (pseudo-doppler DF)
- Repeater controller (using two boards)
- Satellite uplink/downlink
## Quick Specs
| Parameter | Value |
|-----------|-------|
| RX Sensitivity | < -120 dBm (12 dB SINAD) |
| Output Power | > 200 mW (23 dBm) |
| TX Spurious | < -50 dBc |
| DC Power | 3.516V |
| Current | 1.6W max |
| Board Size | 120 × 75 mm |
## Rev A Features
The Rev A board adds several improvements over previous revisions:
- **On-board USB-Serial:** Driverless FTDI chip for plug-and-play operation
- **Wide-range DC-DC:** Buck-boost converter accepts 3.5V to 16V input
- **Power Output:** Optional power on DB-9 pin 6 for accessories
- **LED Indicators:** Power, TX, and user-definable status LED
---
<p style="text-align: center; margin-top: 2rem;">
<em>Designed by Jim Veatch, WA2EUJ</em><br/>
<a href="https://sites.google.com/site/hobbypcbrsuv3awiki/">HobbyPCB Wiki</a>
</p>

View File

@ -0,0 +1,259 @@
---
title: Audio Commands
description: Volume, filters, and gain control commands for the RS-UV3A
---
## VU Volume
Sets the receiver audio volume.
### Syntax
```
VUnn
VU?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nn` | 0039 | Volume level in 1 dB steps |
### Default
12
### Examples
```
VU15 # Set volume to 15
VU25 # Increase volume
VU? # Query current volume
```
### Notes
- Both digits are required (e.g., `VU05` not `VU5`)
- Volume 1015 recommended for DTMF decoding
- Also affects audio on I/O connector pin 4
- Hardware adjustment available via VR1 potentiometer
### Related Commands
- [`GM`](#gm-microphone-gain) — Microphone gain
- [`AF`](#af-audio-low-pass) — Audio low-pass filter
- [`HP`](#hp-audio-high-pass) — Audio high-pass filter
---
## AF Audio Low-Pass Filter
Enables or disables the audio low-pass filter.
### Syntax
```
AFn
AF?
```
### Parameters
| Value | Filter | Passband |
|-------|--------|----------|
| 0 | OFF | 3005500 Hz |
| 1 | ON | 3002500 Hz |
### Default
1 (ON)
### Examples
```
AF1 # Enable filter (voice mode)
AF0 # Disable filter (wide audio for data)
AF? # Query current setting
```
### Notes
- Use `AF1` for normal voice communications
- Use `AF0` for packet radio, wider audio bandwidth needs
- Filter reduces high-frequency noise on weak signals
---
## HP Audio High-Pass Filter
Enables or disables the audio high-pass filter.
### Syntax
```
HPn
HP?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | Low-frequency corner lower |
| 1 | Low-frequency corner higher |
### Default
1
### Examples
```
HP1 # Enable high-pass (default)
HP0 # Disable for lower audio response
HP? # Query current setting
```
### Notes
- Affects the low-frequency cutoff of the audio path
- For voice, `HP1` is typically preferred
- For data modes, experiment with `HP0` if low tones are important
---
## GM Microphone Gain
Sets the microphone input gain.
### Syntax
```
GMnn
GM?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nn` | 0015 | Gain level in 2 dB steps |
### Default
10
### Examples
```
GM10 # Default gain
GM15 # Maximum gain (hot microphone)
GM05 # Reduced gain (loud talker or line input)
GM? # Query current setting
```
### Notes
- Both digits required (`GM05` not `GM5`)
- Affects microphone input on MIC pad and SPK/MIC jack
- Does not affect TX audio input on I/O connector pin 1
- Electret mic element powered by 3.3V bias (R6)
### Adjusting for Proper Deviation
1. Set GM to default (10)
2. Transmit and monitor on another receiver
3. If audio is weak, increase GM
4. If audio is distorted, decrease GM
5. Target: 35 kHz deviation for voice
---
## GT Tone Gain
Sets the gain for CW and DTMF transmitted tones.
### Syntax
```
GTnn
GT?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nn` | 0015 | Gain level in 2 dB steps |
### Default
8
### Examples
```
GT08 # Default tone gain
GT12 # Louder tones
GT04 # Quieter tones
GT? # Query current setting
```
### Notes
- Affects CW identification tones
- Affects DTMF transmission tones
- Affects sidetone if enabled (`SD1`)
- Adjust to achieve proper deviation (typically 3 kHz for tones)
### Related Commands
- [`SD`](/reference/commands/dtmf-cw/#sd-sidetone) — Enable/disable sidetone
- [`CS`](/reference/commands/dtmf-cw/#cs-cw-speed) — CW speed
- [`DD`](/reference/commands/dtmf-cw/#dd-dtmf-duration) — DTMF duration
---
## DP Pre/De-emphasis
Enables or disables TX pre-emphasis and RX de-emphasis.
### Syntax
```
DPn
DP?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | Pre/de-emphasis OFF (flat response) |
| 1 | Pre/de-emphasis ON (standard FM) |
### Default
1 (ON)
### Examples
```
DP1 # Standard FM voice mode
DP0 # Flat response for data
DP? # Query current setting
```
### Notes
- Standard FM uses pre-emphasis on TX and de-emphasis on RX
- Pre-emphasis boosts high frequencies on transmit
- De-emphasis cuts high frequencies on receive
- For packet radio, `DP0` may provide flatter audio response
- 9600 baud packet typically requires `DP0`
### Related Commands
- [`AF`](#af-audio-low-pass) — Audio low-pass filter
- [`HP`](#hp-audio-high-pass) — Audio high-pass filter

View File

@ -0,0 +1,275 @@
---
title: Beacon Commands
description: Automatic beacon and identification commands for the RS-UV3A
---
## BC CW Beacon Timer
Sets the interval for true CW beacon transmissions.
### Syntax
```
BCnnn
BC?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nnn` | 060600 | Interval in seconds |
| | 000 | Disable beacon |
### Default
000 (disabled)
### Examples
```
BC120 # Beacon every 2 minutes
BC300 # Beacon every 5 minutes
BC600 # Beacon every 10 minutes (max)
BC000 # Disable beacon
BC? # Query current setting
```
### Notes
- All 3 digits required
- Setting `BC` automatically disables `BT` (MCW beacon)
- True CW requires a CW/SSB receiver
- Beacon message set by `BM` command
### Related Commands
- [`BT`](#bt-mcw-beacon-timer) — MCW beacon timer
- [`BM`](#bm-beacon-message) — Beacon message
---
## BT MCW Beacon Timer
Sets the interval for modulated CW (audio) beacon transmissions.
### Syntax
```
BTnnn
BT?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nnn` | 060600 | Interval in seconds |
| | 000 | Disable beacon |
### Default
000 (disabled)
### Examples
```
BT120 # Beacon every 2 minutes
BT180 # Beacon every 3 minutes
BT000 # Disable beacon
BT? # Query current setting
```
### Notes
- All 3 digits required
- Setting `BT` automatically disables `BC` (CW beacon)
- MCW can be received with any FM receiver
- Beacon message set by `BM` command
---
## BM Beacon Message
Sets the text message for beacon transmissions.
### Syntax
```
BM<text>
BM?
```
### Parameters
| Parameter | Description |
|-----------|-------------|
| `<text>` | Message up to 32 characters |
### Default
'RS-UV3'
### Special Characters (True CW only)
| Character | Description |
|-----------|-------------|
| `#nn` | Insert nn seconds of carrier (0130) |
| `&` | Repeat message from beginning |
### Examples
```
BMWA2EUJ # Simple callsign
BMWA2EUJ/B FN20 # Callsign with grid
BM#10WA2EUJ # 10 sec carrier, then callsign
BMWA2EUJ & # Repeat callsign continuously
BM? # Query current message
```
### Notes
- `#nn` carrier insertion only works with `BC` (true CW)
- Everything after `&` is sent once at the end
- Standard Morse characters supported
---
## MC Multi-Channel Beacons
Configures beacon to cycle through multiple memory channels.
### Syntax
```
MCn
MC?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | Single channel beacon |
| 29 | Cycle through channels 1 to n |
### Default
0 (single channel)
### Examples
```
MC0 # Single channel beacon
MC3 # Cycle channels 1, 2, 3
MC5 # Cycle channels 1 through 5
MC? # Query current setting
```
### Operation
With `MC3` and `BT120`:
1. Recall channel 1, send beacon
2. Wait 120 seconds
3. Recall channel 2, send beacon
4. Wait 120 seconds
5. Recall channel 3, send beacon
6. Wait 120 seconds
7. Return to channel 1, repeat...
### Notes
- Store different frequencies/power levels in memory channels first
- Enables multi-band beacons from single RS-UV3A
- Each channel can have different TX power (`PW` setting)
### Setup Example
```
# Configure three beacon frequencies
FS144280
PW1
ST1
FS222100
PW1
ST2
FS432100
PW0
ST3
# Enable multi-channel
MC3
BT180
```
---
## IT ID Timer
Sets the automatic CW identification timer for repeater applications.
### Syntax
```
ITnnn
IT?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nnn` | 000500 | Interval in seconds |
| | 000 | Disable auto-ID |
### Default
000 (disabled)
### Examples
```
IT600 # ID every 10 minutes
IT300 # ID every 5 minutes
IT000 # Disable auto-ID
IT? # Query current setting
```
### Notes
- FCC requires repeater ID at least every 10 minutes
- ID is sent after current transmission ends
- Uses callsign set by `CL` command
- CW parameters from `CS` and `CF`
- All 3 digits required
### Related Commands
- [`CL`](/reference/commands/dtmf-cw/#cl-callsign) — Set callsign
- [`ID`](#id-send-id) — Manual ID
---
## ID Send ID
Immediately sends the stored callsign as CW.
### Syntax
```
ID
```
### Notes
- Sends callsign from `CL` command
- Automatically keys TX if needed
- Uses MCW (audio CW on FM carrier)
- Speed and tone from `CS` and `CF`
### Related Commands
- [`CL`](/reference/commands/dtmf-cw/#cl-callsign) — Set callsign
- [`IT`](#it-id-timer) — Automatic ID timer

View File

@ -0,0 +1,367 @@
---
title: DTMF & CW Commands
description: DTMF tone and Morse code commands for the RS-UV3A
---
## DD DTMF Duration
Sets the duration of DTMF tones.
### Syntax
```
DDnnnn
DD?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nnnn` | 00502000 | Duration in milliseconds |
### Default
0500 (500 ms)
### Examples
```
DD0500 # 500 ms (default)
DD0100 # 100 ms (fast)
DD1000 # 1 second
DD? # Query current setting
```
### Notes
- All 4 digits required
- Includes both tone and inter-digit pause
- Longer durations improve decode reliability
- Shorter durations allow faster dialing
---
## DR DTMF Detector
Enables or disables the DTMF tone detector.
### Syntax
```
DRn
DR?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | DTMF detection OFF |
| 1 | DTMF detection ON |
### Default
0 (OFF)
### Examples
```
DR1 # Enable DTMF detection
DR0 # Disable DTMF detection
DR? # Query current state
```
### Output
When enabled and a DTMF tone is detected, the hex value is sent via serial:
- Tones 09 → `30``39` (ASCII '0''9')
- Tone A → `41`
- Tone B → `42`
- Tone C → `43`
- Tone D → `44`
- Tone * → `2A`
- Tone # → `23`
### Notes
- DTMF detection works best with `VU` around 1015
- Used for remote control applications
- Can trigger Arduino DOUT pin (see `AO2`)
---
## DS Send DTMF
Sends a string of DTMF tones.
### Syntax
```
DS<string>
```
### Parameters
| Character | Description |
|-----------|-------------|
| 09 | Numeric tones |
| AD | Letter tones |
| * | Star |
| # | Pound |
| other | Pause (inter-digit gap) |
### Examples
```
DS123 # Send "1", "2", "3"
DS*123# # Send "*123#"
DSA1B2C3D4 # Send "A1B2C3D4"
DS1 2 3 # Send "1", pause, "2", pause, "3"
```
### Notes
- Maximum 28 characters
- Automatically keys TX if not already transmitting
- Duration per tone set by `DD` command
- Non-DTMF characters create pauses
---
## CT Send MCW
Sends text as modulated CW (FM audio tones).
### Syntax
```
CT<text>
```
### Examples
```
CTCQ CQ CQ # Send "CQ CQ CQ" as audio CW
CTWA2EUJ # Send callsign
CT73 DE WA2EUJ # Send message
```
### Notes
- MCW = Morse code as audio tones on FM carrier
- Can be received with any FM receiver
- Speed set by `CS` command
- Tone frequency set by `CF` command
- Maximum 28 characters
- Automatically keys TX
---
## CW Send CW
Sends text as true CW (on-off keyed carrier).
### Syntax
```
CW<text>
```
### Examples
```
CWCQ CQ CQ # Send "CQ CQ CQ" as true CW
CWWA2EUJ # Send callsign
```
### Notes
- True CW = carrier keyed on/off
- Requires CW/SSB receiver to decode
- Can use CW portions of bands
- Speed set by `CS` command
- Maximum 28 characters
- Automatically keys TX
---
## CF CW Frequency
Sets the audio tone frequency for MCW and sidetone.
### Syntax
```
CFnnnn
CF?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nnnn` | 04001300 | Frequency in Hz |
### Default
0650 (650 Hz)
### Examples
```
CF0650 # 650 Hz (default)
CF0800 # 800 Hz
CF1000 # 1000 Hz
CF? # Query current frequency
```
### Notes
- All 4 digits required
- Affects MCW transmission and sidetone
- True CW (`CW` command) uses carrier, not this tone
- Choose frequency that's comfortable to listen to
---
## CS CW Speed
Sets the Morse code sending speed.
### Syntax
```
CSnn
CS?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nn` | 0525 | Speed in words per minute |
### Default
22 WPM
### Examples
```
CS15 # 15 WPM
CS22 # 22 WPM (default)
CS12 # 12 WPM (slow)
CS? # Query current speed
```
### Notes
- Both digits required (`CS15` not `CS1`)
- Affects `CT`, `CW`, `ID`, and beacon messages
- Standard word is "PARIS" (50 elements)
---
## CL Callsign
Sets the callsign for CW identification.
### Syntax
```
CL<text>
CL?
```
### Parameters
| Parameter | Description |
|-----------|-------------|
| `<text>` | Callsign, up to 15 characters |
### Default
'RS-UV3'
### Examples
```
CLWA2EUJ # Set callsign
CLWA2EUJ/R # Callsign with suffix
CL? # Query current callsign
```
### Notes
- Used by `ID` command and `IT` timer
- Maximum 15 characters
- Typically your amateur radio callsign
---
## ID Send ID
Sends the stored callsign as CW.
### Syntax
```
ID
```
### Examples
```
ID # Send callsign in MCW
```
### Notes
- Sends callsign set by `CL` command
- Automatically keys TX
- Uses speed and frequency from `CS`/`CF`
- No parameters required
### Related Commands
- [`CL`](#cl-callsign) — Set callsign
- [`IT`](#it-id-timer) — Automatic ID timer
---
## SD Sidetone
Enables or disables CW/DTMF sidetone through the speaker.
### Syntax
```
SDn
SD?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | Sidetone OFF |
| 1 | Sidetone ON |
### Default
0 (OFF)
### Examples
```
SD1 # Enable sidetone
SD0 # Disable sidetone
SD? # Query current state
```
### Notes
- Allows monitoring CW and DTMF transmissions
- Sidetone level controlled by `GT` command
- Frequency controlled by `CF` command (for CW)

View File

@ -0,0 +1,134 @@
---
title: Frequency Commands
description: Commands for setting and measuring frequencies on the RS-UV3A
---
## F Set Frequency
Sets the transmit and/or receive frequency.
### Syntax
```
Fz nnnnnn
F?
```
### Parameters
| Parameter | Description |
|-----------|-------------|
| `z` | Mode selector (see below) |
| `nnnnnn` | Frequency in kHz (all 6 digits required) |
**Mode selectors:**
| Mode | Description |
|------|-------------|
| `R` | Set RX frequency only |
| `T` | Set TX frequency only |
| `S` | Set both TX and RX to same frequency (simplex) |
| `D` | Set RX to frequency, TX to frequency minus standard offset |
| `U` | Set RX to frequency, TX to frequency plus standard offset |
**Standard repeater offsets:**
- 2m band: 600 kHz
- 1.25m band: 1600 kHz
- 70cm band: 5000 kHz
### Examples
```
FS146520 # Simplex on 146.520 MHz
FD146940 # RX 146.940, TX 146.340 (-600 kHz)
FU147060 # RX 147.060, TX 147.660 (+600 kHz)
FR223500 # Set RX only to 223.500 MHz
FT222900 # Set TX only to 222.900 MHz
F? # Query current frequencies
```
### Response
`F?` returns:
```
RX: 146520
TX: 146520
```
### Notes
- Frequency range: 136-174 MHz, 200-260 MHz, 400-520 MHz
- The RS-UV3A is designed to transmit only on amateur frequencies
- TX outside amateur bands may have reduced power due to filtering
- Firmware 2.4+ supports 0.5 kHz steps by adding `5` to frequency
### 0.5 kHz Steps (Firmware 2.4+)
For frequencies like 146.5225 MHz:
```
FS1465225 # 146.5225 MHz (note: 7 digits)
```
### Related Commands
- [`FM`](#fm-measure-signal) — Measure signal on a frequency
- [`ST`](/reference/commands/memory/#st-store-channel) — Store current frequency
- [`RC`](/reference/commands/memory/#rc-recall-channel) — Recall stored frequency
---
## FM Measure Signal
Tunes to a frequency, measures signal strength, and returns to the original frequency.
### Syntax
```
FMnnnnnn
```
### Parameters
| Parameter | Description |
|-----------|-------------|
| `nnnnnn` | Frequency in kHz (all 6 digits required) |
### Examples
```
FM146520 # Measure signal on 146.520 MHz
FM445000 # Measure signal on 445.000 MHz
```
### Response
Returns signal strength in dBm:
```
FM: -95
```
### Notes
- Measurement takes approximately 100 ms
- Returns to original frequency after measurement
- Useful for channel activity monitoring
- Can be used to build a basic spectrum display with a controller
- Signal level is raw RSSI, not calibrated to a specific standard
### Applications
**Channel scanning:**
```
FM144390 # Check APRS frequency
FM146520 # Check calling frequency
FM146940 # Check local repeater
```
**Signal survey:**
Use with an Arduino or other controller to scan frequencies and log signal levels for propagation studies or interference hunting.
### Related Commands
- [`F`](#f-set-frequency) — Set operating frequency
- [`SS`](/reference/commands/system/#ss-signal-strength) — Read current signal strength

View File

@ -0,0 +1,94 @@
---
title: Command Quick Reference
description: Complete list of RS-UV3A serial commands
---
This page provides a quick reference for all 66 RS-UV3A serial commands. Click on a command to see detailed documentation.
## Command Syntax
- Commands are **not case sensitive** (`fs` = `FS`)
- Commands end with **carriage return** (CR, ASCII 13)
- Numeric parameters require **all digits** (e.g., `FS146520` not `FS14652`)
- Query current value with **`?`** suffix (e.g., `F?`, `SQ?`)
- Default baud rate is **19200**
:::danger[Serial Port Warning]
The DB-9 connector uses **TTL levels (3.3V/5V)**, NOT RS-232 voltages. Do not connect to a standard RS-232 port.
:::
## Quick Reference Table
| Command | Description | Category |
|---------|-------------|----------|
| [**F**](/reference/commands/frequency/#f-set-frequency) | Set TX/RX frequency | [Frequency](/reference/commands/frequency/) |
| [**FM**](/reference/commands/frequency/#fm-measure-signal) | Measure signal level | [Frequency](/reference/commands/frequency/) |
| [**VU**](/reference/commands/audio/#vu-volume) | Set volume (039) | [Audio](/reference/commands/audio/) |
| [**AF**](/reference/commands/audio/#af-audio-low-pass) | Audio low-pass filter | [Audio](/reference/commands/audio/) |
| [**HP**](/reference/commands/audio/#hp-audio-high-pass) | Audio high-pass filter | [Audio](/reference/commands/audio/) |
| [**GM**](/reference/commands/audio/#gm-microphone-gain) | Microphone gain | [Audio](/reference/commands/audio/) |
| [**GT**](/reference/commands/audio/#gt-tone-gain) | CW/DTMF tone gain | [Audio](/reference/commands/audio/) |
| [**DP**](/reference/commands/audio/#dp-pre-de-emphasis) | Pre/de-emphasis | [Audio](/reference/commands/audio/) |
| [**SQ**](/reference/commands/squelch-tones/#sq-squelch-level) | Squelch level (09) | [Squelch & Tones](/reference/commands/squelch-tones/) |
| [**SR**](/reference/commands/squelch-tones/#sr-squelch-range) | Squelch range | [Squelch & Tones](/reference/commands/squelch-tones/) |
| [**SO**](/reference/commands/squelch-tones/#so-squelch-status) | Squelch status | [Squelch & Tones](/reference/commands/squelch-tones/) |
| [**TF**](/reference/commands/squelch-tones/#tf-ctcss-frequency) | CTCSS tone frequency | [Squelch & Tones](/reference/commands/squelch-tones/) |
| [**TM**](/reference/commands/squelch-tones/#tm-tone-mode) | CTCSS mode | [Squelch & Tones](/reference/commands/squelch-tones/) |
| [**TS**](/reference/commands/squelch-tones/#ts-tone-sensitivity) | Tone squelch sensitivity | [Squelch & Tones](/reference/commands/squelch-tones/) |
| [**DD**](/reference/commands/dtmf-cw/#dd-dtmf-duration) | DTMF tone duration | [DTMF & CW](/reference/commands/dtmf-cw/) |
| [**DR**](/reference/commands/dtmf-cw/#dr-dtmf-detector) | DTMF detector on/off | [DTMF & CW](/reference/commands/dtmf-cw/) |
| [**DS**](/reference/commands/dtmf-cw/#ds-send-dtmf) | Send DTMF string | [DTMF & CW](/reference/commands/dtmf-cw/) |
| [**CT**](/reference/commands/dtmf-cw/#ct-send-mcw) | Send MCW (audio CW) | [DTMF & CW](/reference/commands/dtmf-cw/) |
| [**CW**](/reference/commands/dtmf-cw/#cw-send-cw) | Send true CW | [DTMF & CW](/reference/commands/dtmf-cw/) |
| [**CF**](/reference/commands/dtmf-cw/#cf-cw-frequency) | CW audio frequency | [DTMF & CW](/reference/commands/dtmf-cw/) |
| [**CS**](/reference/commands/dtmf-cw/#cs-cw-speed) | CW speed (WPM) | [DTMF & CW](/reference/commands/dtmf-cw/) |
| [**CL**](/reference/commands/dtmf-cw/#cl-callsign) | Set callsign | [DTMF & CW](/reference/commands/dtmf-cw/) |
| [**SD**](/reference/commands/dtmf-cw/#sd-sidetone) | CW/DTMF sidetone | [DTMF & CW](/reference/commands/dtmf-cw/) |
| [**BC**](/reference/commands/beacon/#bc-cw-beacon-timer) | True CW beacon timer | [Beacon](/reference/commands/beacon/) |
| [**BT**](/reference/commands/beacon/#bt-mcw-beacon-timer) | MCW beacon timer | [Beacon](/reference/commands/beacon/) |
| [**BM**](/reference/commands/beacon/#bm-beacon-message) | Beacon message | [Beacon](/reference/commands/beacon/) |
| [**MC**](/reference/commands/beacon/#mc-multi-channel) | Multi-channel beacons | [Beacon](/reference/commands/beacon/) |
| [**IT**](/reference/commands/beacon/#it-id-timer) | CW ID timer | [Beacon](/reference/commands/beacon/) |
| [**ID**](/reference/commands/beacon/#id-send-id) | Send CW ID | [Beacon](/reference/commands/beacon/) |
| [**RC**](/reference/commands/memory/#rc-recall-channel) | Recall memory channel | [Memory](/reference/commands/memory/) |
| [**ST**](/reference/commands/memory/#st-store-channel) | Store memory channel | [Memory](/reference/commands/memory/) |
| [**CP**](/reference/commands/memory/#cp-channel-parameters) | Report channel parameters | [Memory](/reference/commands/memory/) |
| [**CC**](/reference/commands/memory/#cc-check-channel) | Check channel squelch | [Memory](/reference/commands/memory/) |
| [**FD1**](/reference/commands/memory/#fd1-factory-defaults) | Restore factory defaults | [Memory](/reference/commands/memory/) |
| [**AI**](/reference/commands/io-control/#ai-arduino-input) | Arduino input pin function | [I/O Control](/reference/commands/io-control/) |
| [**AO**](/reference/commands/io-control/#ao-arduino-output) | Arduino output pin function | [I/O Control](/reference/commands/io-control/) |
| [**EX**](/reference/commands/io-control/#ex-external-pins) | External pin function | [I/O Control](/reference/commands/io-control/) |
| [**LD**](/reference/commands/io-control/#ld-status-led) | Status LED function | [I/O Control](/reference/commands/io-control/) |
| [**TX**](/reference/commands/system/#tx-transmit) | Transmit on/off | [System](/reference/commands/system/) |
| [**PW**](/reference/commands/system/#pw-tx-power) | TX power level | [System](/reference/commands/system/) |
| [**TO**](/reference/commands/system/#to-timeout) | Timeout timer | [System](/reference/commands/system/) |
| [**TG**](/reference/commands/system/#tg-timeout-message) | Timeout message | [System](/reference/commands/system/) |
| [**HT**](/reference/commands/system/#ht-hang-time) | TX hang time | [System](/reference/commands/system/) |
| [**CO**](/reference/commands/system/#co-cor-inhibit) | COR inhibit time | [System](/reference/commands/system/) |
| [**CB**](/reference/commands/system/#cb-courtesy-beep) | Courtesy beep | [System](/reference/commands/system/) |
| [**VX**](/reference/commands/system/#vx-vox) | VOX on/off | [System](/reference/commands/system/) |
| [**VL**](/reference/commands/system/#vl-vox-level) | VOX sensitivity | [System](/reference/commands/system/) |
| [**BW**](/reference/commands/system/#bw-bandwidth) | Channel bandwidth | [System](/reference/commands/system/) |
| [**PD**](/reference/commands/system/#pd-power-down) | Transceiver chip power | [System](/reference/commands/system/) |
| [**B1**](/reference/commands/system/#b1-baud-rate-1) | Serial port 1 baud rate | [System](/reference/commands/system/) |
| [**B2**](/reference/commands/system/#b2-baud-rate-2) | Serial port 2 baud rate | [System](/reference/commands/system/) |
| [**FW**](/reference/commands/system/#fw-firmware-version) | Firmware version | [System](/reference/commands/system/) |
| [**BL**](/reference/commands/system/#bl-bootloader) | Enter bootloader | [System](/reference/commands/system/) |
| [**SS**](/reference/commands/system/#ss-signal-strength) | Signal strength | [System](/reference/commands/system/) |
| [**SN**](/reference/commands/system/#sn-noise-level) | Noise level | [System](/reference/commands/system/) |
| [**VT**](/reference/commands/system/#vt-voltage) | Operating voltage | [System](/reference/commands/system/) |
| [**TP**](/reference/commands/system/#tp-temperature) | PCB temperature | [System](/reference/commands/system/) |
| [**BS**](/reference/commands/system/#bs-battery-status) | Battery status (legacy) | [System](/reference/commands/system/) |
| [**RR**](/reference/commands/system/#rr-register-read) | Read chip register | [System](/reference/commands/system/) |
| [**RS**](/reference/commands/system/#rs-register-set) | Set chip register | [System](/reference/commands/system/) |
## Command Categories
- **[Frequency](/reference/commands/frequency/)** — Setting and measuring frequencies
- **[Audio](/reference/commands/audio/)** — Volume, filters, and gain controls
- **[Squelch & Tones](/reference/commands/squelch-tones/)** — RSSI squelch and CTCSS
- **[DTMF & CW](/reference/commands/dtmf-cw/)** — Tone signaling and Morse code
- **[Beacon](/reference/commands/beacon/)** — Automatic beacon operation
- **[Memory](/reference/commands/memory/)** — Channel storage and recall
- **[I/O Control](/reference/commands/io-control/)** — Arduino and external pin functions
- **[System](/reference/commands/system/)** — Power, status, and configuration

View File

@ -0,0 +1,190 @@
---
title: I/O Control Commands
description: Arduino and external I/O pin configuration commands for the RS-UV3A
---
## AI Arduino Input
Sets the function of the Arduino DIN pin on JP1.
### Syntax
```
AIn
AI?
```
### Parameters
| Value | Function |
|-------|----------|
| 0 | Disabled (no function) |
| 1 | Squelch open input |
| 2 | PTT input |
### Default
0 (Disabled)
### Examples
```
AI0 # Disable DIN function
AI2 # Use DIN as PTT input
AI? # Query current function
```
### Notes
- When `AI2`, grounding DIN keys the transmitter
- When `AI1`, DIN state reports squelch to external device
- DIN accepts 3.3V or 5V logic levels
### Related Commands
- [`AO`](#ao-arduino-output) — Arduino output pin
---
## AO Arduino Output
Sets the function of the Arduino DOUT pin on JP1.
### Syntax
```
AOn
AO?
```
### Parameters
| Value | Function |
|-------|----------|
| 0 | Always LOW |
| 1 | HIGH when squelch open |
| 2 | HIGH when DTMF detected |
| 3 | HIGH when transmitting (TX ON) |
| 4 | HIGH when CTCSS detected |
| 5 | Always HIGH |
| 6 | HIGH when VOX triggered (firmware 2.4+) |
### Default
0 (LOW)
### Examples
```
AO0 # DOUT always low
AO1 # DOUT high when squelch opens
AO3 # DOUT high during TX
AO? # Query current function
```
### Notes
- Output voltage is 25V based on VIO pin
- Useful for LED indicators or controller inputs
- `AO2` requires DTMF detection enabled (`DR1`)
- `AO4` requires CTCSS mode enabled (`TM2`)
### Applications
| Setting | Use Case |
|---------|----------|
| `AO1` | Busy LED, COR indicator |
| `AO2` | DTMF command trigger |
| `AO3` | TX indicator LED |
| `AO4` | Selective call indicator |
---
## EX External Pins
Sets the function of E_TX and E_RX pins on the DB-9 I/O connector.
### Syntax
```
EXn
EX?
```
### Parameters
| Value | E_TX (pin 7) | E_RX (pin 8) |
|-------|--------------|--------------|
| 0 | HIGH when TX | LOW when squelch open |
| 1 | Serial TXD | Serial RXD |
### Default
1 (TTL Serial Port)
### Examples
```
EX1 # Use as serial port (default)
EX0 # Use as TX/SQ indicators
EX? # Query current function
```
### Serial Mode (EX1)
- Pin 7 (E_TX): Serial data OUT (connect to device RX)
- Pin 8 (E_RX): Serial data IN (connect to device TX)
- Baud rate set by `B2` command
### Indicator Mode (EX0)
- Pin 7 (E_TX): HIGH during transmit, LOW during receive
- Pin 8 (E_RX): LOW when squelch open, HIGH when closed
### Notes
- Serial mode uses 3.3V logic levels
- Indicator mode useful for external controllers
- Choose mode based on what's connected to DB-9
---
## LD Status LED
Sets the function of the ST (status) LED on the board.
### Syntax
```
LDn
LD?
```
### Parameters
| Value | Function |
|-------|----------|
| 0 | Always OFF |
| 1 | Always ON |
| 2 | ON when squelch open |
| 3 | Battery charge status (legacy) |
| 4 | ON when VOX triggered (firmware 2.4+) |
### Default
2 (Squelch open)
### Examples
```
LD0 # LED off
LD2 # LED on when signal received
LD? # Query current function
```
### Notes
- The RS-UV3A has three LEDs: PWR, TX, and ST
- PWR and TX are fixed function
- Only ST LED is user-configurable
- `LD3` is a legacy function for older boards with battery charging

View File

@ -0,0 +1,232 @@
---
title: Memory Commands
description: Channel memory storage and recall commands for the RS-UV3A
---
## RC Recall Channel
Recalls operating parameters from a memory channel.
### Syntax
```
RCn
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `n` | 19 | Memory channel number |
### Examples
```
RC1 # Recall channel 1
RC5 # Recall channel 5
```
### Recalled Parameters
- RX frequency
- TX frequency
- CTCSS tone frequency
- Squelch mode (CTCSS settings)
- TX power level
### Notes
- No query form—use `CP` to view channel contents
- Channel 0 is current operating parameters (set at `ST0`)
- Invalid channels return no response
### Related Commands
- [`ST`](#st-store-channel) — Store channel
- [`CP`](#cp-channel-parameters) — View channel parameters
---
## ST Store Channel
Stores current operating parameters to a memory channel.
### Syntax
```
STn
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `n` | 09 | Memory channel number |
### Special
| Channel | Description |
|---------|-------------|
| 0 | Power-on default settings |
| 19 | User memory channels |
### Examples
```
ST1 # Save to channel 1
ST0 # Save as power-on defaults
```
### Stored Parameters
- RX frequency
- TX frequency
- CTCSS tone frequency
- Squelch mode (CTCSS settings)
- TX power level
### Notes
- `ST0` saves current state as power-on default
- Settings persist through power cycles
- Configure all parameters before storing
### Setup Example
```
# Configure for local repeater
FD146940 # 146.94 MHz, -600 offset
TF10000 # 100.0 Hz CTCSS
TM1 # Encode tone
PW1 # High power
# Save to channel and as default
ST1 # Save to channel 1
ST0 # Also save as power-on default
```
---
## CP Channel Parameters
Reports all parameters for a memory channel without switching to it.
### Syntax
```
CPn
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `n` | 09 | Memory channel number |
### Examples
```
CP0 # View current operating parameters
CP1 # View channel 1
CP5 # View channel 5
```
### Response Format
```
TX: 146520
RX: 146520
Tone: 10000
TM: 0
PW: 1
```
### Notes
- Does not change current operating frequency
- Channel 0 shows current state
- Useful for scanning channel contents
---
## CC Check Channel
Checks if the squelch is open on a specific memory channel.
### Syntax
```
CCn
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `n` | 19 | Memory channel number |
### Response
```
0 # Squelch closed (no signal)
1 # Squelch open (signal present)
```
### Notes
- Temporarily tunes to the channel
- Takes ~50 ms for carrier squelch
- Takes ~100 ms for tone squelch
- Returns to original channel after check
- Useful for scanning applications
### Scanning Example
```
CC1 # Check channel 1
CC2 # Check channel 2
CC3 # Check channel 3
```
A controller can use this to find active channels.
---
## FD1 Factory Defaults
Resets all parameters and memory channels to factory default values.
### Syntax
```
FD1
```
### Notes
- Resets ALL settings
- Resets ALL memory channels
- Some settings require power cycle to take effect
- No confirmation prompt—executes immediately
:::caution
This erases all custom settings! Use only when needed.
:::
### Default Values After FD1
| Parameter | Default |
|-----------|---------|
| Frequency | 146.520 MHz |
| Mode | Simplex |
| Squelch | 3 |
| Volume | 12 |
| CTCSS | Off, 131.8 Hz |
| Power | High |
| Baud Rate | 19200 |
| Beacon | Off |
| Callsign | RS-UV3 |
### Related Commands
- [`ST0`](#st-store-channel) — Save current as default (partial save)

View File

@ -0,0 +1,259 @@
---
title: Squelch & Tone Commands
description: Squelch and CTCSS/PL tone commands for the RS-UV3A
---
## SQ Squelch Level
Sets the RSSI-based squelch threshold.
### Syntax
```
SQn
SQ?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | Squelch always open (hear noise) |
| 18 | Progressively tighter squelch |
| 9 | Squelch always closed (muted) |
### Default
3
### Examples
```
SQ3 # Default setting
SQ0 # Open squelch (monitoring)
SQ6 # Tight squelch (strong signals only)
SQ? # Query current level
```
### Notes
- Lower values = more sensitive (opens on weaker signals)
- Higher values = tighter (requires stronger signals)
- Use `SQ0` for weak signal work or monitoring
- Use higher values in noisy environments
### Related Commands
- [`SR`](#sr-squelch-range) — Extend squelch range
- [`SO`](#so-squelch-status) — Query squelch state
---
## SR Squelch Range
Extends the squelch threshold range for weak signal operation.
### Syntax
```
SRn
SR?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | Normal range |
| 1 | Extended range (+30 dB) |
### Default
0
### Examples
```
SR0 # Normal range
SR1 # Extended range for weak signals
SR? # Query current setting
```
### Notes
- `SR1` adds 30 dB to the current squelch setting
- Useful for DX work or satellite communications
- Combine with low `SQ` values for very weak signal reception
---
## SO Squelch Status
Reports whether the squelch is currently open or closed.
### Syntax
```
SO
```
### Response
```
SO: 0 # Squelch closed (no signal)
SO: 1 # Squelch open (signal present)
```
### Notes
- Works with both RSSI and CTCSS squelch
- Useful for external controllers to detect activity
- No parameters, query only
### Related Commands
- [`SQ`](#sq-squelch-level) — Set squelch level
- [`TM`](#tm-tone-mode) — CTCSS mode setting
---
## TF CTCSS Frequency
Sets the CTCSS (PL) tone frequency for encode and decode.
### Syntax
```
TFnnnnn
TF?
```
### Parameters
| Parameter | Description |
|-----------|-------------|
| `nnnnn` | Tone frequency × 100 (5 digits) |
### Default
13180 (131.8 Hz)
### Examples
```
TF10000 # 100.0 Hz
TF08850 # 88.5 Hz
TF13180 # 131.8 Hz
TF14620 # 146.2 Hz
TF? # Query current tone
```
### Standard CTCSS Frequencies (Hz)
67.0, 71.9, 74.4, 77.0, 79.7, 82.5, 85.4, 88.5, 91.5, 94.8, 97.4, 100.0, 103.5, 107.2, 110.9, 114.8, 118.8, 123.0, 127.3, 131.8, 136.5, 141.3, 146.2, 151.4, 156.7, 162.2, 167.9, 173.8, 179.9, 186.2, 192.8, 203.5
### Notes
- All 5 digits required (`TF10000` not `TF100`)
- Same frequency used for TX encode and RX decode
- Must enable with `TM` command to take effect
### Related Commands
- [`TM`](#tm-tone-mode) — Enable CTCSS
- [`TS`](#ts-tone-sensitivity) — Tone decode sensitivity
---
## TM Tone Mode
Enables or disables CTCSS encoding and tone squelch.
### Syntax
```
TMn
TM?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | Off (no CTCSS) |
| 1 | Encode only (TX tone, no tone squelch) |
| 2 | Encode + decode (TX tone + tone squelch) |
| 3 | DCS mode (if supported by firmware) |
### Default
0 (Off)
### Examples
```
TM0 # No CTCSS
TM1 # Encode tone on TX only
TM2 # Encode tone + require tone to open squelch
TM? # Query current mode
```
### Use Cases
| Mode | Use Case |
|------|----------|
| `TM0` | Open repeaters, simplex |
| `TM1` | Repeater requires PL, hear all traffic |
| `TM2` | Only hear stations with your PL tone |
### Notes
- `TM1` sends tone but doesn't require it to receive
- `TM2` provides selective calling capability
- Tone frequency set by `TF` command
---
## TS Tone Sensitivity
Sets CTCSS decoder sensitivity for tone squelch.
### Syntax
```
TSx
TS?
```
### Parameters
| Value | Description |
|-------|-------------|
| L | Low sensitivity |
| M | Medium sensitivity |
| H | High sensitivity |
### Default
L (Low)
### Examples
```
TSL # Low sensitivity (default)
TSM # Medium sensitivity
TSH # High sensitivity
TS? # Query current setting
```
### Notes
- Higher sensitivity = detects weaker tones
- May cause false triggers on noise with `TSH`
- Use `TSM` or `TSH` if tone squelch is unreliable
- Only affects RX tone detection, not TX encoding
### Related Commands
- [`TM`](#tm-tone-mode) — Enable tone squelch
- [`TF`](#tf-ctcss-frequency) — Set tone frequency

View File

@ -0,0 +1,686 @@
---
title: System Commands
description: Power, status, and configuration commands for the RS-UV3A
---
## TX Transmit
Controls the transmitter.
### Syntax
```
TXn
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | Stop transmitting (return to RX) |
| 15 | Transmit with n-minute timeout |
### Examples
```
TX1 # Transmit, 1 minute max
TX3 # Transmit, 3 minute max
TX0 # Stop transmitting
```
### Notes
- `TX0` stops TX even if hardware PTT is held
- Timeout overrides `TO` setting for this transmission only
- If TX is off, radio is in RX mode
---
## PW TX Power
Sets the transmit power level.
### Syntax
```
PWn
PW?
```
### Parameters
| Value | Power Level |
|-------|-------------|
| 0 | Low (~10 mW, 10 dBm) |
| 1 | High (~200 mW, 23 dBm) |
### Default
1 (High)
### Examples
```
PW1 # High power
PW0 # Low power
PW? # Query current setting
```
---
## TO Timeout
Sets the transmit timeout timer.
### Syntax
```
TOnnn
TO?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nnn` | 000600 | Timeout in seconds |
| | 000 | Disable timeout |
### Default
000 (disabled)
### Examples
```
TO180 # 3 minute timeout
TO300 # 5 minute timeout
TO000 # No timeout
TO? # Query current setting
```
### Notes
- All 3 digits required
- When timeout occurs, sends TG message and unkeys
- Protects against stuck PTT
---
## TG Timeout Message
Sets the CW message sent when TX times out.
### Syntax
```
TG<text>
TG?
```
### Parameters
| Parameter | Description |
|-----------|-------------|
| `<text>` | Message up to 7 characters |
### Default
'TO'
### Examples
```
TGTIME # Send "TIME" on timeout
TGTO # Send "TO" (default)
TG? # Query current message
```
---
## HT Hang Time
Sets TX hang time for repeater applications.
### Syntax
```
HTnnnn
HT?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nnnn` | 00005000 | Hang time in milliseconds |
### Default
0000 (no hang time)
### Examples
```
HT1500 # 1.5 second hang time
HT2000 # 2 second hang time
HT0000 # No hang time
HT? # Query current setting
```
### Notes
- All 4 digits required
- TX stays keyed for specified time after PTT release
- Used with courtesy beep in repeater applications
---
## CO COR Inhibit
Sets the COR (Carrier Operated Relay) inhibit time.
### Syntax
```
COnnnn
CO?
```
### Parameters
| Parameter | Range | Description |
|-----------|-------|-------------|
| `nnnn` | 00009999 | Inhibit time in milliseconds |
### Default
0000
### Examples
```
CO0150 # 150 ms inhibit
CO0200 # 200 ms inhibit
CO? # Query current setting
```
### Notes
- Prevents COR from going active briefly after TX ends
- Avoids squelch noise triggering COR
- Useful for packet and repeater applications
---
## CB Courtesy Beep
Sets the courtesy beep for repeater applications.
### Syntax
```
CBn
CB?
```
### Parameters
| Value | Beep |
|-------|------|
| 0 | None |
| 1 | Low tone |
| 2 | High tone |
| 3 | High/low |
| 4 | Two tones |
### Default
0 (none)
### Examples
```
CB0 # No beep
CB2 # High tone beep
CB? # Query current setting
```
### Notes
- Sounds after hang time expires
- Signals repeater is ready for next transmission
---
## VX VOX
Enables or disables voice-operated transmit.
### Syntax
```
VXn
VX?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | VOX off |
| 1 | VOX on |
### Default
0 (off)
### Examples
```
VX1 # Enable VOX
VX0 # Disable VOX
VX? # Query current setting
```
### Notes
- Pressing PTT disables VOX
- Do not use with speaker-mic (RX audio will trigger TX)
- Sensitivity set by `VL` command
---
## VL VOX Level
Sets VOX sensitivity.
### Syntax
```
VLn
VL?
```
### Parameters
| Value | Sensitivity |
|-------|-------------|
| 0 | High (most sensitive) |
| 1 | Medium |
| 2 | Low (least sensitive) |
### Default
1 (Medium)
### Examples
```
VL0 # High sensitivity
VL2 # Low sensitivity
VL? # Query current setting
```
---
## BW Bandwidth
Sets the channel bandwidth.
### Syntax
```
BWn
BW?
```
### Parameters
| Value | Bandwidth |
|-------|-----------|
| 0 | 12.5 kHz (narrow) |
| 1 | 25 kHz (wide) |
### Default
1 (25 kHz)
### Examples
```
BW1 # 25 kHz (standard)
BW0 # 12.5 kHz (narrow)
BW? # Query current setting
```
### Notes
- **Requires power cycle to take effect**
- Use narrow for crowded bands
- Some repeaters require narrow bandwidth
---
## PD Power Down
Controls the transceiver chip power.
### Syntax
```
PDn
PD?
```
### Parameters
| Value | Description |
|-------|-------------|
| 0 | Chip powered down |
| 1 | Chip powered on |
### Default
1 (on)
### Examples
```
PD0 # Power down (saves ~70 mA)
PD1 # Power up
PD? # Query state
```
### Notes
- Reduces current by approximately 70 mA
- Radio cannot TX/RX when powered down
- Serial commands still work
---
## B1 Baud Rate 1
Sets the baud rate for serial port 1 (USB/JP1/JP2).
### Syntax
```
B1n
B1?
```
### Parameters
| Value | Baud Rate |
|-------|-----------|
| 0 | 1200 |
| 1 | 4800 |
| 2 | 9600 |
| 3 | 19200 |
| 4 | 38400 |
| 5 | 57600 |
### Default
3 (19200)
### Examples
```
B13 # Set to 19200
B15 # Set to 57600
B1? # Query current setting
```
### Notes
- **Requires power cycle to take effect**
- Reconnect terminal at new baud rate after power cycle
---
## B2 Baud Rate 2
Sets the baud rate for serial port 2 (DB-9 I/O connector).
### Syntax
```
B2n
B2?
```
### Parameters
Same as B1.
### Default
3 (19200)
### Notes
- Only applies when `EX1` (serial mode)
- **Requires power cycle to take effect**
---
## FW Firmware Version
Reports the current firmware version.
### Syntax
```
FW
```
### Response
```
FW: 2.4A
```
### Notes
- Query only, no parameters
---
## BL Bootloader
Enters bootloader mode for firmware updates.
### Syntax
```
BL
```
### Notes
- RS-UV3A waits indefinitely for bootloader connection
- Power cycle required to exit without updating
- See [Firmware Upgrade](/guides/firmware-upgrade/) guide
---
## SS Signal Strength
Reads the current receiver signal strength.
### Syntax
```
SS
```
### Response
```
SS: -85
```
Value is in dBm.
---
## SN Noise Level
Reads the current receiver noise level.
### Syntax
```
SN
```
### Response
```
SN: 1234
```
### Notes
- Lower values indicate cleaner signal
- Raw value, not calibrated
---
## VT Voltage
Reads the operating voltage.
### Syntax
```
VT
```
### Response
```
VT: 8.5V
```
### Notes
- Reads the 8.5V internal rail
- Useful for monitoring power status
---
## TP Temperature
Reads the PCB temperature.
### Syntax
```
TP
```
### Response
```
TP: 42
```
Temperature in °C.
### Notes
- PCB temperature, not ambient
- Will be warmer during TX
---
## BS Battery Status
Legacy command for battery charger status.
### Syntax
```
BS
```
### Response
```
BS: 0
```
or
```
BS: 1
```
### Notes
- RS-UV3A Rev A does not have battery charging
- Included for compatibility with older RS-UV3 versions
---
## RR Register Read
Reads an RDA1846S transceiver chip register. **Advanced use.**
### Syntax
```
RRxx
```
### Parameters
| Parameter | Description |
|-----------|-------------|
| `xx` | Register address in hex |
### Response
Returns 16-bit hex value.
### Notes
- For advanced debugging only
- Register documentation available online for RDA1846S
---
## RS Register Set
Sets an RDA1846S transceiver chip register. **Advanced use.**
### Syntax
```
RSxxyyyy
```
### Parameters
| Parameter | Description |
|-----------|-------------|
| `xx` | Register address in hex |
| `yyyy` | 16-bit value in hex |
### Response
```
OK
```
or no response if failed.
### Notes
- Can disrupt radio operation if used incorrectly
- For advanced debugging only
- Settings may not persist through power cycle

View File

@ -0,0 +1,241 @@
---
title: Connectors
description: Detailed connector pinouts and signal descriptions for the RS-UV3A
---
This page provides detailed pinouts for all RS-UV3A connectors.
## SMA Antenna Jack (ANT)
| Parameter | Specification |
|-----------|---------------|
| Connector | SMA female |
| Impedance | 50Ω |
| Max RF Input | -10 dBm |
| Max DC | 25V |
The antenna jack is shared between TX and RX via an internal RF switch.
## DC Power Jack (VIN)
| Parameter | Specification |
|-----------|---------------|
| Connector | 5.5×2.1 mm barrel |
| Polarity | Center positive |
| Voltage | 3.5V 16V DC |
| Protection | Reverse polarity diode |
## Micro USB
| Function | Description |
|----------|-------------|
| Power | 5V from USB host |
| Data | USB serial via FTDI FT230X |
| Default Baud | 19200 |
Provides both power and serial communication through a single cable.
## Arduino Header (JP1)
6-pin 0.1" header for microcontroller integration:
| Pin | Signal | Direction | Description |
|:---:|--------|:---------:|-------------|
| 1 | DIN | Input | Digital input (PTT/SQ via `AI` command) |
| 2 | RXD | Input | Serial data to RS-UV3A |
| 3 | DOUT | Output | Digital output (configurable via `AO` command) |
| 4 | TXD | Output | Serial data from RS-UV3A |
| 5 | 3.3V | Power | 3.3V output for accessories |
| 6 | GND | Ground | Ground |
### DIN Functions (`AI` command)
| Value | Function |
|:-----:|----------|
| 0 | Disabled |
| 1 | Squelch open input |
| 2 | PTT input (ground to TX) |
### DOUT Functions (`AO` command)
| Value | Function |
|:-----:|----------|
| 0 | Always LOW |
| 1 | HIGH when squelch open |
| 2 | HIGH when DTMF detected |
| 3 | HIGH when transmitting |
| 4 | HIGH when CTCSS detected |
| 5 | Always HIGH |
| 6 | HIGH when VOX triggered |
### Logic Levels
- **Input:** 3.3V and 5V tolerant
- **Output:** 2V5V (determined by VIO voltage)
## I/O Connector (DB-9)
DB-9 male connector for external audio, serial, and control:
| Pin | Signal | Direction | Description |
|:---:|--------|:---------:|-------------|
| 1 | TX Audio | Input | Line-level TX audio (adj. via VR3) |
| 2 | PTT | Input | Ground to transmit (-24V to +24V tolerant) |
| 3 | GND | Ground | Ground |
| 4 | RX Audio | Output | Line-level RX audio (adj. via `VU` command) |
| 5 | COR | Output | Open-drain, LOW when squelch open |
| 6 | PWR | Power | 8.5V if I/O_P jumper installed |
| 7 | E_TX | I/O | Serial TXD or TX indicator (see `EX` command) |
| 8 | E_RX | I/O | Serial RXD or SQ indicator (see `EX` command) |
| 9 | GND | Ground | Ground |
:::danger[TTL Levels Only!]
This is **NOT** a standard RS-232 connector. It uses 3.3V/5V TTL logic levels. Connecting to RS-232 equipment may damage the RS-UV3A.
:::
### COR Output Specifications
| Parameter | Specification |
|-----------|---------------|
| Type | Open-drain, active LOW |
| Current | 150 mA max |
| Voltage | 12V max |
### E_TX/E_RX Functions (`EX` command)
| Mode | E_TX (pin 7) | E_RX (pin 8) |
|:----:|--------------|--------------|
| 0 | HIGH when TX | LOW when SQ open |
| 1 | Serial TXD | Serial RXD |
## Speaker/Mic Jack (SPK/MIC)
4-conductor 3.5mm TRRS jack for speaker-microphone:
| Contact | Signal | Description |
|---------|--------|-------------|
| Tip | Speaker + | Speaker audio output |
| Ring 1 | Microphone | Mic input (3.3V bias) |
| Ring 2 | PTT | Ground to transmit |
| Sleeve | Ground | Common ground |
Compatible with standard speaker-microphones wired in this configuration.
## Internal Audio/PTT
Direct solder pads for enclosure-mounted components:
| Pad | Signal | Description |
|-----|--------|-------------|
| SPKR | Speaker out | 8Ω speaker, level via VR1 |
| MIC | Microphone in | 3.3V bias for electret |
| PTT | Push-to-talk | Ground to transmit |
Ground pads are located adjacent to each signal pad.
### Microphone Bias
The MIC input provides 3.3V bias through R6 for electret microphone elements. For dynamic microphones or external preamps:
- Remove R6 and relocate to R7 position, OR
- Add a DC blocking capacitor in series
## USB Serial Header (JP2)
6-pin header for FTDI cable or direct connection:
| Pin | Signal | Description |
|:---:|--------|-------------|
| 1 | GND | Ground |
| 2 | CTS | Clear to send (optional) |
| 3 | VIO | Reference voltage for logic levels |
| 4 | TXD | Serial out from RS-UV3A |
| 5 | RXD | Serial in to RS-UV3A |
| 6 | RTS | Request to send (optional) |
:::note
JP1 and JP2 share the same serial port. Use only one at a time.
:::
## Amplifier Header (AMP)
6-pin header for RS-UVPA power amplifier connection:
| Pin | Signal | Description |
|:---:|--------|-------------|
| 1 | RC1 | Digital control output 1 |
| 2 | RC2 | Digital control output 2 |
| 3 | AN1 | Analog input 1 |
| 4 | AN2 | Analog input 2 |
| 5 | +8.5V | Power output |
| 6 | GND | Ground |
## Power Switch Header (PW)
2-pin header for external power switch:
| Pin | Signal |
|:---:|--------|
| 1 | VIN+ |
| 2 | VIN+ (through jumper) |
- Ships with jumper installed (power always on)
- Remove jumper and wire to SPST switch for on/off control
- Can be used as alternate power input
## PA Header and SJ1
Internal RF connection point for RS-UVPA integration:
| Component | Description |
|-----------|-------------|
| PA Header | RF in/out for internal amplifier |
| SJ1 | Solder jumper (factory-installed) |
- **SJ1 closed (default):** RF routes to ANT jack
- **SJ1 open:** RF routes to PA header for amplifier connection
To install RS-UVPA: Clear solder from SJ1, connect amp to PA header.
## ICSP Header
In-circuit serial programming header for PIC18F45K22:
```
1 2
● ●
3 4
● ●
5 6
● ●
```
Pins are staggered to allow programming without soldering a header.
### Bootloader Jumper Positions
| Jumper | Result |
|--------|--------|
| 1-2 | Boot to bootloader on USB/JP1 serial |
| 4-5 | Boot to bootloader on DB-9 serial |
## I/O Power Header (I/O_P)
2-pin jumper to enable 8.5V on DB-9 pin 6:
| State | Result |
|-------|--------|
| Open | Pin 6 not connected |
| Jumpered | Pin 6 = 8.5V |
Useful for powering external accessories like GPS modules.
## 26 MHz Output (26M)
Single-pin access to 26 MHz TCXO reference:
| Parameter | Specification |
|-----------|---------------|
| Signal | 26 MHz square wave |
| Purpose | Sub-receiver reference |
| Usage | Advanced applications only |

View File

@ -0,0 +1,188 @@
---
title: Hardware Revisions
description: Differences between RS-UV3 hardware revisions
---
The RS-UV3 has gone through several hardware revisions. This page documents the differences between revisions and compatibility considerations.
## Revision Summary
| Revision | Key Features |
|----------|--------------|
| **Rev A** (Current) | On-board USB, buck-boost DC-DC, 3.5V16V input |
| **Rev D** | Battery charging, 9V16V input, FTDI cable required |
| **Rev C** | Battery charging, LED indicators, sub-RX header |
| **Rev B** | Basic design, battery charging |
## RS-UV3A Rev A (Current)
The Rev A is the latest and recommended version.
### New Features in Rev A
| Feature | Description |
|---------|-------------|
| **On-board USB** | FTDI FT230X for driverless USB serial |
| **Wide-range DC-DC** | Buck-boost converter accepts 3.5V16V |
| **USB Power** | Can be powered entirely from USB |
| **Micro USB** | Single connector for power + serial |
| **LED Indicators** | Power, TX, and user-configurable Status |
| **DB-9 Power** | Optional 8.5V on pin 6 via I/O_P jumper |
### Removed in Rev A
| Feature | Notes |
|---------|-------|
| Battery Charging | No MCP73213 charger circuit |
| Battery Connector | No BATT header |
| 9V minimum | Now accepts down to 3.5V |
### Specifications
| Parameter | Rev A |
|-----------|-------|
| Input Voltage | 3.5V 16V |
| Power Consumption | 1.6W max |
| Weight | 34 grams |
| USB Serial | On-board FTDI |
## RS-UV3 Rev D
### Features
- Battery charge management (MCP73213)
- 8.4V dual-cell LiPo support
- 9V16V DC input required
- Three LEDs (PWR, TX, ST)
- Requires external FTDI cable for serial
### Specifications
| Parameter | Rev D |
|-----------|-------|
| Input Voltage | 9V 16V |
| Battery | 8.4V dual-cell LiPo |
| Charge Current | 150 mA |
| Weight | ~40 grams |
| USB Serial | External FTDI cable |
## RS-UV3 Rev C
### Features
- First revision with LED indicators
- Sub-receiver RF output header (S_RX)
- Battery charging
- I/O power jumper added
### Specifications
| Parameter | Rev C |
|-----------|-------|
| Input Voltage | 9V 16V |
| RX Current | 180 mA max |
| TX Current | 400 mA max |
| Weight | 40 grams |
## RS-UV3 Rev B
The original production version with basic features.
### Features
- Basic transceiver functionality
- Battery charging
- No LEDs
- No S_RX header
:::note[Rev B Support]
If connecting RS-UVPA to Rev B, contact HobbyPCB Technical Support for guidance.
:::
## Firmware Compatibility
All revisions use the same firmware, but some features are revision-specific:
| Feature | Rev A | Rev D | Rev C | Rev B |
|---------|:-----:|:-----:|:-----:|:-----:|
| `LD` (ST LED) | ✓ | ✓ | ✓ | — |
| `BS` (Battery Status) | Legacy | ✓ | ✓ | ✓ |
| `VT` (Voltage) | ✓* | ✓ | ✓ | ✓ |
*Rev A returns internal 8.5V rail voltage
## Physical Compatibility
All revisions share the same:
- Board dimensions (120 × 75 mm)
- Mounting hole positions
- SMA antenna position
- Arduino header pinout
This ensures enclosures and accessories are compatible across revisions.
## Upgrading from Older Revisions
### Rev C/D to Rev A
If upgrading from Rev C/D:
1. **Battery:** Rev A has no charging—use external power management
2. **Serial:** Rev A has on-board USB—FTDI cable not required
3. **Voltage:** Rev A accepts lower voltages (3.5V vs 9V)
4. **Settings:** Use `FD1` to reset to defaults after firmware update
### Power Considerations
| Revision | Minimum Voltage | USB Power |
|----------|-----------------|-----------|
| Rev A | 3.5V | Yes |
| Rev C/D | 9V | No (FTDI for serial only) |
## RS-UVPA Compatibility
The RS-UVPA power amplifier is compatible with:
- RS-UV3A Rev A
- RS-UV3 Rev D
- RS-UV3 Rev C
Rev B may require additional modifications—contact HobbyPCB.
### Installation Differences
**Rev A Installation:**
1. Remove solder from SJ1
2. Add AMP, PW, and PA headers
3. Remove VIN connector (interferes with amp)
4. Mate boards
**Rev C/D Installation:**
1. Remove solder from SJ1
2. Add required headers
3. Remove VIN connector
4. Mate boards
## Identifying Your Revision
Check the silkscreen on the PCB near the edge for the revision letter:
- "RS-UV3A Rev A"
- "RS-UV3 Rev D"
- "RS-UV3 Rev C"
Or query firmware:
```
FW
```
Firmware versions don't indicate hardware revision, but feature behavior may hint at the hardware (e.g., `BS` command behavior).
## Documentation Notes
This documentation primarily covers the **RS-UV3A Rev A**. Some features described may not be available on older revisions:
- On-board USB: Rev A only
- USB power: Rev A only
- Battery charging: Rev C/D only
- 3.5V minimum: Rev A only
When in doubt, refer to the original documentation for your specific revision on the [HobbyPCB Wiki](https://sites.google.com/site/hobbypcbrsuv3awiki/).

View File

@ -0,0 +1,176 @@
---
title: Specifications
description: Technical specifications for the RS-UV3A FM transceiver
---
## General Specifications
| Parameter | Specification |
|-----------|---------------|
| **Frequency Range** | |
| 2m Band | 136174 MHz |
| 1.25m Band | 200260 MHz |
| 70cm Band | 400520 MHz |
| **Modulation** | FM with switchable pre/de-emphasis and LP filters |
| **Channel Spacing** | 12.5 kHz or 25 kHz (configurable) |
:::note[Transmit Frequencies]
The RS-UV3A is designed to transmit only on amateur radio frequencies. TX operation outside the amateur bands may exhibit reduced power due to output filter configuration.
:::
## Receiver Specifications
| Parameter | Specification |
|-----------|---------------|
| Sensitivity | < -120 dBm for 12 dB SINAD |
| Input Filtering | 100 MHz high-pass filter |
| LNA | Low-noise amplifier with band-equalizing filter |
| Squelch | RSSI-based, 10 levels (09) |
| Tone Squelch | CTCSS/PL, 3 sensitivity levels |
| Audio Output | Low impedance (8Ω speaker) |
| Volume Range | 40 dB (039, 1 dB steps) |
### Maximum RF Input
| Parameter | Limit |
|-----------|-------|
| RF Power | -10 dBm |
| DC Voltage | 25V |
## Transmitter Specifications
| Parameter | Specification |
|-----------|---------------|
| Output Power (High) | > 200 mW (23 dBm) |
| Output Power (Low) | ~10 mW (10 dBm) |
| Spurious Emissions | < -50 dBc (amateur band TX) |
| CTCSS Encoding | Selectable standard frequencies |
| Modulation Input | Electret microphone (3.3V bias) |
| Mic Gain Range | 30 dB (015, 2 dB steps) |
### Output Filtering
The transmitter includes individual low-pass filters for each band:
- 2m band filter
- 1.25m band filter
- 70cm band filter
## Power Specifications
| Parameter | Specification |
|-----------|---------------|
| Input Voltage | 3.5V 16V DC |
| USB Power | 5V from USB host |
| Power Consumption | 1.6W maximum |
| Converter Type | Buck-boost DC-DC |
| Internal Rails | 3.3V, 8.5V |
### Polarity Protection
- Input is diode protected against reverse polarity
- USB and VIN can be connected simultaneously (diode isolated)
- Recommended: 1A fuse in series with positive lead
## Physical Specifications
| Parameter | Specification |
|-----------|---------------|
| Board Size | 120 × 75 mm (4 11/16" × 3 15/16") |
| Height | 16 mm (5/8") excluding connectors |
| Weight | 34 grams (1.2 oz) |
## Connectors
| Connector | Type | Purpose |
|-----------|------|---------|
| ANT | SMA female | RF antenna |
| VIN | 5.5×2.1 mm barrel | DC power input |
| USB | Micro USB | Power + serial |
| SPK/MIC | 3.5 mm TRRS | Speaker-microphone |
| I/O | DB-9 male | Audio, serial, control |
| JP1 | 0.1" header | Arduino interface |
| JP2 | 0.1" header | FTDI cable |
| ICSP | 0.1" header | Programming |
| AMP | 0.1" header | Power amp interface |
| PW | 0.1" header | Power switch |
## Serial Interface
| Parameter | Specification |
|-----------|---------------|
| Interface | FTDI FT230X USB-serial |
| Logic Levels | 3.3V/5V TTL |
| Default Baud | 19200 |
| Available Bauds | 1200, 4800, 9600, 19200, 38400, 57600 |
| Serial Ports | 2 (USB/JP1 and DB-9) |
:::danger[Not RS-232]
The DB-9 connector uses TTL logic levels (3.3V/5V), NOT RS-232 voltages. Do not connect to standard RS-232 equipment.
:::
## Environmental
| Parameter | Specification |
|-----------|---------------|
| Operating Temp | 0°C to +50°C (typical) |
| Storage Temp | -20°C to +70°C |
| Humidity | Non-condensing |
## Reference Oscillator
| Parameter | Specification |
|-----------|---------------|
| Type | TCXO |
| Frequency | 26 MHz |
| Accuracy | < 50 Hz frequency error (factory calibrated) |
## Transceiver Chip
The RS-UV3A uses the RDA1846S single-chip transceiver:
- Integrated VCO, LNA, mixer, IF filter
- Programmable via SPI from PIC microcontroller
- CTCSS/DCS encode/decode
- DTMF encode/decode
- RSSI and audio S/N measurement
## Microcontroller
| Parameter | Specification |
|-----------|---------------|
| Chip | PIC18F45K22 |
| Programming | ICSP header |
| Bootloader | mikroBootloader compatible |
## Block Diagram
```
┌─────────────┐
SMA ───────────►│ RF SWITCH │◄──────────── TX LPF
│ └──────┬──────┘ │
│ │ │
┌────▼────┐ ┌─────▼─────┐ ┌─────▼─────┐
│ HPF │ │ LNA │ │ PA │
│ 100MHz │ │ │ │ │
└────┬────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
│ ┌─────▼─────┐ ┌─────▼─────┐
│ │ BPF │ │ RDA1846S │
│ │ Equalizer │ │ TX │
│ └─────┬─────┘ └───────────┘
│ │ ▲
│ ┌─────▼─────┐ │
│ │ RDA1846S │ │
│ │ RX ├──────────────────┘
│ └─────┬─────┘
│ │
│ ┌─────▼─────┐ ┌───────────┐
│ │ Audio │◄────►│ PIC MCU │
│ │ Codec │ └─────┬─────┘
│ └───────────┘ │
│ │
│ ┌─────▼─────┐
└──────────────────────────────│ FTDI │
│ USB-SER │
└───────────┘
```

110
src/styles/custom.css Normal file
View File

@ -0,0 +1,110 @@
/* RS-UV3A Documentation - Ham Radio Theme
* Green accent color reminiscent of classic radio displays
*/
:root {
--sl-color-accent-low: #1a3d2e;
--sl-color-accent: #2d8659;
--sl-color-accent-high: #4ade80;
--sl-color-white: #ffffff;
--sl-color-gray-1: #f0fdf4;
--sl-color-gray-2: #dcfce7;
/* Table styling */
--sl-color-table-header: var(--sl-color-accent-low);
}
:root[data-theme='dark'] {
--sl-color-accent-low: #1a3d2e;
--sl-color-accent: #22c55e;
--sl-color-accent-high: #bbf7d0;
--sl-color-gray-1: #0f1f17;
--sl-color-gray-2: #162b1f;
}
/* Command code blocks - give them the terminal look */
code {
font-family: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace;
}
/* Make command syntax stand out */
.sl-markdown-content code:not(pre code) {
background-color: var(--sl-color-accent-low);
color: var(--sl-color-accent-high);
padding: 0.15em 0.35em;
border-radius: 4px;
}
/* Table improvements for command reference */
.sl-markdown-content table {
width: 100%;
border-collapse: collapse;
font-size: 0.9em;
}
.sl-markdown-content th {
background-color: var(--sl-color-accent-low);
color: var(--sl-color-white);
text-align: left;
padding: 0.75rem;
}
.sl-markdown-content td {
padding: 0.5rem 0.75rem;
border-bottom: 1px solid var(--sl-color-gray-5);
}
.sl-markdown-content tr:hover {
background-color: var(--sl-color-gray-6);
}
/* Aside/callout styling */
.starlight-aside--caution {
border-color: #f59e0b;
}
.starlight-aside--danger {
border-color: #ef4444;
}
/* Pin diagram tables - fixed width for better alignment */
.sl-markdown-content table.pin-diagram {
font-family: monospace;
}
.sl-markdown-content table.pin-diagram td:first-child {
width: 3em;
text-align: center;
font-weight: bold;
}
/* Hero section on landing page */
.hero-title {
font-size: 2.5rem;
font-weight: 700;
color: var(--sl-color-accent);
}
/* Badge styling */
.badge {
display: inline-block;
padding: 0.25em 0.5em;
border-radius: 4px;
font-size: 0.8em;
font-weight: 600;
}
.badge-2m {
background-color: #22c55e;
color: white;
}
.badge-125m {
background-color: #3b82f6;
color: white;
}
.badge-70cm {
background-color: #a855f7;
color: white;
}

5
tsconfig.json Normal file
View File

@ -0,0 +1,5 @@
{
"extends": "astro/tsconfigs/strict",
"include": [".astro/types.d.ts", "**/*"],
"exclude": ["dist"]
}