# Kenwood and Xiegu (native CAT) ## Kenwood (USB, network) A native backend talks straight to a **TS-590 / TS-890 / TS-990 / TS-2000** over its serial port — frequency, mode, VFO, split and PTT, no OmniRig in between. **Elecraft K3/K4** speak the same dialect. Pick **Kenwood (USB, network)** in Settings → CAT. - **Serial**: COM port + baud. - **Network**: give a `host:port` instead — for a serial bridge (ser2net, an Ethernet-serial adapter). *Not* the radio's own RJ45, which speaks Kenwood's KNS/ARCP protocol. - Split is detected from FR/FT when the radio omits it from its status frame. - The backend was tested end-to-end against a TS-2000 emulator and reports useful errors: a port that opens but stays silent is distinguished from one sending data that never answers (the error quotes what arrived). ## Xiegu (G90, X6100, X6200, X5105) These radios speak CI-V but with a **reduced command set** (no scope, no DSP block, no data mode), so they have their own backend — pick **Xiegu (USB)** in Settings → CAT. Frequency, mode, split and PTT. ### PTT on a G90 — read this A **G90 ignores the CI-V PTT command**. That has three consequences: 1. In the Xiegu settings, choose **how the rig is keyed**: CI-V command, RTS or DTR — pick the hardware line your interface wires to PTT. 2. WSJT-X & co transmit through OpsLog's **shared CAT link** (Hamlib NET rigctl `127.0.0.1:4532` — see [[CAT Control]]): OpsLog converts the PTT request into the hardware line. This is the supported path and it works. 3. **WSJT-X + OmniRig will NOT transmit** a G90: OmniRig sends PTT as a CI-V command, which the radio ignores. Either use the native Xiegu backend + rigctl sharing, or configure the PTT line (RTS/DTR) inside OmniRig itself. ### Keying on connect Behind an interface that carries PTT on a modem line (e.g. a DE-19), a G90 used to go **straight into transmit when OpsLog connected** — Windows raises DTR and RTS when a serial port opens. The Xiegu backend now drops both lines on connect, then drives only the line you selected for keying. ## Notes - Both backends refuse a CI-V/CAT frame read at the wrong offset, so a garbled answer can no longer turn into a phantom frequency. - The protocol trace (Settings → CAT) covers both — see [[CAT Control]].