Field notes / App review /

Decode SSTV on iPhone and iPad

Start with a complete SSTV audio file in Files, open it in the decoder and compare the saved picture with a known reference. Add a radio and microphone path after that controlled first check.

By Alex Carter for CannedRocket · Updated .

Our verdict: Lite is a sensible way to try a complete receive-and-save workflow before paying. Its spectrum and waterfall give it more diagnostic depth than a picture-only decoder. The allowance changed in 2.0.4: only a complete image saved uses a free reception; failed or partial receptions do not count, and built-in practice is unlimited. For regular listening, judge the permanently unlocked app rather than expecting an indefinitely free receiver.

Editorial disclosure: CannedRocket publishes both this website and the SSTV apps. This is our own assessment, not an independent review. We inspected retained iOS 2.0 release tests and captures, the receiver and entitlement code, and the current UK listing. We have not performed a new physical-iPhone or off-air test for this article.

Update, 3 November 2026: the file-import walkthrough and troubleshooting below separate a repeatable WAV exercise from live microphone reception. The 2.0.4 allowance notes follow the App Store description. Screenshots and measured release checks remain historical 2.0 evidence; this update is not a new physical-device or off-air test.

Historical version check, 9 October: the UK App Store listing now shows 2.0.1, following 2.0 on 29 September, and requires iOS/iPadOS 16.6 or later. The 2.0.1 notes report receive/import stability, QSO attachment and ADX fixes, and purchase-loading recovery. The measured results below are from 2.0; we have not rerun them on 2.0.1.

Quick start: decode an SSTV WAV from Files

For unlimited practice in Lite 2.0.4, use its built-in practice signals. A downloaded WAV is an imported recording: saving a complete image can use a free reception, so check the remaining allowance first.

  1. Download the original Robot 36 WAV and save it where the Files picker can find it. Playing the audio in Safari alone does not send it to the app's file decoder.
  2. Choose the SSTV receive category, keep automatic mode detection enabled and tap Open audio, then Open Audio File.
  3. Select robot36.wav. The documented iOS import path starts file decoding after selection; do not look for the Mac-only Open Replay… control.
  4. Let the complete file finish. Its recorded duration is 38.315 seconds; that is not an iPhone processing-speed benchmark.
  5. Compare the result with the 320 × 240 Robot 36 reference: a circle, colour bars, grayscale and the R36 label. Keep the original WAV with the saved image.
  6. Open Receive log, select the completed image and use Share when you want to export it. Label it as a generated-file exercise.
What happensWhat to check next
The browser plays tones but the app has no inputSave the original file and import it using Open audio. Browser playback and app file import are separate paths.
The original file decodes but microphone reception does notCheck microphone permission, the selected audio route and the separate sound source. The file exercise does not test a radio, speaker, Bluetooth route or microphone.
Audio is present but no mode startsUse the unchanged original from the beginning, including its VIS identification header, and select SSTV rather than SSDV or DRM.

For another recording, follow the audio-decoding checklist. For desktop input routing, use the Mac receiving guide.

Recording an ISS pass for later decoding

Series 35 schedule checked, 8 November 2026. ARISS now lists 9 November at 17:45 UTC to 16 November at 08:15 UTC, with a 437.550 MHz FM downlink adjusted for Doppler and Robot 36. Its schedule describes 36 seconds of transmission followed by two minutes off. A pass can occur during a pause between pictures. Check the official schedule and dated activity notes again before receiving.

  1. Choose a local pass within the event window and set up the radio or SDR for receive only. The station can be above your horizon during a pause between images.
  2. Start recording the receiver audio before the tones begin. Keep recording through the burst and leave a little audio at both ends. Keep the original file and note the pass time in UTC.
  3. Replay the recording from Files using the quick start above. If audio stops mid-picture, keep the partial result and try another complete capture. Check the original waveform before changing modes or exporting the same clip again.

In a separate Open-SSTV 0.6.18 CLI check, the complete 38.315-second practice WAV produced a 320 × 240 Robot 36 image. Stopping the same file at 20 seconds preserved its opening tones but produced no image. Padding the shortened copy back to 38.315 seconds with zeros still produced no image. Both shortened cases returned the same generic CLI error about the header or mode. Check the end of a capture as well as its beginning.

This was a generated audio experiment, separate from the iPhone release captures below. Read the three case results or download the reproduction script. It takes the original Robot 36 WAV linked above, an Open-SSTV checkout at the recorded revision and a new output directory.

English SSTV Lite iPhone release capture showing a Martin M1 picture being decoded, input status and an audio waterfallEnglish SSTV Lite iPhone release capture showing the completed Martin M1 test picture, saved image status and receive controls
Retained Lite 2.0 iPhone simulator release captures, with their original App Store presentation: M1 in progress and the saved result. The input is a test waveform, not a radio reception. The first capture includes the compact waterfall; the full spectrum workspace is separate.

