Skip to content

Instantly share code, notes, and snippets.

@yarshure
Created May 17, 2021 04:31
Show Gist options
  • Star 6 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save yarshure/dcc25d7f01df7006b3335ecd39d75609 to your computer and use it in GitHub Desktop.
Save yarshure/dcc25d7f01df7006b3335ecd39d75609 to your computer and use it in GitHub Desktop.
gestalt_query keys
Key Name Description
======== ===========
3GProximityCapability Whether the device has a 3G proximity sensor
3GVeniceCapability Whether the device supports FaceTime over cellular
720pPlaybackCapability Whether the device supports 720p video (identical to kMGQDeviceSupports720p)
APNCapability
ARM64ExecutionCapability Whether the device supports executing arm64 binaries
ARMV6ExecutionCapability Whether the device supports executing armv6 binaries
ARMV7ExecutionCapability Whether the device supports executing armv7 binaries
ARMV7SExecutionCapability Whether the device supports executing armv7s binaries
AWDID AWD ID key
AWDLCapability Whether the device supports Apple Wireless Direct Link (AWDL)
AccelerometerCapability Whether the device is capable of using an accelerometer
AccessibilityCapability Whether the device has the accessibility capability
AcousticID Determines a unique acoustic tuning for a platform.
ActivationProtocol Device activation protocol version. See MGActivationProtocol enum. The new activation protocol (Tunnel1 activation) is: kMGActivationProtocolV2.
ActiveWirelessTechnology The wireless networking technology that is currently being used
ActuatorResonantFrequency Resonant frequency of actuator
AdditionalTextTonesCapability
AggregateDevicePhotoZoomFactor Max Photo Zoom for Aggregate Device
AggregateDeviceVideoZoomFactor Max Video Zoom for Aggregate Device
AirDropCapability Whether the device supports AirDrop
AirDropRestriction Whether use of AirDrop is currently restricted
AirplaneMode Whether the device is currently in Airplane Mode
AirplayMirroringCapability Whether the device supports Airplay mirroring
Allow32BitApps Whether the device supports 32 bit apps
AllowOnlyATVCPSDKApps Does the device only allow ATVCPSDKApps
AllowYouTube Whether YouTube is allowed on this device
AllowYouTubePlugin Whether the YouTube plugin is allowed on this device
AmbientLightSensorCapability Whether the device has an ambient light sensor
AmbientLightSensorSerialNumber Serial Number of Ambient Light Sensor (directly from the Hardware - CFString)
ApNonce Nonce for ticket-based AP personalization
ApNonceRetrieve Retrieve full Nonce for ticket-based AP personalization
AppCapacityTVOS App Capacity Reserved on TVOS
AppStoreCapability Whether the device supports the App Store
AppleInternalInstallCapability Whether the installed OS is an internal build (identical to kMGQInternalBuild)
AppleNeuralEngineSubtype Fetches the ANE subtype from the registry
ApplicationInstallationCapability Whether the device can install applications
ArcModuleSerialNumber Arc haptic module serial number
ArrowChipID Device's Arrow Chip ID
ArrowUniqueChipID Device's Arrow ECID
ArtworkTraits Returns Artwork traits table. Keys are defined in MobileGestalt.h as kMGArtworkDevice*
AssistantCapability Whether the device supports Siri
AudioPlaybackCapability Whether the device supports audio playback
AutoFocusCameraCapability Whether the device's camera is capable of auto focus
AvailableDisplayZoomSizes Available Display Zoom Sizes
BacklightCapability Whether the device has backlight
BasebandAPTimeSync GPIO support for BB-AP time sync
BasebandBoardSnum Serial number of the device's baseband board. Not to be confused with the device serial number (kMGQSerialNumber) or the baseband's serial number (kMGQBasebandSerialNumber)
BasebandCertId Baseband's cert ID
BasebandChipId Chip ID number for the baseband
BasebandChipset Baseband's chipset
BasebandClass Baseband's class
BasebandFirmwareManifestData Provisioning manifest
BasebandFirmwareUpdateInfo Baseband Firmware Update Info from Vinyl
BasebandFirmwareVersion Version number of the firmware installed on the baseband
BasebandKeyHashInformation Baseband's key hash information
BasebandPostponementStatus Baseband's postponement status
BasebandPostponementStatusBlob Baseband's postponement status Blob
BasebandRegionSKU Baseband's region SKU
BasebandRegionSKURadioTechnology The radio technology word (the second word) of the baseband's region SKU
BasebandSecurityInfoBlob Baseband's security Blob
BasebandSerialNumber Serial number of the baseband
BasebandStatus Baseband's postponement status for activation purposes
BasebandUniqueId Baseband unique ID in form of <baseband chipid>-<baseband snum>
BatteryCurrentCapacity Battery charge capacity
BatteryIsCharging Whether the battery is currently charging
BatteryIsFullyCharged Whether the battery is fully charged
BatterySerialNumber Serial # of battery
BlueLightReductionSupported Whether the device supports Blue Light Reduction
BluetoothAddress MAC address for the device's bluetooth interface, in the format "ff:ff:ff:ff:ff:ff" (lower case letters)
BluetoothAddressData MAC address for the device's bluetooth interface, as a CFData (6 bytes)
BluetoothCapability Whether the device has bluetooth
BluetoothLE2Capability Whether the device supports low energy bluetooth 2
BluetoothLECapability Whether the device supports low energy bluetooth
BoardId Device's board ID
BoardRevision Device's board revision tracking hardware phases
BootManifestHash Hash of the boot manifest
BootNonce Boot nonce used for personalization
BridgeBuild what build is bridge running
BridgeRestoreVersion The restore bundle version currently running on the Bridge. This should be used for restore purposes only
BuddyLanguagesAnimationRequiresOptimization Whether the device requires Buddy to perform optimizations when displaying its language animation
BuildID UUID of the installed build from the SystemVersion.plist
BuildVersion Build version of the installed OS, e.g., "8F110"
C2KDeviceCapability
CPUArchitecture Architecture of the device's CPU, e.g., "armv7" for H3
CPUSubType Preferred userspace cpu_subtype of the device
CPUType Preferred userspace cpu_type of the device
CallForwardingCapability Whether the device supports call forwarding
CallWaitingCapability Whether the device supports call waiting
CallerIDCapability Whether the device supports Caller ID
CameraAppUIVersion Indicates which UI style should be used by the Camera App.
CameraCapability Whether the device is capable of taking still photos
CameraFlashCapability Whether the device has a flash
CameraFrontFlashCapability Whether the device has a front flash
CameraHDR2Capability Whether the device supports HDR 2.0
CameraHDRVersion Returns the HDR version supported by the device
CameraLiveEffectsCapability Whether the device supports live effects (including B&W)
CameraMaxBurstLength Determine what is the maximum camera burst allowed on the device.
CameraRestriction Whether use of the camera is currently restricted
CarrierBundleInfoArray The array of carrier bundles returned by CT. Requres com.apple.private.MobileGestalt.AllowedProtectedKeys entitlement
CarrierInstallCapability Whether the installed OS is a carrier build
CellBroadcastCapability
CellularDataCapability Whether the device is capable of cellular data (identical to kMGQHasBaseband)
CellularTelephonyCapability Whether the device is capable of cellular telephony (identical to kMGQTelephonyCapability)
CertificateProductionStatus Raw production status
CertificateSecurityMode Raw security mode status
ChipID Chip ID component of the hardware platform, e.g. 0x8930 for H3
CloudPhotoLibraryCapability Whether the device supports Cloud Photo Library
CoastlineGlowRenderingCapability Whether the device can render the coastline glow
CompassCalibration The calibration data of the first compass returned from IOKit
CompassCalibrationDictionary The calibration data of the all compasses returned from IOKit
CompassType Returns the type of compass present in the device, where 0 is no compass.
ComputerName The computer's name
ConferenceCallType
ConfigNumber config-number from devicetree as sint32
ContainsCellularRadioCapability Whether the device is capable of cellular radio (identical to kMGQHasBaseband)
ContinuityCapability Whether the device supports continuity
CoreRoutineCapability Whether the device has CoreRoutine capabilty
CoverglassSerialNumber Serial Number of Coverglass (directly from the Hardware - CFString)
DMin Device's DMin content
DataPlanCapability Whether the device is an iPad that can support a data plan
DebugBoardRevision debug-board-revision key from IODeviceTree:/chosen
DelaySleepForHeadsetClickCapability
DesenseBuild Whether the installed OS is a desense build
DeviceAlwaysPrewarmActuator Is haptic actuator in prewarm mode when screen is on
DeviceBackGlassMaterial Returns Back Glass Material (via BGMt)
DeviceBackingColor Returns Back of Enclosure Color (via ClBG)
DeviceBrand What Brand is the Device
DeviceClass Device class for this device. One of the kMGDeviceClass* constants defined below
DeviceClassNumber Device class (one of the MGDeviceClass enum values)
DeviceColor Color of the device's case/cover glass. One of the kMGColor* constants defined below
DeviceColorMapPolicy Color remapping policy for kMGQDeviceRGBColor and kMGQDeviceEnclosureRGBColor (one of the MGDeviceColorMapPolicy enum values)
DeviceCornerRadius Corner Radius in points
DeviceCoverGlassColor Returns Cover Glass Color (via ClCG)
DeviceCoverGlassMaterial Returns Cover Glass Material (via CGMt)
DeviceCoverMaterial Returns cover glass type (one of the MGDeviceCoverMaterial)
DeviceEnclosureColor Color of the device's enclosure. One of the kMGColor* constants defined below
DeviceEnclosureMaterial Returns Back of Enclosure Material (via EnMt)
DeviceEnclosureRGBColor Color of the device's enclosure as an RGB value (0xrrggbb)
DeviceHasAggregateCamera This device supports (has) an Aggregate (dual lens) Camera
DeviceHousingColor Returns Housing Color (via ClHS) - (think - enclosure color)
DeviceIsMuseCapable Specifies device's Muse capability.
DeviceKeyboardCalibration [Factory only] Returns the keyboard language information on bridgeOS for the keyboard AppleCare workflow
DeviceLaunchTimeLimitScale Launch watchdog timeouts.
DeviceName Device name for the device. One of the kMGDeviceName* constants defined below
DeviceNameString Device name for the device (as historically returned by GS; differs from kMGQDeviceName) (identical to kMGQGSDeviceName)
DevicePrefers3DBuildingStrokes Whether the device prefers 3D building strokes for performance reasons
DevicePrefersBuildingStrokes Whether the device prefers building strokes for performance reasons
DevicePrefersCheapTrafficShaders Whether the device prefers cheap traffic shaders for performance reasons
DevicePrefersProceduralAntiAliasing Whether the device prefers procedural antialiasing over texture-based antialiasing for road rendering
DevicePrefersTrafficAlpha Whether the device prefers using alpha for traffic for performance reasons
DeviceProximityCapability Whether the device supports Rose / R1 chip
DeviceRGBColor Color of the device's case/cover glass as an RGB value (0xrrggbb)
DeviceRequiresPetalOptimization Does the Device Require Petal Optimization
DeviceRequiresProximityAmeliorations Whether the device requires proximity ameliorations
DeviceRequiresSoftwareBrightnessCalculations Does device require software brightness calculations
DeviceSceneUpdateTimeLimitScale App resume watchdog timeouts.
DeviceSubBrand What Sub Brand is the Device
DeviceSupports1080p Whether the device supports 1080p video
DeviceSupports3DImagery Whether the device supports maps with three-dimensional imagery
DeviceSupports3DMaps Whether the device supports three-dimensional maps
DeviceSupports3rdPartyHaptics Whether the device can support CoreHaptics
DeviceSupports4G Whether the device supports 4G cellular data
DeviceSupports4k Whether the device supports 4K video
DeviceSupports64Bit Whether the device supports executing 64-bit binaries
DeviceSupports720p Whether the device supports 720p video
DeviceSupports9Pin Whether the device has a 9 pin (E75) connector
DeviceSupportsAOP Whether the device supports AOP
DeviceSupportsARKit Whether the device supports ARKit
DeviceSupportsASTC Whether device supports ASTC (Adaptive Scalable Texture Compression)
DeviceSupportsAdaptiveMapsUI Whether the device should use high quality graphics in maps
DeviceSupportsAlwaysListening Does the device support Always Listening Functionality
DeviceSupportsAlwaysOnCompass Whether the device supports Always On Compass
DeviceSupportsAlwaysOnTime Does the device support Always On Time Functionality
DeviceSupportsApplePencil Does device support Apple Pencil
DeviceSupportsAutoLowLightVideo Whether the device supports automatic low-light video.
DeviceSupportsAvatars Whether the device supports avatars and stickers.
DeviceSupportsBatteryModuleAuthentication Does the device support BatteryModule authentication.
DeviceSupportsBerkelium2 Does the Device support Berkelium2
DeviceSupportsCCK Does device support the Camera Connection Kit
DeviceSupportsCameraCaptureOnTouchDown Whether the device supports camera capture on touchdown.
DeviceSupportsCameraDeferredProcessing Whether the device supports Deferred Processing
DeviceSupportsCameraHaptics Does the device support campera haptics
DeviceSupportsCarIntegration Whether the device supports car integration (non-overrideable; see also kMGQStarkCapability)
DeviceSupportsCinnamon Does the device support Cinnamon
DeviceSupportsClosedLoopHaptics Whether the device supports Closed Loop Haptics - check DeviceSupportsHaptics first
DeviceSupportsCrudeProx Whether the device supports Crude Prox
DeviceSupportsDClr Whether the device uses DClr instead of ClrC
DeviceSupportsDoNotDisturbWhileDriving Whether the device supports Do Not Disturb while driving
DeviceSupportsELabel Whether the device supports year of manufacturing e-Label
DeviceSupportsEnhancedAC3 Whether the device supports EnhancedAC3 decode (identical to kMGQDeviceSupports64Bit)
DeviceSupportsEnvironmentalDosimetry Whether the device supports envrionmental audio exposure.
DeviceSupportsExternalHDR Whether the device can support external HDR
DeviceSupportsFloorCounting Whether the device supports floor counting
DeviceSupportsHDRDeferredProcessing Whether the device supports Deferred Processing (identical to kMGQDeviceSupportsCameraDeferredProcessing)
DeviceSupportsHMEInARKit Whether the device supports HMO for ARKit 3.0
DeviceSupportsHaptics Whether the device supports Haptics
DeviceSupportsHardwareDetents Does the device support hardware detents
DeviceSupportsHeartHealthAlerts Whether the device supports heart health alerts
DeviceSupportsHeartRateVariability Whether the device supports HRV/SDNN
DeviceSupportsHiResBuildings Whether the device supports maps with high resolution building images
DeviceSupportsLineIn Whether the device supports audio through line-in
DeviceSupportsLiquidDetection_CorrosionMitigation Whether the device supports Liquid Detection/Corrosion Mitigation
DeviceSupportsLivePhotoAuto Does the device support Live Photo Auto
DeviceSupportsLongFormAudio Does the device support long form audio
DeviceSupportsMapsBlurredUI Whether the device supports Maps Blurred UI
DeviceSupportsMapsOpticalHeading Whether the device supports AR navigation in maps.
DeviceSupportsMomentCapture Indicates whether or not a device supports the long-press video recording from photo mode.
DeviceSupportsNFC Whether the device supports NFC
DeviceSupportsNavigation Whether the device supports navigation
DeviceSupportsNewton Does the device support Newton.
DeviceSupportsOnDemandPhotoAnalysis Whether the device supports on-demand photo analysis.
DeviceSupportsP3ColorspaceVideoRecording Whether the device supports recording video in P3 colorspace
DeviceSupportsPeriodicALSUpdates Whether the device's ambient light sensor provides periodic light level updates
DeviceSupportsPhotosLocalLight Does the device support Local Light in Photos
DeviceSupportsPortraitIntensityAdjustments This device supports allows adjusting the light intenstiy of portrait mode
DeviceSupportsPortraitLightEffectFilters Whether the device supports portrait light effects filters
DeviceSupportsRGB10 Does device suppoort RGB-10/w30r
DeviceSupportsRaiseToSpeak Does the device support raise to speak.
DeviceSupportsSiDP Does the device support SiDataProtection
DeviceSupportsSideButtonClickSpeed Whether the device supports customizing the side button click speed
DeviceSupportsSimplisticRoadMesh Whether the device supports simplified road meshes
DeviceSupportsSingleCameraPortrait Whether the device supports portrait mode on single-camera devices
DeviceSupportsSiriBargeIn Whether the device supports having Siri barge-in / echo-cancellation.
DeviceSupportsSiriSpeaks Does watch suppoort Siri Speaks
DeviceSupportsSiriSpokenMessages Whether the device supports having Siri read incoming messages.
DeviceSupportsSpatialOverCapture Indicates if spatial overcapture is supported.
DeviceSupportsStereoAudioRecording Whether the device supports stereo audio recording
DeviceSupportsStudioLightPortraitPreview Whether the device supports previews for studio light portraits
DeviceSupportsSwimmingWorkouts Whether the device supports swimming workouts
DeviceSupportsTapToWake Device Supports Tap To Wake
DeviceSupportsTelephonyOverUSB Whether the device supports telephony over USB
DeviceSupportsTethering Whether the device supports tethering
DeviceSupportsToneMapping Whether the device supports Tone Mapping
DeviceSupportsUSBTypeC Whether the device has a USB-C (E85) connector
DeviceSupportsVSHCompensation Whether the device supports VSH compensation
DeviceSupportsVoiceOverCanUseSiriVoice Whether voiceover is enabled to use the default Siri voice.
DeviceSupportsWebkit Does the device support webkit
DeviceSupportsWirelessSplitting Does the device support audio splitting on wireless links
DeviceSupportsYCbCr10 Does device support YCbCr-10
DeviceVariant The device's variant (either the guess, see kMGQDeviceVariantGuess, or the actual variant as returned from activation)
DeviceVariantGuess The device's best guess at its variant
DiagData The device's diagnostic data
DictationCapability Whether the device supports dictation
DieId Device's die ID
DiskUsage Various disk usage statistics (keys are kMGQDiskUsage*)
DisplayDriverICChipID Device's display driver IC Chip ID
DisplayFCCLogosViaSoftwareCapability
DisplayMirroringCapability Whether the device supports display mirroring
DisplayPortCapability Whether the device supports outputting video to DisplayPort
DualSIMActivationPolicyCapable Whether the device could support dualSIM
EUICCChipID EUICC Chip ID of the hardware platform
EffectiveProductionStatusAp Current AP production status (if demoted, after-demotion status)
EffectiveProductionStatusSEP Current SEP production status (if demoted, after-demotion status)
EffectiveSecurityModeAp Current AP security mode status (if demoted, after-demotion status)
EffectiveSecurityModeSEP Current SEP security mode status (if demoted, after-demotion status)
EncodeAACCapability Whether the device can encode AAC
EncryptedDataPartitionCapability Whether the device can have an encrypted data partition
EnforceCameraShutterClick Whether the device's region enforces a shutter click (identical to kMGQRegionalBehaviorShutterClick)
EnforceGoogleMail Whether the device's region permits Google Mail (identical to kMGQRegionalBehaviorGoogleMail)
EthernetMacAddress MAC address for the device's ethernet interface, in the format "ff:ff:ff:ff:ff:ff" (lower case letters)
EthernetMacAddressData MAC address for the device's ethernet interface, as a CFData (6 bytes)
ExplicitContentRestriction Whether explicit content is currently restricted
ExternalChargeCapability Whether the device can be externally charged
ExternalPowerSourceConnected Whether an external power source is currently connected
FDRSealingStatus Whether the device's FDR data is sealed
FMFAllowed Whether the FMFAllowed allowed on this device
FaceTimeBackCameraTemporalNoiseReductionMode Back camera's temporal noise reduction value
FaceTimeBitRate2G The preferred FaceTime bitrate when communicating over a 2G network
FaceTimeBitRate3G The preferred FaceTime bitrate when communicating over a 3G network
FaceTimeBitRateLTE The preferred FaceTime bitrate when communicating over an LTE network
FaceTimeBitRateWiFi The preferred FaceTime bitrate when communicating over a WiFi network
FaceTimeCameraRequiresFastSwitchOptions Whether the FaceTime camera requires fast switch
FaceTimeCameraSupportsHardwareFaceDetection Whether the device supports face detection in hardware
FaceTimeDecodings Supported decodings, array of dictionaries, W/H/F keys -> kCFNumberIntType values
FaceTimeEncodings Supported encodings, array of dictionaries, W/H/F keys -> kCFNumberIntType values
FaceTimeFrontCameraTemporalNoiseReductionMode Front camera's temporal noise reduction value
FaceTimePhotosOptIn Whether device should be opt-in for FaceTime Live Photos
FaceTimePreferredDecoding Preferred decoding, dictionary of W/H/F keys -> kCFNumberIntType values
FaceTimePreferredEncoding Preferred encoding, dictionary of W/H/F keys -> kCFNumberIntType values
FirmwareNonce The modem's firmware nonce data
FirmwarePreflightInfo The preflight info from the modem used to personalize the BBFW image
FirmwareVersion Project version of iBoot installed on the device
FirstPartyLaunchTimeLimitScale Additional scaling of first-party launches
ForwardCameraCapability Whether the device has a forward-facing camera
FrontCameraOffsetFromDisplayCenter X [ long width ] and Y [ short height ] offset of front camera from center of display
FrontCameraRotationFromDisplayNormal Array of pitch, yaw and roll for the front camera based on the normal to the screen.
FrontFacingCameraAutoHDRCapability Whether the device's front camera supports auto HDR
FrontFacingCameraBurstCapability Whether the device's front camera supports burst mode
FrontFacingCameraCapability Whether the device has a forward-facing camera (identical to kMGQForwardCameraCapability)
FrontFacingCameraHDRCapability Whether the device's front camera supports HDR
FrontFacingCameraHDROnCapability Whether the device can have hdr set for the front facing camera
FrontFacingCameraHFRCapability Whether the device's front camera supports HFR (high frame rate, a.k.a. slow motion)
FrontFacingCameraHFRVideoCapture1080pMaxFPS Max HFR(slowmo)for Front Facing 1080p Camera
FrontFacingCameraHFRVideoCapture720pMaxFPS Max HFR(slowmo)for Front Facing 720p Camera
FrontFacingCameraMaxVideoZoomFactor The device's front camera max video zoom factor
FrontFacingCameraModuleSerialNumber Serial number of front facing RGB camera
FrontFacingCameraStillDurationForBurst Max Single Frame Duration for Front Facing Camera in Burst Mode
FrontFacingCameraVideoCapture1080pMaxFPS Max FPS for Front Facing Camera - 1080p resolution
FrontFacingCameraVideoCapture4kMaxFPS Max FPS for Front Facing Camera - 4k resolution
FrontFacingCameraVideoCapture720pMaxFPS Max FPS for Front Facing Camera - 720p resolution
FrontFacingIRCameraModuleSerialNumber Serial number of front facing IR camera
FrontFacingIRStructuredLightProjectorModuleSerialNumber Serial number of front facing IR dot projector
Full6FeaturesCapability
GPSCapability Whether the device is capable of using GPS
GSDeviceName Device name for the device (as historically returned by GS; differs from kMGQDeviceName)
GameKitCapability Whether the device supports GameKit
GasGaugeBatteryCapability Whether the device has a gas gauge battery
GreenTeaDeviceCapability Whether the device is GreenTea, i.e., is a Chinese region cellular device
GyroscopeCapability Whether the device has a gyroscope
H264EncoderCapability Whether the device supports H264 encoding
HDRImageCaptureCapability Whether the device supports HDR image capture
HDVideoCaptureCapability Whether the device supports HD video capture
HEVCDecoder10bitSupported Whether the device supports HEVCDecode @ 10 bits
HEVCDecoder12bitSupported Whether the device supports HEVCDecode @ 12 bits
HEVCDecoder8bitSupported Whether the device supports HEVCDecode @ 8 bits
HEVCEncodingCapability Whether the device supports HEVC encoding
HMERefreshRateInARKit ARKit's refresh rate for HME
HWModelStr Hardware model for this device. E.g., "N53AP"
HallEffectSensorCapability Whether the device has Hall Effect Sensor
HardwareEncodeSnapshotsCapability Whether the device supports encoding image snapshots in hardware
HardwareKeyboardCapability Whether the device supports hardware keyboards
HardwarePlatform Hardware platform of the SoC, e.g., "s5l8960x" for N53
HardwareSnapshotsRequirePurpleGfxCapability
HasAllFeaturesCapability
HasAppleNeuralEngine Whether the device has an ANE
HasBaseband Whether the device has a baseband
HasBattery Whether the device has internal battery
HasDaliMode Dali mode support
HasExtendedColorDisplay Returns whether or not the device is capable of outputting Extended Color (wide gamut). For devices with a built-in display, this refers to the capability of the built-in display. For devices without a built-in display, such as Apple TV, this refers to the output capability of the device, which might not be the same as the capability of the display that the device is currently connected to.
HasIcefall Does this device have Icefall
HasInternalSettingsBundle Whether the device has the internal settings bundle
HasMesa Whether the device supports Mesa/x162
HasPKA Whether the device has a PKA (Public Key Accelerator)
HasSEP Whether the device has an SEP
HasSpringBoard Whether the device has SpringBoard.app
HasThinBezel Whether the device has a thin bezel
HealthKitCapability Whether the device has HealthKit capability
HearingAidAudioEqualizationCapability
HearingAidLowEnergyAudioCapability
HearingAidPowerReductionCapability
HiDPICapability Whether the device has a hi-dpi (Retina) display
HiccoughInterval
HideNonDefaultApplicationsCapability
HighestSupportedVideoMode The highest resolution video mode the device supports
HomeButtonType returns an enum that describes the home button type
HomeScreenWallpaperCapability
IDAMCapability Does the device support IDAM
IOSurfaceBackedImagesCapability
IOSurfaceFormatDictionary Dictionary of all supported IOSurface formats variables
IceFallID icefall serial number as NSString. Requires com.apple.nfcd.info && com.apple.nfcd.hwmanager entitlement.
IcefallInRestrictedMode Icefall is/isn't in restricted mode Requires com.apple.nfcd.info && com.apple.nfcd.hwmanager entitlement.
IcefallInfo icefall information as NSData. Requires com.apple.nfcd.info && com.apple.nfcd.hwmanager entitlement.
Image4CryptoHashMethod Crypto hash method from device tree.
Image4Supported Whether the device is Image4-aware
InDiagnosticsMode Whether the device is in Diagnostics Mode (entered by a keychord)
IntegratedCircuitCardIdentifier The SIM card's ICCID
IntegratedCircuitCardIdentifier2 The secondary SIM card's ICCID
InternalBuild Whether the installed OS is an internal build
InternationalMobileEquipmentIdentity IMEI of the device's baseband, if any
InternationalMobileEquipmentIdentity2 IMEI2 of the device's baseband, if any
InternationalSettingsCapability Whether the device has the international settings capability
InverseDeviceID UDID reversed
IsEmulatedDevice Whether the device is an emulated device
IsLargeFormatPhone Phone format factor
IsPwrOpposedVol Whether the device's power button is opposed to volume button.
IsServicePart [factory purpose]To distinguish customer/AppleCare service part device
IsSimulator Whether the OS is running inside the simulator
IsThereEnoughBatteryLevelForSoftwareUpdate Whether or not the device currently has enough battery charge remaining to perform an OTA software update
IsUIBuild Whether the OS installation is a UI build according to SystemVersion.plist
JasperSerialNumber returns the device's Jasper Serial Number
LTEDeviceCapability
LaunchTimeLimitScaleSupported Whether a device supports watchdog scaling
LisaCapability Whether the device has lisa capability
LoadThumbnailsWhileScrollingCapability
LocalizedDeviceNameString Localized name of the device
LocationRemindersCapability Whether the device is supports reminder locations
LocationServicesCapability Whether location services are available on this device
LowPowerWalletMode Low power wallet mode. Return value is true if the device tree entry present and it is non zero.
LunaFlexSerialNumber Device's Luna Flex Serial Number
LynxPublicKey Lynx Public Key
LynxSerialNumber Lynx Serial Number
MLBSerialNumber Serial number of the device's MLB
MMSCapability Whether the device has the MMS capability
MacBridgingKeys [BridgeOS only] returns a dictionary of keys that need to be exposed on the intel side
MagnetometerCapability Whether the device is capable of using a magnetometer
MainDisplayRotation Main screen rotation as it is in dev tree. Return type is int32.
MainScreenCanvasSizes Returns main screen canvas sizes in CFDataRef as an array of CGSizes. CFDataRef.length / sizeof(CGSize) is the number of entries
MainScreenClass Device's screen class (one of the MGScreenClass enum values)
MainScreenHeight Height of the built-in screen in pixels
MainScreenOrientation Physical orientation of the built-in screen relative to the device enclosure in radians
MainScreenPitch Pitch of the built-in screen in PPI
MainScreenScale Display scale of the built-in screen
MainScreenStaticInfo Device's static screen info (used internally by MobileGestalt; format is opaque and should not be interpreted by clients)
MainScreenWidth Width of the built-in screen in pixels
MarketingNameString Marketing name of the device
MarketingProductName OS Product Name for the device type - may be different from ProductName
MarketingVersion MarketingVersion from /System/Library/CoreServices/SystemVersion.plist
MaxH264PlaybackLevel The maximum H.264 level that the device can play
MaximumScreenScale Display maximum scale of the screen - ATV Only
MedusaFloatingLiveAppCapability Whether the device supports Medusa Floating Live Apps
MedusaOverlayAppCapability Whether the device supports Medusa Overlay Apps
MedusaPIPCapability Whether the device supports MedusaPIP mirroring
MedusaPinnedAppCapability Whether the device supports Medusa Pinned Apps
MesaSerialNumber The serial number of this device's Mesa sensor module, if any
MetalCapability Whether the device has Metal capability
MicrophoneCapability Whether a microphone is available on this device
MicrophoneCount The number of microphones in this device
MinimumSupportediTunesVersion The minimum version of iTunes that this device can sync with
MixAndMatchPrevention Whether every boot stage needs to verify the boot-manifest
MobileDeviceMinimumVersion The minimum MobileDevice bundle version needed to restore this device.
MobileEquipmentIdentifier The unique CDMA identifier for this device
MobileEquipmentInfoBaseId Mobile equipment info base ID
MobileEquipmentInfoBaseProfile Mobile equipment info base profile
MobileEquipmentInfoBaseVersion Mobile equipment info base version
MobileEquipmentInfoCSN Mobile equipment info CSN
MobileEquipmentInfoDisplayCSN Mobile equipment info displayCSN
MobileSubscriberCountryCode The subscriber's last known country code string
MobileSubscriberNetworkCode The subscriber's network code string, or for GSM, the second three digits of the IMSI
MobileWifi Whether the device has wifi. Devices in certain regions may have wifi disabled
ModelNumber Device's model number
MonarchLowEndHardware Is the device a low end Monarch hardware
MultiLynxPublicKeyArray MultiLynx Public Key Array
MultiLynxSerialNumberArray MultiLynx Serial Number Array
MultitaskingCapability Whether the device supports multitasking
MultitaskingGesturesCapability Whether the device supports gestures to control multitasking
MusicStoreCapability Whether the device supports the Music Store
N78aHack Whether the device is an N78a. This key is a HACK that exists only because the N78a board id is identical to the N78 board id
NFCRadio NFC Radio Present
NFCRadioCalibrationDataPresent NFC radio callibration data as CFDataRef
NFCUniqueChipID UniqueID for FDR
NVRAMDictionary Dictionary of all nvram variables
NandControllerUID UID of NVMe controller
NavajoFusingState The device's Navajo fusing state
NikeIpodCapability Whether the device has the Nike iPod capability
NotGreenTeaDeviceCapability Whether the device is not a Green Tea device, i.e., does not have a Chinese region code
OLEDDisplay Whether the device has OLED display
OTAActivationCapability
OfflineDictationCapability Whether the device supports off-line (on-device) dictation
OpenGLES1Capability Whether OpenGL Embedded Standard 1 is available on this device
OpenGLES2Capability Whether OpenGL Embedded Standard 2 is available on this device
OpenGLES3Capability Whether OpenGL Embedded Standard 3 is available on this device
OpenGLESVersion Device's maximum supported OpenGL ES version (possibly but not necessarily one of the MGOpenGLESVersion enum values)
PTPLargeFilesCapability
PanelSerialNumber Serial Number of Display Panel (via sysconfig - CFString Format)
PanoramaCameraCapability Whether the device supports panoramas in Camera.app
PartitionType Partitioning scheme used on the device's storage
PasswordConfigured Whether the device has a PIN/password configured
PasswordProtected Whether the device is currenty locked
PearlCameraCapability Whether the device has a pearl camera
PearlIDCapability Whether the device supports Pearl ID
PeekUICapability Whether the device supports Peek-UI
PeekUIWidth Width of the screen area exposed by one flap of a smart cover in pixels
Peer2PeerCapability
PersonalHotspotCapability Whether the device can act as a personal hotspot
PhoneNumber PhoneNumber
PhoneNumber2 PhoneNumber2
PhosphorusCapability Whether the device has Phosphorus capability
PhotoAdjustmentsCapability
PhotoCapability Convenience function to check if we have a camera and if it isn't restricted
PhotoSharingCapability Whether the device supports Photo Sharing
PhotoStreamCapability Whether the device supports Photo Stream
PhotosPostEffectsCapability Whether the device supports post effects
PiezoClickerCapability Whether the device has a piezo clicker
PintoMacAddress MAC address for the device's Pinto interface, in the format "ff:ff:ff:ff:ff:ff" (lower case letters)
PintoMacAddressData MAC address for the device's Pinto interface, as a CFData (6 bytes)
PipelinedStillImageProcessingCapability Whether the device supports pipelined still image processing
PlatformStandAloneContactsCapability
PlatinumCapability Whether the device has PlatinumCapability
ProductHash The product hash, an identifier that uniquely identifies the device type
ProductName ProductName from /System/Library/CoreServices/SystemVersion.plist
ProductType Product type of this device. E.g., "iPhone6,2" for N53
ProductVersion Version number of the installed OS, e.g., "4.2" for Jasper
ProximitySensorCalibration Proximity sensor calibration data
ProximitySensorCalibrationDictionary Proximity sensor calibration dictionary
ProximitySensorCapability Whether the device has a proximity sensor
RFExposureSeparationDistance The SAR (Specific Absorption Rate) separation distance for the device's radios in millimeters
RawPanelSerialNumber Serial Number of Display Panel (directly from the Hardware - CFDataFormat)
RearCameraCapability Whether the device has a rear-facing camera
RearCameraOffsetFromDisplayCenter X [ long width ] and Y [ short height ] offset of rear camera from center of display
RearFacingCamera60fpsVideoCaptureCapability Whether the device's rear camera is capable of 60FPS video capturing.
RearFacingCameraAutoHDRCapability Whether the device's rear camera supports auto HDR
RearFacingCameraBurstCapability Whether the device's rear camera supports burst mode
RearFacingCameraCapability Whether the device has a rear-facing camera (identical to kMGQRearCameraCapability)
RearFacingCameraHDRCapability Whether the device's rear camera supports HDR
RearFacingCameraHDROnCapability Whether the device can have hdr set for the rear facing camera
RearFacingCameraHFRCapability Whether the device's rear camera supports HFR (high frame rate, a.k.a. slow motion)
RearFacingCameraHFRVideoCapture1080pMaxFPS Max HFR(slowmo)for Rear Facing 1080p Camera
RearFacingCameraHFRVideoCapture720pMaxFPS Max HFR(slowmo)for Rear Facing 720p Camera
RearFacingCameraMaxVideoZoomFactor The device's rear camera max video zoom factor
RearFacingCameraModuleSerialNumber Serial number of rear facing RGB camera module
RearFacingCameraStillDurationForBurst Max Single Frame Duration for Rear Facing Camera in Burst Mode
RearFacingCameraSuperWideCameraCapability Rear camera has super wide capability.
RearFacingCameraTimeOfFlightCameraCapability Publicly available key for Jasper capability / depth camera
RearFacingCameraVideoCapture1080pMaxFPS Max FrameRate for Rear Facing 1080p Camera
RearFacingCameraVideoCapture4kMaxFPS Max FrameRate for Rear Facing 4k Camera
RearFacingCameraVideoCapture720pMaxFPS Max FrameRate for Rear Facing 720p Camera
RearFacingCameraVideoCaptureFPS Video capture frame rate for rear facing camera in FPS.
RearFacingLowLightCameraCapability Whether the device has low-light support on rear-facing camera
RearFacingSuperWideCameraModuleSerialNumber Serial number of rear facing super wide camera module
RearFacingTelephotoCameraCapability Does the Rear Facing Camera have Telephoto Capability
RearFacingTelephotoCameraModuleSerialNumber Serial number of rear facing telephoto camera module
RecoveryOSVersion Installed RecoveryOS version
RegionCode Region code for the device. E.g., "LL" in North America
RegionInfo Region info for the device. E.g., "LL/A" in North America
RegionSupportsCinnamon Whether Cinnamon is supported for this region
RegionalBehaviorAll All the kMGQRegionalBehavior* keys and their values
RegionalBehaviorChinaBrick Whether the device's region requires ChinaBrick
RegionalBehaviorEUVolumeLimit Whether the device's region enforces the EU volume limit
RegionalBehaviorGB18030 Whether the device's region requires GB 18030 support
RegionalBehaviorGoogleMail Whether the device's region permits Google Mail
RegionalBehaviorNTSC Whether the device's region requires NTSC video output
RegionalBehaviorNoPasscodeLocationTiles Whether the device's region does not permit location tiles on the passcode screen
RegionalBehaviorNoVOIP Whether the device's region does not permit VOIP
RegionalBehaviorNoWiFi Whether the device's region does not permit WiFi
RegionalBehaviorShutterClick Whether the device's region enforces a shutter click
RegionalBehaviorValid Whether the device's regional behavior values are valid
RegionalBehaviorVolumeLimit Whether the device's region enforces the French volume limit
RegulatoryModelNumber The device's regulatory model number (used to determine which regulatory image to display)
ReleaseType Type of system image installed on the device, one of the kMGReleaseType* constants (NULL for user installs)
RemoteBluetoothAddress Remote Bluetooth address, in the format "ff:ff:ff:ff:ff:ff" (lower case letters)
RemoteBluetoothAddressData Remote Bluetooth address, as a CFData (6 bytes)
RenderWideGamutImagesAtDisplayTime Does device support rendering Wide Gamut Images at display time
RendersLetterPressSlowly Whether the device supports letterpress fast rendering
RequiredBatteryLevelForSoftwareUpdate Battery level percentage (kCFNumberFloatType) needed to perform an OTA software update
RestoreOSBuild Whether the device is running RestoreOS
RestrictedCountryCodes Restricted country codes list
RingerSwitchCapability Whether the device has a ringer switch
RosalineSerialNumber Serial Number of Ambient Light Sensor (directly from the Hardware - CFString)
RoswellChipID Roswell serial number
RotateToWakeStatus Current Rotate To Wake Status (is the driver loaded yet)
SBAllowSensitiveUI Whether sensitive UI is allowed in SpringBoard (identical to kMGQSensitiveUICapability)
SBCanForceDebuggingInfo Whether the installed build is a carrier build but not an internal build
SDIOManufacturerTuple IOSDIOProductID and IOSDIOManufacturerID as CFStrings
SDIOProductInfo SDIO product info
SEInfo SE information as CFData. Requires com.apple.nfcd.info && com.apple.nfcd.hwmanager entitlement.
SEPNonce Nonce from SEP for personalization
SIMCapability Whether the device supports SIM cards
SIMPhonebookCapability Whether the device supports contacts stored in its SIM card
SIMStatus The current status of the SIM
SIMStatus2 The current status of the SIM2
SIMTrayStatus The current status of the SIM tray
SIMTrayStatus2 The current status of the SIM2 tray
SMSCapability Whether the device is capable of SMS messaging
SavageChipID returns the device's Savage ChipID
SavageInfo Keys and values for Savage personalization
SavageSerialNumber returns the device's Savage Serial Number
SavageUID returns the device's Savage UID
ScreenDimensionsCapability Various attributes of the built-in screen
ScreenRecorderCapability Screen Recorder Framework Availability
ScreenSerialNumber Serial Number of LCM (extracted from RawPanelSerialNumber)
SecondaryBluetoothMacAddress MAC address for the device's secondary bluetooth interface, in the format "ff:ff:ff:ff:ff:ff" (lower case letters)
SecondaryBluetoothMacAddressData MAC address for the device's secondary bluetooth interface, as a CFData (6 bytes)
SecondaryEthernetMacAddress MAC address for the device's secondary ethernet interface, in the format "ff:ff:ff:ff:ff:ff" (lower case letters)
SecondaryEthernetMacAddressData MAC address for the device's secondary ethernet interface, as a CFData (6 bytes)
SecondaryWifiMacAddress MAC address for the device's secondary wifi interface, in the format "ff:ff:ff:ff:ff:ff" (lower case letters)
SecondaryWifiMacAddressData MAC address for the device's secondary wifi interface, as a CFData (6 bytes)
SecureElement Whether the device has secure element
SecureElementID SecureElement Serial Number Requires com.apple.nfcd.info && com.apple.nfcd.hwmanager entitlement.
SecurityDomain Security domain of device's SoC
SensitiveUICapability Whether sensitive UI is allowed in SpringBoard
SerialNumber Device's serial number
ShoeboxCapability Whether the device supports ShoeBox (Passbook)
ShouldHactivate Whether lockdown should hactivate the device
SiKACapability Does the device have SiKA support in hardware
SigningFuse Whether the device is production fused
SiliconBringupBoard Whether the device is a silicon bringup board
SimultaneousCallAndDataCurrentlySupported
SimultaneousCallAndDataSupported
SiriGestureCapability
SiriOfflineCapability Whether the device supports offline Siri
Skey S-key button presence on the device
SoftwareBehavior Regional software behavior bits. Always exactly 16 bytes
SoftwareBundleVersion The software bundle version from SysCfg
SoftwareDimmingAlpha Software Dimming Alpha value
SpeakerCalibrationMiGa MiGa calibration value for device's speaker.
SpeakerCalibrationSpGa SpGa calibration value for device's speaker.
SpeakerCalibrationSpTS SpTS calibration value for device's speaker.
SphereCapability Whether the device has Sphere
StarkCapability Whether the device supports Stark (preference-overrideable; see also kMGQDeviceSupportsCarIntegration)
StockholmJcopInfo JCOP information as dictionary. Requires com.apple.nfcd.info && com.apple.nfcd.hwmanager entitlement.
StrictWakeKeyboardCases Keyboard models that trigger the alternate wake policy
SupportedDeviceFamilies Supported device families
SupportedKeyboards List of languages for which keyboards are supported
SupportsBurninMitigation Whether the device has OLED display
SupportsEDUMU Whether the device can enable EDU MultiUser
SupportsForceTouch Device Supports Force Touch
SupportsIrisCapture Device Supports Iris Capture
SupportsLowPowerMode Whether the device supports Low Power Mode
SupportsPerseus Perseus Support
SupportsRotateToWake Is the Device Rotate To Wake Capable
SupportsSOS Does the Device support SOS service
SupportsSSHBButtonType Whether the device's button is non-legacy mechanical type
SupportsTouchRemote Device Supports Touch Remote
SysCfg The device's factory-programmed system configuration data
SysCfgDict The device's factory-programmed system configuration data as a dictionary
SystemImageID UUID of the installed system image from the SystemVersion.plist
SystemTelephonyOfAnyKindCapability
TVOutCrossfadeCapability
TVOutSettingsCapability
TelephonyCapability Whether the device is capable of telephony
TelephonyMaximumGeneration
TimeSyncCapability Whether the device supports hardware 1588 timestamp
TopModuleAuthChipID Authentication chip serial number of top module
TouchDelivery120Hz Does device deliver touches at 120Hz
TouchIDCapability Whether the device supports Mesa/x162 (identical to kMGQHasMesa)
TristarID tristar id
UIBackgroundQuality The device's desired background quality
UIParallaxCapability Whether the device supports parallax UI
UIProceduralWallpaperCapability Whether the device supports procedural wallpaper
UIReachability Whether the device needs to consider ui reachability
UMTSDeviceCapability Whether the device supports UMTS
UnifiedIPodCapability Whether the device has the unified iPod capability
UniqueChipID Also known as ECID
UniqueDeviceID UDID of the device
UniqueDeviceIDData UDID of the device as a CFData
UserAssignedDeviceName User assigned device name specific to this device
UserIntentPhysicalButtonCGRect CGRect with User Intent button physical location and height
UserIntentPhysicalButtonCGRectString String version of CGRect with User Intent button physical location and height
UserIntentPhysicalButtonNormalizedCGRect CGRect with User Intent button physical location and height
VOIPCapability Whether the device supports VOIP apps
VeniceCapability Whether the device supports FaceTime over cellular
VibratorCapability Whether the device has a vibrator
VideoCameraCapability Whether the device is capable of taking videos
VideoStillsCapability
VoiceControlCapability Whether the device has voice control
VolumeButtonCapability Whether the device has volume buttons
WAGraphicQuality The device's weather graphic quality level
WAPICapability Whether the device supports WAPI
WLANBkgScanCache Whether the device supports wlan backgound scan caching.
WSKU WiFi Antenna SKU Info
WatchCompanionCapability Whether the device has watch companion capability
WatchSupportsAutoPlaylistPlayback Whether the watch supports auto-playlist playback
WatchSupportsHighQualityClockFaceGraphics Whether the watch supports high quality clock face graphics
WatchSupportsListeningOnGesture Whether the watch supports siri with AOP
WatchSupportsMusicStreaming Whether the Watch supports music streaming
WatchSupportsSiriCommute Whether the watch supports Siri Watch Face Commute
WiFiCallingCapability Whether the device has WiFi calling capability.
WiFiCapability Whether the device has wifi. Devices in certain regions may have wifi disabled (identical to kMGQMobileWifi)
WifiAddress MAC address for the device's wifi interface, in the format "ff:ff:ff:ff:ff:ff" (lower case letters)
WifiAddressData MAC address for the device's wifi interface, as a CFData (6 bytes)
WifiAntennaSKUVersion Watch WiFi antenna SKU version
WifiCallingSecondaryDeviceCapability Whether Wifi Calling on secondary devices is enabled
WifiChipset The chipset of the wifi chip in this device
WifiFirmwareVersion Wifi Firmware Version
WifiVendor The vendor of the wifi chip in this device
WirelessBoardSnum Serial number of the device's wifi board. Not to be confused with the device serial number (kMGQSerialNumber) or the baseband's serial number (kMGQBasebandSerialNumber)
WirelessChargingCapability Whether the device has wireless charging capability.
YonkersChipID returns the device's Yonkers ChipID
YonkersSerialNumber returns the device's Yonkers Serial Number
YonkersUID returns the device's Yonkers UID
YouTubeCapability Whether YouTube is allowed on this device (identical to kMGQAllowYouTube)
YouTubePluginCapability Whether the YouTube plugin is allowed on this device (identical to kMGQAllowYouTubePlugin)
iAP2Capability Whether the device has iAP2 capability
iPadCapability
iTunesFamilyID The number that iTunes uses to identify device classes
@dlevi309
Copy link

