mirror of
https://github.com/Genymobile/scrcpy
synced 2024-12-13 10:46:45 +00:00
0ba430a462
Mainly copied and adapted from HID keyboard and mouse documentation. PR #5270 <https://github.com/Genymobile/scrcpy/pull/5270>
68 lines
2.0 KiB
Markdown
68 lines
2.0 KiB
Markdown
# OTG
|
|
|
|
By default, _scrcpy_ injects input events at the Android API level. As an
|
|
alternative, it is possible to send HID events, so that scrcpy behaves as if it
|
|
was a [physical keyboard] and/or a [physical mouse] connected to the Android
|
|
device (see [keyboard](keyboard.md) and [mouse](mouse.md)).
|
|
|
|
[physical keyboard]: keyboard.md#physical-keyboard-simulation
|
|
[physical mouse]: mouse.md#physical-mouse-simulation
|
|
|
|
A special mode (OTG) allows to control the device using AOA
|
|
[keyboard](keyboard.md#aoa), [mouse](mouse.md#aoa) and
|
|
[gamepad](gamepad.md#aoa), without using _adb_ at all (so USB debugging is not
|
|
necessary). In this mode, video and audio are disabled, and `--keyboard=aoa` and
|
|
`--mouse=aoa` are implicitly set. However, gamepads are disabled by default, so
|
|
`--gamepad=aoa` (or `-G` in OTG mode) must be explicitly set.
|
|
|
|
Therefore, it is possible to run _scrcpy_ with only physical keyboard, mouse and
|
|
gamepad simulation, as if the computer keyboard, mouse and gamepads were plugged
|
|
directly to the device via an OTG cable.
|
|
|
|
To enable OTG mode:
|
|
|
|
```bash
|
|
scrcpy --otg
|
|
# Pass the serial if several USB devices are available
|
|
scrcpy --otg -s 0123456789abcdef
|
|
```
|
|
|
|
It is possible to disable keyboard or mouse:
|
|
|
|
```bash
|
|
scrcpy --otg --keyboard=disabled
|
|
scrcpy --otg --mouse=disabled
|
|
```
|
|
|
|
and to enable gamepads:
|
|
|
|
```bash
|
|
scrcpy --otg --gamepad=aoa
|
|
scrcpy --otg -G # short version
|
|
```
|
|
|
|
It only works if the device is connected over USB.
|
|
|
|
## OTG issues on Windows
|
|
|
|
See [FAQ](/FAQ.md#otg-issues-on-windows).
|
|
|
|
|
|
## Control only
|
|
|
|
Note that the purpose of OTG is to control the device without USB debugging
|
|
(adb).
|
|
|
|
If you want to solely control the device without mirroring while USB debugging
|
|
is enabled, then OTG mode is not necessary.
|
|
|
|
Instead, disable video and audio, and select UHID (or AOA):
|
|
|
|
```bash
|
|
scrcpy --no-video --no-audio --keyboard=uhid --mouse=uhid --gamepad=uhid
|
|
scrcpy --no-video --no-audio -KMG # short version
|
|
scrcpy --no-video --no-audio --keyboard=aoa --mouse=aoa --gamepad=aoa
|
|
```
|
|
|
|
One benefit of UHID is that it also works wirelessly.
|