Yaesu FT-891 radio driver for bench automation — Hamlib rigctld TCP client
Project description
rf-bench-drivers-yaesu
Yaesu FT-891 radio driver for bench automation. Part of the rf-bench-drivers family of
packages that share the rf_bench.* namespace.
This package provides a Hamlib rigctld TCP client for the Yaesu FT-891 transceiver,
with an API intentionally compatible with the IC-7300 driver (rf-bench-drivers-icom)
for drop-in substitution in automated test scripts.
Hardware requirements
- Yaesu FT-891 connected via USB-B cable to the host PC
- Hamlib 4.x installed (
sudo apt install libhamlib-utilsor build from source) - rigctld running before any test starts:
rigctld -m 1036 -r /dev/ttyUSB0 -s 38400 &
The FT-891's CAT baud rate is set in Menu 031 (CAT RATE); factory default is 38400.
The -s flag must match the menu setting.
If you are also running an IC-7300 on port 4532, run the FT-891 rigctld on a different port:
rigctld -m 1036 -r /dev/ttyUSB1 -s 38400 -t 4533 &
Then connect with FT891("localhost", 4533).
Installation
pip install rf-bench-drivers-yaesu
No external dependencies — uses only the Python standard library (socket, math, time).
Usage
from rf_bench.yaesu import FT891, PREAMP_OFF, PREAMP_AMP1
# Connect (defaults to localhost:4532)
rig = FT891()
# Core interface — identical to IC7300
rig.set_frequency(14_200_000) # Hz
rig.set_mode("usb") # 'usb','lsb','cw','cwr','am','fm','rtty'
rig.set_agc("slow") # 'off','fast','mid','slow'
strength = rig.get_strength() # raw Hamlib STRENGTH value
strength = rig.get_strength_settled(settle_s=0.5, samples=3)
rig.set_rf_gain(1.0) # 0.0–1.0
mode, passband = rig.get_mode() # e.g. ('USB', 2400)
freq = rig.get_frequency() # Hz
rig.close()
# Context manager
with FT891() as rig:
rig.set_frequency(7_100_000)
print(rig.get_strength_settled())
# FT-891-specific: preamp / IPO control
rig.set_preamp(PREAMP_OFF) # IPO engaged — preamp bypassed (strong-signal tests)
rig.set_preamp(PREAMP_AMP1) # AMP1 active (~10 dB gain, MDS/sensitivity tests)
level = rig.get_preamp() # 0 = IPO/off, 1 = AMP1
# FT-891-specific: front-end attenuator
rig.set_att(0) # off
rig.set_att(6) # 6 dB
rig.set_att(12) # 12 dB
att = rig.get_att()
AGC caveat
set_agc("off") is not a true bypass on the FT-891. Hamlib maps AGC=0 to the
slowest AGC time constant. The FT-891 has no hardware AGC-off path. For absolute
signal level measurements, use set_agc("slow") combined with set_rf_gain() and
verify linearity empirically.
This differs from the IC-7300, where set_agc("off") engages a true hardware bypass.
STRENGTH scale
The Hamlib STRENGTH value returned by get_strength() / get_strength_settled() is
specific to the FT-891 + Hamlib version combination and is not directly comparable
to IC-7300 readings. Run a separate S-meter calibration sweep to map STRENGTH to dBm
for each rig.
Related packages
| Package | Namespace | Description |
|---|---|---|
rf-bench-drivers-icom |
rf_bench.icom |
Icom IC-7300 driver |
rf-bench-drivers-siglent |
rf_bench.siglent |
Siglent instrument drivers (SSA, SDG, SDS, SDM, SPD) |
rf-bench-utils |
rf_bench.utils |
RF math utilities (power conversion, noise, IP3, etc.) |
License
GPL-3.0-or-later. See LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rf_bench_drivers_yaesu-0.1.0.tar.gz.
File metadata
- Download URL: rf_bench_drivers_yaesu-0.1.0.tar.gz
- Upload date:
- Size: 19.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
58e089cbce08bf0ec7150cccddcdebc80b73a384cef732cd4f686d3e8576914e
|
|
| MD5 |
c296ad24debe519e2262f8964c5d20bf
|
|
| BLAKE2b-256 |
60f7c74910eb67391ed96169c72092acb3997eb19a0017100974e24f38952757
|
File details
Details for the file rf_bench_drivers_yaesu-0.1.0-py3-none-any.whl.
File metadata
- Download URL: rf_bench_drivers_yaesu-0.1.0-py3-none-any.whl
- Upload date:
- Size: 19.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0c305877f9cdfa63b2b884ce100344fb30df1b16d70848c0585cb3b6527262b6
|
|
| MD5 |
b299598710b096f7c14e76dcb6890945
|
|
| BLAKE2b-256 |
784c25005160393d548cfc744830d20405482e35e67cea666255a6fcf1c152e1
|