A first receive that you can repeat

The useful starting point is a known recording, not an uncertain satellite pass. Lite offers Try sample for its bundled test and Open audio for a file of your own. Replay removes the aerial, squelch and speaker-to-microphone path from the first experiment. In 2.0.4, built-in practice is unlimited; an imported recording uses a free reception only after a complete image is saved.

For a short, documented example, our first-decode guide uses this Robot 36 WAV: 48 kHz, mono, 16-bit PCM, 38.315 seconds including the header, for a 320 by 240 picture. On iOS, use Open audio, then Open Audio File, and select the downloaded recording. Keep Auto mode for a complete sample with its identification header. The accompanying video is a native Mac Pro replay, not an iOS Lite performance measurement.

What makes the workflow useful is the separation of stages. The source status tells you whether samples are arriving; the detected mode tells you what the receiver has recognised; the advancing image tells you whether line decoding is continuing. A completed receive belongs in the receive archive, not just on a transient preview. Open Receive log, select the picture, then use Share to export it.

For microphone reception, the phone still needs usable audio from a radio or another playback device. Replay is the more controlled comparison: a distorted speaker signal and a clean imported WAV are not equivalent decoder tests. Keep the original recording alongside the exported picture if you want to investigate a failure later.

The mode menu is not a promise about every historical format

M1, Scottie, Robot and PD are familiar places to start, but select the transmitted mode rather than the most attractive image size. For comparison, Martin M1 carries 320 by 256 RGB in about 114 seconds of image scanning; Robot 36 carries 320 by 240 with shared chroma in about 36 seconds. File length also includes headers and any lead-in or tail. Those are format timings, not measurements of iPhone processing speed.

Our mode table includes historical reference entries as well as app-supported modes. It is not an app compatibility checklist. Likewise, SSDV, Weather Fax and ETSI DRM A-E have separate framing, timing and input requirements; a DRM Mode E I/Q recording is not a substitute for an analog SSTV audio file.

The instruments earn their space

A picture alone cannot tell you whether silence came from the radio, the audio route or the decoder. Lite's mobile instrument workspace separates Source and Decode observation points. The Spectrum view pairs a frequency plot with a scrolling waterfall, so you can compare the incoming samples with the signal reaching the decoding stage.

The shared instrument implementation provides FFT sizes from 256 to 16,384, Hann or rectangular windows, averaging and peak hold. The waterfall has automatic or manual display range, thermal or monochrome palettes, and 5-, 8- or 10-second history. These are actual receiver controls, not a decorative animation behind the image.

The trade-off is resolution versus responsiveness. A larger FFT separates nearby tones more finely, but describes a longer slice of samples; heavy averaging smooths the trace while making brief changes less obvious. Start with the default 1,024-point Hann display before changing several controls at once. For analog SSTV, a narrow view around the audio tones is usually more useful than a large empty span.

Read the scale correctly. Ordinary microphone and replay displays are in dBFS, relative to digital full scale, not received RF power at an aerial. The implementation only uses a calibrated dBm scale when a matching calibration profile is available; choosing dBm does not calibrate a phone microphone. A bright waterfall is not proof of a good signal-to-noise ratio, and it cannot restore samples already clipped in the recording.

The iPhone capture shows why this is a compact receiver rather than a desktop panel shrunk to fit: the image, progress and source state take priority, with deeper instruments in their own workspace. An iPad offers more room for simultaneous observation. That is a layout advantage, not evidence that its decoder recovers weaker signals.

Free versus unlocked: the important boundary

The current 2.0.4 listing states that a free reception is used only after a complete image is saved. Failed or partial receptions do not count. Built-in practice is unlimited. Existing free users receive three new successful receptions once; check the remaining count in the app. This is not a daily allowance. Earlier 2.0 releases counted at mode identification, so older screenshots and reviews describe a different rule.

TaskLite before purchasePermanent Full Unlock
Supported analog SSTV and Weather Fax reception2.0.4: a free reception is used after a complete image is saved; built-in practice unlimitedUnlimited receiving
Replay and save a completed analog receiveAvailable within the allowance; importing is not a free bypassAvailable without the receive limit
SSDV and ETSI DRM receptionLocked; selecting the premium path opens the unlock offerIncluded, subject to supported profiles and input formats
Basic analog transmit preparation and station callsignAvailable; these do not spend a receiveAvailable
Callsign overlays, FSK/CW IDs, templates and automated transmitPremium tools are lockedIncluded

The UK listing checked on 9 October names the one-time purchase Permanent Decode Unlock at £2.99. The app calls it Permanent Full Unlock; the broader name reflects the digital and transmit tools it also enables. It is not a subscription. Treat the price presented by StoreKit in your own storefront as the checkout price.

Begin with the built-in practice signals, then try an imported recording. The 2.0.4 rule lets you investigate incomplete reception without spending a free reception on every detected signal. Watching this website's demonstration or downloading a WAV never uses an app receive. Saving a complete imported result can use the allowance.

Earlier 1.x and 2.0 versions had different limits. The support notes describe the current rule; the retained paywall capture below is historical simulator evidence, not the current retail allowance UI.

SSTV Lite 2.0 iPad simulator test attachment showing zero free receives remaining, the permanent unlock offer and Restore purchases
Actual 24 September iPad simulator test attachment with the exhausted allowance seeded by the test. The displayed $2.99 is a US StoreKit test price, not a UK purchase receipt. No real payment was made.

What the retained iOS checks establish

The release records below were inspected for this article. Both runs used SSTVLite on an iPad Pro 13-inch (M4), iOS 26.1 Simulator on 24 September 2026. They are not fresh tests of the retail 2.0.1 build, and the simulator's purchase environment is not Apple's live billing service.

CheckRecorded resultWhat it does not establish
Allowance and purchase UI17 passed, 0 failed, 0 skipped. Covers the remaining counter, exhausted allowance, premium receive gates, simulated purchase/restore and recoverable payment states.Three real radio receives or a real-money transaction; counters were seeded for each scenario.
Bundled receive after unlock1 passed, 0 failed, 0 skipped. A simulated purchase was followed by a bundled Martin M1 decode: Completed, mode M1, with a saved image record.A free Robot 36 receive on a physical iPhone, visual fidelity across all modes, or weak-signal performance.

The purchase tests exercise cancellation, pending approval, unverified transactions, failures, unavailable products and restoring without a purchase. Successful simulated purchase and restore remove the allowance; unsuccessful paths must not grant full access. The landscape paywall and a largest-text audit were also exercised. This is useful evidence of entitlement handling, not a full VoiceOver or whole-app accessibility certification.

The M1 result matters because it reaches a saved artifact after the unlock, rather than merely proving that a purchase button changes colour. It still says nothing about which decoder wins on a noisy HF channel. We have not measured battery drain, sustained device temperature, Bluetooth routing, background reception or calibrated sensitivity for this review.

Frequency/slant correction and partial-image saving are useful provisions in the receive implementation. There is no signal-quality sweep in these records, so we will not assign them a recovery percentage or claim they rescue every damaged transmission. The M1 sample and round-trip material provide a separate codec reference, not a substitute for an iOS field test.

On-device decoding does not mean no network use

The receive and encode pipelines run on the device. That is useful for local replay: audio does not need to go to a remote decoder to become a picture. It is a narrower statement than saying the whole app is offline or collects no data.

When signed in to iCloud, selected station records use a private CloudKit database: station profile, preferences, QSO log, satellite favourites and reminder rules. Decoded-image sync is optional. Raw WAV/IQ recordings, receiver endpoints, calibration and purchase state are outside that sync boundary. Remote SDR connections and orbit/transmitter updates have their own network requirements; private cross-device sync was not retested here.

The App Store privacy label lists potentially identity-linked location, contact information, user content, identifiers and usage data. It is developer-declared, not independently verified by Apple. Read the privacy policy for feature-specific storage and permission details instead of treating "on device" as a blanket privacy guarantee.

Who should try it, and who should skip the trial

For a first SSTV experiment, Lite's strongest argument is the complete path from imported audio to a saved picture, with enough signal visibility to investigate an empty or stalled decode. Begin with a known file, check the receive count before starting, and keep the recording. You can learn more from that single controlled receive than from several uncertain speaker captures.

For regular HF or satellite listening, the successful-reception allowance is not the basis for judging long-term value. Permanent unlock makes more sense when repeated replay, digital formats or advanced transmit preparation are part of the station. Operators who already know they want the full edition can go directly to SSTV Signal Desk (Pro); compare the editions and purchase route in our app-selection note.

Lite is not a calibrated RF instrument, and our retained M1 check is not a competitive weak-signal benchmark. Within those limits, it is a well-equipped trial receiver with a clearly bounded free allowance. The next useful evidence is a saved picture and its original waveform, not another feature list.

SSTV Lite on the UK App Store · Try the documented first decode · Share a reception report

App Store

Get SSTV for iPhone, iPad and Mac

Start with free practice in SSTV Lite, or choose the full SSTV Signal Desk (Pro) edition. Both editions are available for iPhone, iPad and Mac.

Lite includes a successful-reception allowance and optional in-app purchases. Pro is a separate one-time purchase. See your local price on the App Store, or compare the editions.