---
title: GCMicroGamepad
framework: gamecontroller
role: symbol
role_heading: Class
path: gamecontroller/gcmicrogamepad
---

# GCMicroGamepad

A controller profile that supports the Siri Remote.

## Declaration

```swift
class GCMicroGamepad
```

## Overview

Overview The micro gamepad controller profile supports the following input elements: Two digital face buttons (A and X). One analog directional pad (D-pad) that functions as a touchpad. Users can rotate game controllers that support the micro gamepad profile, switching them between landscape and portrait orientation. If you want to get directional values according to the orientation, set the allowsRotation property to true.

## Topics

### Getting the controller

- [controller](gamecontroller/gcmicrogamepad/controller.md)

### Receiving a callback when input values change

- [valueChangedHandler](gamecontroller/gcmicrogamepad/valuechangedhandler.md)
- [GCMicroGamepadValueChangedHandler](gamecontroller/gcmicrogamepadvaluechangedhandler.md)

### Getting face button inputs

- [buttonMenu](gamecontroller/gcmicrogamepad/buttonmenu.md)
- [buttonA](gamecontroller/gcmicrogamepad/buttona.md)
- [buttonX](gamecontroller/gcmicrogamepad/buttonx.md)

### Getting directional pad inputs

- [dpad](gamecontroller/gcmicrogamepad/dpad.md)
- [reportsAbsoluteDpadValues](gamecontroller/gcmicrogamepad/reportsabsolutedpadvalues.md)
- [allowsRotation](gamecontroller/gcmicrogamepad/allowsrotation.md)

### Accessing elements by name

- [Micro gamepad input names](gamecontroller/micro-gamepad-input-names.md)

### Setting snapshot avlues

- [setStateFrom(_:)](gamecontroller/gcmicrogamepad/setstatefrom(_:).md)
- [saveSnapshot()](gamecontroller/gcmicrogamepad/savesnapshot().md)

## Relationships

### Inherits From

- [GCPhysicalInputProfile](gamecontroller/gcphysicalinputprofile.md)

### Inherited By

- [GCDirectionalGamepad](gamecontroller/gcdirectionalgamepad.md)
- [GCMicroGamepadSnapshot](gamecontroller/gcmicrogamepadsnapshot.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Accessing controller profiles

- [extendedGamepad](gamecontroller/gccontroller/extendedgamepad.md)
- [GCPhysicalInputProfile](gamecontroller/gcphysicalinputprofile.md)
- [GCKeyboardInput](gamecontroller/gckeyboardinput.md)
- [GCMouseInput](gamecontroller/gcmouseinput.md)
- [GCExtendedGamepad](gamecontroller/gcextendedgamepad.md)
- [GCDualShockGamepad](gamecontroller/gcdualshockgamepad.md)
- [GCXboxGamepad](gamecontroller/gcxboxgamepad.md)
- [GCDualSenseGamepad](gamecontroller/gcdualsensegamepad.md)
- [microGamepad](gamecontroller/gccontroller/microgamepad.md)
- [GCDirectionalGamepad](gamecontroller/gcdirectionalgamepad.md)
- [motion](gamecontroller/gccontroller/motion.md)
- [physicalInputProfile](gamecontroller/gccontroller/physicalinputprofile.md)
- [gamepad](gamecontroller/gccontroller/gamepad.md)
