← Documents Documentation/input/devices/pxrc.rst GitHub 원문 ↗

Linux 6.18.37 · Input

Pxrc - PhoenixRC Flight Controller Adapter

PhoenixRC 호환 RC 조종기 어댑터의 7개 아날로그 축과 디지털 스위치 이벤트를 설명합니다.

Source pathDocumentation/input/devices/pxrc.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약·해설

pxrc.rst:1-56

PXRC는 RC 조종기 어댑터의 아날로그 7채널을 Linux 절대축으로, 디지털 스위치 하나를 `BTN_A`로 노출합니다. 조종기와 시뮬레이터 양쪽에서 채널을 다시 배정할 수 있습니다.

문서 개요
항목내용
SourceDocumentation/input/devices/pxrc.rst
분량56 source lines
아날로그7 channels -> `ABS_X`~`ABS_MISC`
디지털1 switch -> `BTN_A`
시험`modprobe pxrc`, `input-events <devnr>`

입력 수와 시험 방법입니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 =======================================================
2 pxrc - PhoenixRC Flight Controller Adapter
3 =======================================================
4
5 :Author: Marcus Folkesson <marcus.folkesson@gmail.com>
6
7 This driver let you use your own RC controller plugged into the
8 adapter that comes with PhoenixRC or other compatible adapters.
9
10 The adapter supports 7 analog channels and 1 digital input switch.
11
12 Notes
13 =====
14
15 Many RC controllers is able to configure which stick goes to which channel.
16 This is also configurable in most simulators, so a matching is not necessary.
17
18 The driver is generating the following input event for analog channels:
19
20 +---------+----------------+
21 | Channel | Event |
22 +=========+================+
23 | 1 | ABS_X |
24 +---------+----------------+
25 | 2 | ABS_Y |
26 +---------+----------------+
27 | 3 | ABS_RX |
28 +---------+----------------+
29 | 4 | ABS_RY |
30 +---------+----------------+
31 | 5 | ABS_RUDDER |
32 +---------+----------------+
33 | 6 | ABS_THROTTLE |
34 +---------+----------------+
35 | 7 | ABS_MISC |
36 +---------+----------------+
37
38 The digital input switch is generated as an `BTN_A` event.
39
40 Manual Testing
41 ==============
42
43 To test this driver's functionality you may use `input-event` which is part of
44 the `input layer utilities` suite [1]_.
45
46 For example::
47
48 > modprobe pxrc
49 > input-events <devnr>
50
51 To print all input events from input `devnr`.
52
53 References
54 ==========
55
56 .. [1] https://www.kraxel.org/cgit/input/
57

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

PhoenixRC 어댑터와 채널 구성

1-17

`pxrc` 드라이버는 PhoenixRC에 포함된 어댑터 또는 호환 어댑터에 사용자의 RC 조종기를 연결해 Linux input 장치로 쓸 수 있게 합니다. 어댑터는 아날로그 채널 7개와 디지털 입력 스위치 1개를 지원합니다.

많은 RC 조종기는 어느 스틱이 어느 채널로 나가는지 자체 설정할 수 있고, 대부분의 시뮬레이터도 채널 매핑을 바꿀 수 있습니다. 따라서 드라이버의 고정 이벤트 순서와 실제 스틱 기능을 반드시 물리적으로 일치시킬 필요는 없습니다.

PXRC 입력 자원
입력 종류개수비고
아날로그7조종 스틱·노브·슬라이더 등에 매핑
디지털1스위치를 `BTN_A`로 보고

어댑터가 Linux에 제공하는 입력 수입니다.

RC 조종기 사용
RC 조종기를 PhoenixRC 호환 어댑터에 연결`pxrc` 드라이버가 7축과 한 버튼 등록조종기에서 필요하면 채널 순서 설정시뮬레이터에서 축 기능을 원하는 조작에 배정

어댑터 연결부터 시뮬레이터 매핑까지의 흐름입니다.

=======================================================
pxrc - PhoenixRC Flight Controller Adapter
=======================================================

:Author: Marcus Folkesson <marcus.folkesson@gmail.com>

This driver let you use your own RC controller plugged into the
adapter that comes with PhoenixRC or other compatible adapters.

The adapter supports 7 analog channels and 1 digital input switch.

Notes
=====

Many RC controllers is able to configure which stick goes to which channel.
This is also configurable in most simulators, so a matching is not necessary.

아날로그 채널과 Linux input 이벤트 매핑

18-39
PXRC 채널 이벤트
채널Input event
1`ABS_X`
2`ABS_Y`
3`ABS_RX`
4`ABS_RY`
5`ABS_RUDDER`
6`ABS_THROTTLE`
7`ABS_MISC`

아날로그 채널 1~7의 고정 Linux absolute-axis 코드입니다.

디지털 입력 스위치는 `BTN_A` 이벤트로 생성됩니다. 축 이름은 Linux input API의 코드이며, 실제 비행기의 aileron·elevator·rudder·throttle 기능은 조종기나 시뮬레이터 설정에서 다시 배정할 수 있습니다.

입력 이벤트 변환
어댑터에서 채널 1~7 아날로그 값 읽기순서대로 `ABS_X`부터 `ABS_MISC`까지 보고디지털 스위치는 `BTN_A`로 보고시뮬레이터가 이벤트 코드를 비행 조작에 매핑

어댑터 채널이 사용자 공간에 전달되는 구조입니다.

The driver is generating the following input event for analog channels:

+---------+----------------+
| Channel |      Event     |
+=========+================+
|     1   |  ABS_X         |
+---------+----------------+
|     2   |  ABS_Y         |
+---------+----------------+
|     3   |  ABS_RX        |
+---------+----------------+
|     4   |  ABS_RY        |
+---------+----------------+
|     5   |  ABS_RUDDER    |
+---------+----------------+
|     6   |  ABS_THROTTLE  |
+---------+----------------+
|     7   |  ABS_MISC      |
+---------+----------------+

The digital input switch is generated as an `BTN_A` event.

모듈 로드와 수동 이벤트 시험

40-56

드라이버 기능은 input layer utilities 모음의 `input-events` 도구로 수동 시험할 수 있습니다. 먼저 `modprobe pxrc`로 모듈을 로드하고 `input-events <devnr>`를 실행하면 선택한 입력 장치 번호의 모든 이벤트를 출력합니다.

PXRC 수동 시험 명령
명령목적
`modprobe pxrc`PXRC 커널 모듈 로드
`input-events <devnr>`지정한 입력 장치의 모든 이벤트 출력

원문의 두 명령과 목적입니다.

참조 도구의 원문 주소는 `https://www.kraxel.org/cgit/input/`입니다. 시험할 때 각 스틱과 스위치를 하나씩 움직여 7개 절대축과 `BTN_A`가 기대한 장치 번호에서 변하는지 확인합니다.

PXRC 기능 확인
`pxrc` 모듈 로드등록된 input 장치 번호 확인`input-events`로 해당 번호 감시아날로그 조작을 하나씩 움직여 축 코드 확인디지털 스위치의 `BTN_A` 전환 확인

장치 번호를 고른 뒤 각 채널을 검증하는 순서입니다.

Manual Testing
==============

To test this driver's functionality you may use `input-event` which is part of
the `input layer utilities` suite [1]_.

For example::

    > modprobe pxrc
    > input-events <devnr>

To print all input events from input `devnr`.

References
==========

.. [1] https://www.kraxel.org/cgit/input/