How to log a flight with voice in DaPilot
Voice entry is the fastest way to log a flight on a tired evening. You tap the mic, talk through the flight in plain language, tap Done, and DaPilot writes the row. It takes about thirty seconds for a typical leg and another fifteen seconds to confirm the numbers on the review screen.
This guide covers what to say, what DaPilot understands, what it asks you to double-check, and the things voice entry does not do well.
Why this matters
Most missed logbook entries come from one of two failure modes. You forget to log because the typing is annoying, or you backfill a week later from memory and the numbers drift. Voice entry kills both. You log the flight on the way to the parking lot before the details fade, and the typing tax disappears.
What you need
- DaPilot Pro, or one of your three free voice trials still available on the free tier.
- Decent reception (the AI extraction runs server-side).
- A quiet enough space that the iPhone microphone can hear you. A car or a parked airplane works fine. A noisy crew bus is harder.
How voice entry works under the hood
You speak. The iOS Speech Recognition framework transcribes the audio into text on your device. The text goes to DaPilot's edge function, which routes it through OpenRouter to Google Gemini 2.5 Flash Lite with a flight-extraction prompt. The model returns structured JSON: route, aircraft, times, approaches, and so on. Anything the model had to guess is flagged in an uncertainFields array. Your iPhone shows the parsed flight on a review screen with the uncertain fields tagged with a "Double-check" pill.
You confirm or edit, then save. Total time end-to-end is about eight seconds for the AI step. Audio is not retained server-side.
What to say
1Open the entry sheet
Tap the Voice Log button on the flights dashboard. The voice entry sheet opens with a "Start Recording" button.
2Start recording, speak, then tap Done
Tap Start Recording. The mic icon pulses, "Listening" appears, and the transcription shows in real time so you can see what the iPhone heard. When you are done speaking, tap Done. To bail out without saving, tap Cancel in the navigation bar.
3Say the basics first
Lead with route and aircraft, then times. Example:
"KMRY to KSFO, November seven three seven Bravo Golf, two point one block, one point eight flight time, all PIC, two ILS approaches, one full-stop, one touch and go, day VMC."
DaPilot parses every clause:
- Route: KMRY, KSFO
- Aircraft: N737BG (the model normalizes "November seven three seven Bravo Golf" to N737BG)
- Block time: 2.1
- Flight time: 1.8
- PIC time: 1.8 (matches total because you said "all PIC")
- Approaches: 2 ILS
- Day landings: 1 full-stop, 1 T&G
4Add the airline-specific bits
If you're a line pilot using Airline Mode, mention OUT/OFF/ON/IN times. Example:
"Block out one four oh two zulu, off one four ten, on one five oh five, block in one five thirteen. Augmented crew of three. Acclimated."
DaPilot reads zulu times in 24-hour format and stores them as UTC. The augmented and acclimated flags map to the corresponding FAR 117 fields.
5Pause and review
After you tap Done, DaPilot shows a review screen. Every field that the model parsed shows the value. Fields the model had to guess (PIC defaulted from total, tail number fuzzy-matched, ambiguous time format) get a "Double-check" pill in amber. Tap any field to edit.
6Save
Tap Save. The flight lands at the top of the dashboard and the totals refresh. If you noticed a typo in the review screen, edit before save; you can always edit later, but reviewing once now is easier than tracking down a mistake six months from now.
What DaPilot listens for specifically
| You say | DaPilot stores |
|---|---|
| "two point one" | 2.1 hours |
| "one fifty" | 1.83 hours (one hour fifty minutes) |
| "forty-five minutes" | 0.75 hours |
| "an hour and a half" | 1.5 hours |
| "November seven three seven Bravo Golf" | N737BG |
| "Cessna seven two" | aircraft type C172 |
| "two ILS approaches" | approaches: 2, type ILS |
| "RNAV GPS two two" | approach name "RNAV (GPS) 22" |
| "one full stop, one touch and go" | full-stop: 1, T&G: 1 |
| "all PIC" | PIC time matches total time |
| "I was the FO" | SIC time matches total, PIC = 0 |
| "block out fourteen oh two zulu" | OUT time: 14:02 UTC |
| "augmented" | augmented crew: true |
If you say something the model has not seen before, it puts the literal phrase in the remarks and flags total time as the only number it could compute. You confirm.
When to use voice and when to skip it
Use voice for fresh flights you remember clearly. The model has the context it needs from your verbal description.
Skip voice for:
- Backlog from a paper logbook. Use OCR scanning instead.
- Flights with weird time splits (multiple legs in a single rotation, dual-given that crossed a day boundary). The manual form is faster than dictating exceptions.
- Flights where you genuinely don't remember the exact numbers. Don't speak guesses; pull the OOOI from your operator's app.
Tips from line pilots
I dictate the flight on the way to the parking lot, while the brakes are still warm. Tapping Done, glancing at the review screen, and tapping Save takes about a minute. Backfilling from memory three days later is what kills logbook accuracy.
If voice entry consistently misreads your tail number (some non-US registrations have unusual phonetics), open the aircraft form once and add the tail manually. After that, the model fuzzy-matches against your fleet and gets it right.
If your operator uses non-standard phrasing for OOOI ("scheduled out," "actual out," "release time"), spell it out the first time and DaPilot's review screen will show you what it parsed. Adjust your phrasing or just edit the row.
Free trial limits
The free tier ships with three voice entries. There's no time limit; the counters do not reset. If you have an active Pro subscription, voice entry is unlimited and the counter is hidden.
· 8 min read