For about three years, the same question kept landing on Garmin's developer forums: can we use the microphone?
The replies tell the story. One developer searched the API documentation and came up empty. Another pointed out that the Venu 3 clearly had the hardware and that a basic voice notes app should be possible. A third asked again after the Fenix 8 shipped with a mic and a speaker. Nothing came back.
That changed this week. Garmin published Connect IQ SDK 9.3.0 on October 20, and its API documentation, regenerated on October 19, now carries a top level Audio module where there was none before. Two submodules come with it: Audio.Capture for the microphone and Audio.Output for playback.
The permissions are the real news
Garmin did not simply flip a switch. Both halves of the new audio stack sit behind permissions that did not exist in the SDK before.
AudioInput covers capture. AudioOutput covers playback. An app that wants either has to declare it, which means the app store listing for anything using your watch's microphone will say so. That is the part worth watching, because a watch that sits next to your mouth for voice commands and calls is a different privacy proposition than one that only counts your steps.
The development forum thread that asked for microphone access was not wrong about the underlying point, though. The hardware was there. The software door was locked.
What apps can now do with the microphone
The documentation is unusually specific, which suggests Garmin thought hard about limits. Capture supports WAV and Ogg containers, with LPCM at 16-bit or Opus compression, sample rates from 8 kHz up to 44.1 kHz, in mono or stereo. A developer chooses a window size and decides what happens when that buffer fills: stop capturing, or keep going.
There is a noise reduction and echo cancellation filter available, though Garmin notes the app has to ask for it because not every device supports it. Audio arrives in chunks through a callback while recording is still running, which is what makes live processing possible rather than just saving a file at the end.
Then the walls:
- Capture does not run in the background. Garmin defines an explicit error code for trying it.
- Watch faces cannot use the audio APIs. Apps, glances and audio apps can.
- Apps have to ask whether a given format is supported, because the answer varies by device.
Playback, with one obvious gap
Audio.Output handles play, pause, resume, seek and volume from 0 to 100, with callbacks for playback state and position. Apps can play a clip packed into the app itself, audio assembled while the app runs, or a stream fed in piece by piece, which is the pattern a service would use to deliver something new after the watch is already on your wrist.
Two limits stand out. There is no text-to-speech, so anything an app says out loud has to be audio it ships or generates itself. And the docs do not say whether an app can choose between the watch speaker and Bluetooth headphones. Both gaps point the same way: Garmin is handing developers a pipe, not a voice.
Dynamic resources, the quiet third feature
The same API level adds Application.DynamicResource, which lets an app turn data it already has into something usable at runtime: a PNG, JPEG, or the first frame of a GIF as an image, audio as one of the new audio sources, or stored content such as FIT and GPX files. A developer can pull new artwork or a new sound into an app and use it immediately, with no Connect IQ Store update in between.
For watch faces specifically, the docs do not say whether dynamic resources are allowed. Given that audio is off limits to watch faces, that is a question worth settling before anyone builds a face that phones home for its artwork.
LTE moves from read-only to controllable
LTE is the third door Garmin opened, and it is the one most likely to change how apps behave.
checkLteConnection reports whether LTE is usable and, if it is not, why. Garmin's status codes cover the cases you would expect and a couple you might not: LTE switched off, airplane mode, no coverage, modem on standby, modem searching, and a reduced frequency mode when the watch is connected but limiting traffic.
More interesting is that apps can now turn LTE on themselves through enableConnection, with an optional callback for status changes, and turn it off again with disableConnection. The documentation is blunt about the housekeeping: an app is responsible for switching the connection back off, and any connection it enabled dies when the app exits, becomes inactive, or goes five minutes without a web or image request.
That five minute timer is the tell. If web and image requests are what keep the connection alive, then an app running on a watch with no phone nearby may be able to reach the internet on its own. Garmin has not actually said that. The documentation for web requests still describes them travelling over Wi-Fi or a phone connected by Bluetooth, and the SDK 9.3.0 release notes do not mention LTE at all. Older release notes show web requests running over LTE during the sync mode used by music and bulk download apps on watches like the Forerunner 945 LTE, which is not the same thing as an app opening its own pipe.
So treat that as the open question rather than the headline.
Garmin lists the LTE status and control calls for the Fenix 8 Pro in 47mm, 51mm and MicroLED versions, the Quatix 8 Pro, the Fenix 9 and Fenix 9 Pro, and the MARQ (Gen 3) line. Apps can include the calls even on watches that have no LTE, which is why Garmin expects developers to check availability before relying on any of it.
Which watches are in scope
The audio module's device list is the broadest part of this. As documented, it covers the Fenix 8 range including the Tactix 8 and Quatix 8, the Fenix 8 Pro, the Fenix 9 and Fenix 9 Pro, the Fenix E, Enduro 3 and Enduro 4, the MARQ (Gen 3) models, Venu 4 and Venu X1, Vivoactive 6, the Forerunner 70, 170, 170 Music, 570 and 970, the Approach S72, and the D2 Mach 2 and Mach 2 Pro.
Having the API in the list is not the same as having a microphone and a speaker. Garmin's documentation says what the software allows, not what each case contains, and the distinction matters for anyone shopping a cheaper model specifically for voice features.
Nothing changes on your wrist yet
This is a toolkit release. The APIs exist, the permissions exist, and none of it does anything until app makers update their apps to use them. Given that Garmin developers have been asking for microphone access since 2023 and got silence, the lag between today and a useful voice memo app could still be measured in months.
The pressure is also pointed at Garmin itself. Once third parties can record audio and play sound, the case for a first-party note-taking or voice feature that actually works gets harder to ignore. We have written before about Garmin's voice features draining battery on the Ok Garmin line, and about how slowly the Connect IQ review backlog moves. Handing the microphone to developers sidesteps the first problem and runs straight into the second.
Bottom Line
Connect IQ 9.3.0 is the release that finally treats a Garmin watch as something other than a sensor package with a screen. Microphone, speaker, runtime downloads and app controlled LTE, all under one API level, all behind permissions users can see.
The catch is the same catch as always with Garmin software: the tools ship, the experiences arrive whenever developers and reviewers get around to it. If you have been waiting for your Fenix 9 or Forerunner to do something new on its own, the door is open. Nobody has walked through it yet.
Sources: Garmin Connect IQ API documentation (Toybox.Audio, Toybox.Audio.Capture, Toybox.Audio.Output, Toybox.Application.DynamicResource and Toybox.Communications pages, generated October 19, 2026), Garmin developer forums (the microphone access request thread and developer discussion of the 9.3.0 release notes), Garmin Rumors. One independent write-up of the SDK exists alongside Garmin's own documentation; no second outlet has covered it, so the API details here are attributed to Garmin's documentation rather than to any outlet's summary.





