Programming Software | Ft-817

ser.write(cmd) time.sleep(0.05) # Read response: 0x01 + status resp = ser.read(2) return resp def get_frequency(): """Read current VFO A frequency from FT-817""" cmd = bytes([0x03, 0x00, 0x00]) # Read frequency command cmd += bytes([calc_checksum(cmd)])

# Command: 0x01 0x00 + 5 BCD bytes + checksum cmd = bytes([0x01, 0x00] + freq_bcd) cmd += bytes([calc_checksum(cmd)]) ft-817 programming software

def set_frequency(freq_hz): """Set VFO A frequency on FT-817 (freq in Hz, e.g., 14250000)""" freq_bcd = [] freq = freq_hz // 10 # FT-817 uses 10 Hz steps for _ in range(5): # 5 BCD bytes (8 digits) freq_bcd.append(freq % 100) freq //= 100 freq_bcd.reverse() ft-817 programming software