1What's in the log
JTTYAF 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
- Every
JTTY RX:decode andJTTY TX:over, with offset and frame count - 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.
2Report a Bug, in the app
The quickest route is built in. In Settings, scroll to the About section and tap Report a Bug. Describe what happened in the box; JTTYAF appends the app version and build, your device model and Android version automatically, then hands the report to your email app or opens a pre-filled GitHub issue — your choice. Nothing is sent until you send it.
3Share or view the log
- Share logs
- Opens the Android share sheet with
debug.logattached as a text file. Pick Gmail to email it, or any app that handles attachments — Drive, Discord, Signal, the Files app. Best used right after you've reproduced the problem, so the useful lines are at the end. - View logs
- A full-screen viewer that tails the log live. Handy for checking whether CAT is actually talking to the rig, or what the decoder printed about a signal you couldn't copy.
4Fallback: Files app
If you'd rather use the file manager, the log and the RX/TX history live on disk at:
/Android/data/radio.ks3ckc.jttyaf/files/debug.log
/Android/data/radio.ks3ckc.jttyaf/files/jtty_all.txt
- Open the Files (or My Files) app on your phone.
- Navigate to Internal storage → Android → data. On some devices this folder is hidden; tap the three-dot menu and enable Show hidden files or System folders.
- Open
radio.ks3ckc.jttyaf, thenfiles. - Long-press
debug.logand tap Share.
Android 11+ may block /Android/data in Files.
If you can't see radio.ks3ckc.jttyaf in the data folder on a recent Android, install a third-party file manager like Material Files or Solid Explorer — both can read app data folders. Or, easier: use Share logs in Settings, which sidesteps this entirely.
5Fallback: ADB
For developers with a computer and Android's adb tool:
- On your phone, enable Developer options → USB debugging.
- Plug the phone into your computer with USB, accept the debug-authorization prompt.
- From a terminal, confirm the phone is visible:
adb devices -l - Pull the log (and the history, if the bug is about a decode):
On multi-device setups, target the phone explicitly withadb pull /sdcard/Android/data/radio.ks3ckc.jttyaf/files/debug.log . adb pull /sdcard/Android/data/radio.ks3ckc.jttyaf/files/jtty_all.txt .-s <serial>.
6Write the issue
A useful bug report is small — three or four short paragraphs is plenty. The pattern that always works:
- What did you do? "Plugged in my IC-705, tapped F1 on 20m at 1500 Hz." Concrete actions in order.
- What did you expect to happen? "I expected the rig to key and my CQ to echo in the print."
- What actually happened? "PTT keyed, but WSJT-X on the laptop decoded nothing." If anything appeared on screen — error toast, frozen UI, weird waterfall — describe it. A screenshot is gold.
- How often? Every time? Only after the phone sleeps? Only with the wide search on? Whatever you can pin down narrows the search.
- Attach the log. Grab
debug.logright after reproducing the issue — the most recent lines are the most useful. For decode problems, a short WAV of the audio (WSJT-X can save one) is the single most useful thing you can attach.
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
- JTTYAF 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. Icom IC-705 over USB-C)
- Cable: (USB-C direct / OTG adapter / brand if relevant)
- Contest profile: General / RTTY Roundup / Field Day
- Wide search: on / off
## Log
(Attach debug.log, or paste the last ~50 lines in a code block.)
8If the app crashed
JTTYAF has no crash-reporting SDK — by design — so when it crashes outright, the trace lives only on your phone. If you have ADB available, the live system log usually contains it right after it happens:
adb logcat -d > logcat.txt
Attach logcat.txt in addition to debug.log. Useful tags to search for: NativeJttyCodec, MicRecorder, UsbAudioDevice, CableConnector, CableSerialPort, UsbHostManager.
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 A4 E0 03 FD
13:42:05 band → 20m, freq 14.090 MHz
13:42:18 JTTY RX: 1500 Hz -3 dB 1 frame "CQ K1ABC CQ"
13:42:23 JTTY TX: 1500 Hz 1 frame "K1ABC K1AF"
What's not in there: Cloudlog, QRZ or World Radio League API keys, passwords, audio, photos, contacts, or location. Your callsign and grid square are in there — and so is the text of the QSOs you had, since that's what was on the air — 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. The full policy is on the privacy page.
Thanks for taking the time.
Real field reports — "this rig, this cable, this band, here's what happened" — are how a brand-new mode gets solid. 73.