Skip to content

Instantly share code, notes, and snippets.

@ast
Last active October 1, 2025 12:23
Show Gist options
  • Save ast/cc62dff65d35c857c3a2bd8dfb40051f to your computer and use it in GitHub Desktop.
Save ast/cc62dff65d35c857c3a2bd8dfb40051f to your computer and use it in GitHub Desktop.

Revisions

  1. ast revised this gist Feb 8, 2020. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions Yaesu FC-30.org
    Original file line number Diff line number Diff line change
    @@ -8,7 +8,7 @@ Data shown is hex. Data in [brackets] are from tuner. Data without brackets are

    Seems tuning is done in three steps:

    1) First a command is set to disengage the tuner, then a a high(er) power carrier is sent to detect SWR. If the SWR is too high the tuner won't start tuning.
    1) First a command is sent to disengage the tuner, then a a high(er) power carrier is sent to detect SWR. If the SWR is too high the tuner won't start tuning.

    2) Then the command to start tuning is sent and a lower power carrier is sent.

    @@ -31,11 +31,11 @@ The TX INH line is used to supress RF while switching the tuning circuit in/out.
    7) Reset (this is held high by the radio when on)
    8) TX INH (Tx inhibit, pulled low by tuner to inhibit tx)

    Before you connect the tuner you need to select menu 16-15 TUNER SELECT = EXTERNAL, then you need to switch of radio, connect tuner and switch on.
    Before you connect the tuner you need to select menu 16-15 TUNER SELECT = EXTERNAL, then you need to switch of radio, connect tuner and switchb it on.

    Radio detects presence of tuner based on Sense pulled to GND and also tuner sends serial data after being turned on.

    ** Commands observed
    ** Commands as observed

    - Serial is normal UART (idle high 5v) 4800bps 8N1.
    - All commands from radio are 4 bytes, with first byte beeing sent about 50ms before the last 3 (wake up?).
  2. ast revised this gist Feb 8, 2020. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions Yaesu FC-30.org
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,8 @@
    * Reverse engineering the Yaesu FC-30

    Notes about the Yaesu FC-30 tuner connected to the FT-891 radio. I have not been able to find any information online at all about the propriatry protocol used, so I'm compiling this from my obsrvations.
    Notes about the Yaesu FC-30 tuner connected to the FT-891 radio. I have not been able to find any information online at all about the propriatry protocol used, so I'm compiling this from my observations.

    The goal of this project is to connect an Icom AH-4 tuner to Yaesu radios.
    The ultimate goal of this project is to connect an Icom AH-4 tuner to Yaesu radios.

    Data shown is hex. Data in [brackets] are from tuner. Data without brackets are from radio.

  3. ast revised this gist Jun 13, 2019. No changes.
  4. ast created this gist Jun 13, 2019.
    62 changes: 62 additions & 0 deletions Yaesu FC-30.org
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,62 @@
    * Reverse engineering the Yaesu FC-30

    Notes about the Yaesu FC-30 tuner connected to the FT-891 radio. I have not been able to find any information online at all about the propriatry protocol used, so I'm compiling this from my obsrvations.

    The goal of this project is to connect an Icom AH-4 tuner to Yaesu radios.

    Data shown is hex. Data in [brackets] are from tuner. Data without brackets are from radio.

    Seems tuning is done in three steps:

    1) First a command is set to disengage the tuner, then a a high(er) power carrier is sent to detect SWR. If the SWR is too high the tuner won't start tuning.

    2) Then the command to start tuning is sent and a lower power carrier is sent.

    3) A higher power carrier is sent

    The TX INH line is used to supress RF while switching the tuning circuit in/out.

    ** Connector

    - 8-pin mini DIN connector on radio.
    - 8-pin mini DIN connector on tuner.
    - Cable is straight through (meaning TX D/RX D are swapped in the tuner)

    1) +13V OUT (not fused I've heard, so be careful)
    2) TX GND (pulled low by radio on TX)
    3) GND
    4) TX D (5v logic)
    5) RX D (5v logic)
    6) Sense (this is connected to GND in the tuner, most likely for detection)
    7) Reset (this is held high by the radio when on)
    8) TX INH (Tx inhibit, pulled low by tuner to inhibit tx)

    Before you connect the tuner you need to select menu 16-15 TUNER SELECT = EXTERNAL, then you need to switch of radio, connect tuner and switch on.

    Radio detects presence of tuner based on Sense pulled to GND and also tuner sends serial data after being turned on.

    ** Commands observed

    - Serial is normal UART (idle high 5v) 4800bps 8N1.
    - All commands from radio are 4 bytes, with first byte beeing sent about 50ms before the last 3 (wake up?).
    - Command from radio always begins with 0xff.
    - Frequency is transmitted as 4 bit BCD. Example: 0x0722 = 7.22MHz.

    - Radio turn on tuner disabled:
    (200ms) [a0] (800ms) [a1] ff e0 01 00 ff e0 00 01 ff f1 00 00 [a0] [a1]

    - Radio turn on tuner enabled:
    (200ms) [a0] (800ms) [a1] ff e0 01 00 ff e0 00 01 ff f0 00 00 [a0] [a1] ff f0 07 16 [a0] [a1]

    - Tuner enable:
    - ff f0 07 06 [a0] [a1]

    - Tuner disable:
    - ff f1 00 00 [a0] [a1]

    - Tuning:
    ff f1 00 00 [a0] [a1] ff f2 07 06 [a0] [a1]
    - Seems first tuner is disabled. A carrier is sent to check SWR. Then Tuning starts. Final a1 sent when tuner is finshed. After this a test carrier is sent.

    - Changing VFO frequency to 7.16MHz (example). This is sent for every 10KHz when tuner is engaged.
    - ff f0 07 16 [a0] [a1]