I made a script to extract the key values + list them side by side. Just run sh gestalt.sh on the target device with gestalt_query.
https://gist.github.com/dlevi309/76d567db4a3f0ee96de988cae48ea645

@truonggiang0710
Copy link

Hi @dlevi309, @yarshure , do you know which key can get CSN/EID?
I try to run key MobileEquipmentInfoCSN and MobileEquipmentInfoDisplayCSN, but the result is empty.
Please advise!

@acharles7
Copy link

@truonggiang0710 I think It should be EUICCChipID to get EID but I it's not returning any value. Let me know if you know any other way to retrieve this.

@yarshure
Copy link
Author

@acharles7 If you write code get some IDs , should check gestalt_query entitlements , and right code sign your program. shell call gestalt_query don't worry about code sign

@acharles7
Copy link

@yarshure I tried to request all gestalt keys using {'Request': 'MobileGestalt', 'MobileGestaltKeys': keys} where keys is array of gestalt keys. I passed somewhere around 760-80 keys and it returned 645 keys with their values. some of the keys are missing including EUICCChipID.

Are you suggesting to use .plist file to query data? i.e. https://gist.github.com/yarshure/9fa94fdea1924a54e95dd5c5a29fe6f4
If yes, Is it possible to get all keys values?

@yarshure
Copy link
Author

@acharles7 that url .plist use for binary codesign , so you program can bypass kernel verify.
Got those keys , you should monitor kernel log, check kernel error .
The keys I dump from iPhone12 system , new hardware maybe add others keys.
You should have a jb env and jb OS similar MobileGestalt program for testing.

@truonggiang0710
Copy link

truonggiang0710 commented Feb 29, 2024

@yarshure On iPhone 12 and later models, I am unable to retrieve Syscfg data. Could you please assist me in doing so? My objective is to access factory values to detect OEM parts.

@yarshure
Copy link
Author

@yarshure On iPhone 12 and later models, I am unable to retrieve Syscfg data. Could you please assist me in doing so? My objective is to access factory values to detect OEM parts.

you can try this https://github.com/danielpaulus/go-ios

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment