Wiki / Reporting a bug

Send us the log,
and we can fix it.

FT8AF writes a structured event log every time it runs — CAT serial traffic, USB attach events, auto-connect attempts, band changes. Most field bugs land in there. Grab it off your phone, drop it into a GitHub issue, done.

1What's in the log

FT8AF maintains a rolling text file called debug.log in its app data directory. It captures things like:

  • USB attach / detach events and which CAT device matched
  • Auto-connect attempts and any failures
  • CAT serial frames sent to and received from the rig
  • Band and frequency changes
  • Lifecycle events when the app starts and stops

It's plain text, safe to read, and doesn't include passwords or upload API keys. See the privacy section below if you'd like to skim it before sharing.

2Unlock debug mode

The easiest way to grab the log uses an in-app debug screen — no computer, no file manager, no Android-data folder permissions. The screen is hidden by default and you unlock it the same way Android's developer options work: tap the version block seven times.

  1. Open the Settings tab in FT8AF.
  2. Scroll to the bottom — the ABOUT section.
  3. Tap FAQ & Support. The About dialog opens, showing the app version and a description starting "FT8, made easy."
  4. Tap that description text seven times in a row. After the seventh tap, debug mode flips on and persists across launches.
  5. Close the About dialog. A new Debug row now appears in the ABOUT section, right under FAQ & Support.
Settings · AboutDebug unlocked
FT8AFv1.2 · build 2026.06.02
FAQ & Support
DebugView / share debug.log · ›
After unlocking — the Debug row appears in the ABOUT section. Once debug mode is on, it stays on until you toggle it again (tap the description seven more times to turn it off).

3Open Debug & share

Tap the new Debug row. A full-screen log viewer opens, tailing the last few hundred lines of debug.log live — it refreshes every couple of seconds and auto-scrolls to the bottom.

Debug · 412 linesTailing
Share Clear Logcat: OFF
13:42:01  USB attach: vid=10c4 pid=ea60
13:42:01  autoConnect attempt #1 → SUCCESS
13:42:02  CAT > FE FE 94 E0 03 FD
13:42:02  CAT < FE FE E0 94 03 00 74 04 00 14 FD
13:42:05  band → 20m, freq 14.074 MHz
13:42:18  decode: 14 messages in 64 ms
13:42:33  decode: 11 messages in 58 ms
Debug screen. Tap Share to open Android's share sheet with debug.log already attached. Pick Gmail, Outlook, Drive, Files — whatever you want to send it through.

From the top toolbar:

Share
Opens the Android share sheet with debug.log attached as a text file (subject line "FT8AF debug.log"). Pick Gmail to email it to us directly, or any app that handles file attachments — Drive, Outlook, Slack, Signal, Telegram, the system Files app, all work.
Clear
Deletes the current log. Useful if you want to start fresh before reproducing a bug — just hit Clear, exit the dialog, reproduce the issue, come back, and Share. The shorter log makes the relevant events easier for us to spot.
Logcat: ON / OFF
When ON, the viewer also appends recent logcat output from the app's own process — useful when a crash or audio bug isn't fully captured in debug.log. The logcat tail rides along when you tap Share.

Send it straight to us.

When the share sheet appears, pick your mail app and address it to whoever's working the issue — the operators are K1AF and N0RC (addresses on QRZ). Even better: open a GitHub issue first, then share the log to whichever email or cloud-drive shortcut you like and paste the link or attachment into the issue thread so it stays public.

4Fallback: Files app

If you can't get to the in-app Debug screen for some reason — older build, the unlock didn't take, you'd just rather use the file manager — the log file also lives on disk at:

/Android/data/com.bg7yoz.ft8cn/files/debug.log
  1. Open the Files (or My Files) app on your phone.
  2. Navigate to Internal storage → Android → data. On some devices, Android hides this folder by default; tap the three-dot menu and enable Show hidden files or System folders.
  3. Open the folder named com.bg7yoz.ft8cn, then files. You should see debug.log inside.
  4. Long-press debug.log and tap Share.

Android 11+ may block /Android/data in Files.

If you can't see com.bg7yoz.ft8cn in the data folder on a recent Android, install a third-party file manager like Material Files or Solid Explorer from the Play Store — both can read app data folders. Or, easier: use the in-app Debug screen above, which sidesteps this entirely.

5Fallback: ADB

For developers with a computer and Android's adb tool:

  1. On your phone, enable Developer options → USB debugging.
  2. Plug the phone into your computer with USB, accept the debug-authorization prompt.
  3. From a terminal, confirm the phone is visible:
    adb devices -l
  4. Pull the log:
    adb pull /sdcard/Android/data/com.bg7yoz.ft8cn/files/debug.log .
    On multi-device setups, target the phone explicitly with -s <serial>.

6Write the issue

A useful bug report is small — three or four short paragraphs is plenty. The pattern that always works:

  1. What did you do? "Plugged in my FT-891, tapped CQ on 20m." Concrete actions in order. No need to describe the app — just what you tapped.
  2. What did you expect to happen? "I expected the rig to key up and the app to start sending tones at 14.074."
  3. What actually happened? "The TX strip stayed on LISTENING. No PTT, no tones." If anything appeared on screen — error toast, frozen UI, weird waterfall — describe it. A screenshot is gold.
  4. How often? Every time? Only after the phone sleeps? Only on 6m? Whatever you can pin down narrows the search.
  5. Attach the log. Grab debug.log right after reproducing the issue — the most recent lines are the most useful.

7Issue template

Copy this into a new issue and fill in the blanks:

## What happened

(One or two sentences describing the bug)

## Steps to reproduce
1. (First thing you tapped)
2. (Second thing)
3. (...)

## Expected vs. actual

Expected: (what should have happened)
Actual:   (what did happen)

## Environment

- FT8AF version:   (Settings → About, or the release tag you installed)
- Source:          GitHub APK / Google Play / built from source
- Android version: (e.g. 14)
- Device:          (e.g. Pixel 8, Samsung S23, etc.)
- Radio:           (e.g. Yaesu FT-891 over USB-C)
- Cable:           (USB-C direct / OTG adapter / brand if relevant)

## Log

(Attach debug.log, or paste the last ~50 lines in a code block.)

8If the app crashed

When FT8AF crashes outright, Android keeps a separate crash report. Two places to look:

  • If you got it from Google Play, opt in to anonymous crash reporting once, and we'll see the stack trace automatically. You don't have to do anything — but adding "I just sent a crash report from device X around <time>" to the issue helps us match it up.
  • If you have ADB available, the live system log usually contains the crash trace right after it happens:
    adb logcat -d > logcat.txt
    Attach logcat.txt in addition to debug.log.

9Privacy

The debug log is just text. It captures the operating events of the app, not your personal data. You'll see lines like:

13:42:01 USB attach: vid=10c4 pid=ea60 (Silicon Labs CP210x)
13:42:01 autoConnect attempt #1 → SUCCESS
13:42:02 CAT > FE FE 94 E0 03 FD
13:42:02 CAT < FE FE E0 94 03 00 74 04 00 14 FD
13:42:05 band → 20m, freq 14.074 MHz

What's not in there: Cloudlog or QRZ API keys, your account passwords, photos, contacts, or location. Your callsign and grid square are in there, since those identify your station — but those are public information for licensed amateurs anyway.

If you'd like to skim or redact before sending, the file is plain UTF-8 text. Any text editor will open it.

Thanks for taking the time.

Real field reports — "this rig, this cable, this band, here's what happened" — are how this fork gets better. Two bug-bash passes and 58+ fixes started from reports just like the one you're about to file. 73.