요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
Key mask와 gaming mode
sysfs-driver-hid-roccat-arvo:31-53bit mask로 다섯 개의 특수 key를 비활성화하고, num-lock 대신 제공되는 mode key로 number block의 gaming assignment를 전환합니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/actual_profile
Date: Januar 2011
Contact: Stefan Achatz <erazor_de@users.sourceforge.net>
Description: The integer value of this attribute ranges from 1-5.
When read, this attribute returns the number of the actual
profile which is also the profile that's active on device startup.
When written this attribute activates the selected profile
immediately.
Users: http://roccat.sourceforge.net
What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/button
Date: Januar 2011
Contact: Stefan Achatz <erazor_de@users.sourceforge.net>
Description: The keyboard can store short macros with consist of 1 button with
several modifier keys internally.
When written, this file lets one set the sequence for a specific
button for a specific profile. Button and profile numbers are
included in written data. The data has to be 24 bytes long.
This file is writeonly.
Users: http://roccat.sourceforge.net
What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/info
Date: Januar 2011
Contact: Stefan Achatz <erazor_de@users.sourceforge.net>
Description: When read, this file returns some info about the device like the
installed firmware version.
The size of the data is 8 bytes in size.
This file is readonly.
Users: http://roccat.sourceforge.net
What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/key_mask
Date: Januar 2011
Contact: Stefan Achatz <erazor_de@users.sourceforge.net>
Description: The keyboard lets the user deactivate 5 certain keys like the
windows and application keys, to protect the user from the outcome
of accidentally pressing them.
The integer value of this attribute has bits 0-4 set depending
on the state of the corresponding key.
When read, this file returns the current state of the buttons.
When written, the given buttons are activated/deactivated
immediately.
Users: http://roccat.sourceforge.net
What: /sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/mode_key
Date: Januar 2011
Contact: Stefan Achatz <erazor_de@users.sourceforge.net>
Description: The keyboard has a condensed layout without num-lock key.
Instead it uses a mode-key which activates a gaming mode where
the assignment of the number block changes.
The integer value of this attribute ranges from 0 (OFF) to 1 (ON).
When read, this file returns the actual state of the key.
When written, the key is activated/deactivated immediately.
Users: http://roccat.sourceforge.net
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
actual_profile
1-9/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/actual_profile
| 항목 | 값 |
|---|---|
| Date | 2011년 1월 |
| Contact | Stefan Achatz <erazor_de@users.sourceforge.net> |
| Users | http://roccat.sourceforge.net |
| 값 범위 | 1-5 |
| access | read/write |
읽으면 현재 사용 중인 profile 번호를 반환한다. 이 profile은 device startup 때 활성화되는 profile이기도 하다. 값을 쓰면 선택한 profile을 즉시 활성화한다.
button
11-20/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/button
| 항목 | 값 |
|---|---|
| Date | 2011년 1월 |
| Contact | Stefan Achatz <erazor_de@users.sourceforge.net> |
| Users | http://roccat.sourceforge.net |
| payload | 정확히 24 byte |
| access | write-only |
keyboard는 하나의 button과 여러 modifier key로 이루어진 짧은 macro를 device 내부에 저장할 수 있다.
이 file에 쓰면 특정 profile의 특정 button에 적용할 sequence를 설정한다. button 번호와 profile 번호는 write data 안에 포함되어야 하며 data 길이는 정확히 24 byte여야 한다.
info
22-29/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/info
| 항목 | 값 |
|---|---|
| Date | 2011년 1월 |
| Contact | Stefan Achatz <erazor_de@users.sourceforge.net> |
| Users | http://roccat.sourceforge.net |
| payload | 8 byte |
| access | read-only |
읽으면 설치된 firmware version 같은 device 정보를 반환한다. 반환 data 크기는 8 byte다.
key_mask
31-42/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/key_mask
| 항목 | 값 |
|---|---|
| Date | 2011년 1월 |
| Contact | Stefan Achatz <erazor_de@users.sourceforge.net> |
| Users | http://roccat.sourceforge.net |
| bit 범위 | 0-4 |
| access | read/write |
keyboard는 Windows key와 application key 같은 특정 key 다섯 개를 비활성화할 수 있다. 사용자가 실수로 이 key를 눌러 원하지 않는 동작을 일으키는 것을 막기 위한 기능이다.
integer 값의 bit 0-4는 각각 대응하는 key 상태를 나타낸다. 읽으면 현재 button 상태를 반환하고, 값을 쓰면 지정한 button을 즉시 활성화하거나 비활성화한다.
mode_key
44-53/sys/bus/usb/devices/<busnum>-<devnum>:<config num>.<interface num>/<hid-bus>:<vendor-id>:<product-id>.<num>/arvo/roccatarvo<minor>/mode_key
| 항목 | 값 |
|---|---|
| Date | 2011년 1월 |
| Contact | Stefan Achatz <erazor_de@users.sourceforge.net> |
| Users | http://roccat.sourceforge.net |
| 값 범위 | 0=OFF, 1=ON |
| access | read/write |
이 keyboard는 num-lock key가 없는 compact layout을 사용한다. 대신 mode key로 gaming mode를 켜며 이 mode에서는 number block key assignment가 바뀐다.
읽으면 mode key의 현재 상태를 반환한다. 0 또는 1을 쓰면 key 기능을 즉시 비활성화하거나 활성화한다.
Profile과 device data
sysfs-driver-hid-roccat-arvo:1-291-5 profile을 즉시 선택하고, profile별 24-byte macro payload를 쓰며, firmware version을 포함한 8-byte device info를 읽는 interface입니다.