@ian57,
Bon, j'ai essayé d'être aussi complet que possible.
Tout d'abord une photo vue du dessus de mon board (il y a un brin de poussière, désolé ^^).

J'ai donc une touche "game", "shift", "volume -" et "volume +", "select player 1" et "select player 2", ainsi que pour chacun des deux joueurs un joystick et 8 boutons. Le tout connecté à un IPAC-2, lui-même relié à un Odroid XU4 (ou un RPI3b qui fonctionne très bien mais ce n'est pas le sujet).
Voici ce que j'ai au lancement de evtest:
| |
| No device specified, trying to scan all of /dev/input/event* |
| Available devices: |
| /dev/input/event0: gpio_keys |
| /dev/input/event1: C-Media Electronics Inc. USB Audio Device |
| /dev/input/event2: Ultimarc Ultimarc |
| /dev/input/event3: ADS7846 Touchscreen |
| /dev/input/event4: Ultimarc Ultimarc |
| /dev/input/event5: Ultimarc Ultimarc |
| /dev/input/event6: Ultimarc I-PAC 2 Ultimarc I-PAC 2 |
| /dev/input/event7: Dell Dell USB Keyboard |
| Select the device event number [0-7]: 6 |
| Input driver version is 1.0.1 |
| Input device ID: bus 0x3 vendor 0xd209 product 0x301 version 0x111 |
| Input device name: "Ultimarc I-PAC 2 Ultimarc I-PAC 2" |
| Supported events: |
| Event type 0 (EV_SYN) |
| Event type 1 (EV_KEY) |
| Event code 1 (KEY_ESC) |
| Event code 2 (KEY_1) |
| Event code 3 (KEY_2) |
| Event code 4 (KEY_3) |
| Event code 5 (KEY_4) |
| Event code 6 (KEY_5) |
| Event code 7 (KEY_6) |
| Event code 8 (KEY_7) |
| Event code 9 (KEY_8) |
| Event code 10 (KEY_9) |
| Event code 11 (KEY_0) |
| Event code 12 (KEY_MINUS) |
| Event code 13 (KEY_EQUAL) |
| Event code 14 (KEY_BACKSPACE) |
| Event code 15 (KEY_TAB) |
| Event code 16 (KEY_Q) |
| Event code 17 (KEY_W) |
| Event code 18 (KEY_E) |
| Event code 19 (KEY_R) |
| Event code 20 (KEY_T) |
| Event code 21 (KEY_Y) |
| Event code 22 (KEY_U) |
| Event code 23 (KEY_I) |
| Event code 24 (KEY_O) |
| Event code 25 (KEY_P) |
| Event code 26 (KEY_LEFTBRACE) |
| Event code 27 (KEY_RIGHTBRACE) |
| Event code 28 (KEY_ENTER) |
| Event code 29 (KEY_LEFTCTRL) |
| Event code 30 (KEY_A) |
| Event code 31 (KEY_S) |
| Event code 32 (KEY_D) |
| Event code 33 (KEY_F) |
| Event code 34 (KEY_G) |
| Event code 35 (KEY_H) |
| Event code 36 (KEY_J) |
| Event code 37 (KEY_K) |
| Event code 38 (KEY_L) |
| Event code 39 (KEY_SEMICOLON) |
| Event code 40 (KEY_APOSTROPHE) |
| Event code 41 (KEY_GRAVE) |
| Event code 42 (KEY_LEFTSHIFT) |
| Event code 43 (KEY_BACKSLASH) |
| Event code 44 (KEY_Z) |
| Event code 45 (KEY_X) |
| Event code 46 (KEY_C) |
| Event code 47 (KEY_V) |
| Event code 48 (KEY_B) |
| Event code 49 (KEY_N) |
| Event code 50 (KEY_M) |
| Event code 51 (KEY_COMMA) |
| Event code 52 (KEY_DOT) |
| Event code 53 (KEY_SLASH) |
| Event code 54 (KEY_RIGHTSHIFT) |
| Event code 55 (KEY_KPASTERISK) |
| Event code 56 (KEY_LEFTALT) |
| Event code 57 (KEY_SPACE) |
| Event code 58 (KEY_CAPSLOCK) |
| Event code 59 (KEY_F1) |
| Event code 60 (KEY_F2) |
| Event code 61 (KEY_F3) |
| Event code 62 (KEY_F4) |
| Event code 63 (KEY_F5) |
| Event code 64 (KEY_F6) |
| Event code 65 (KEY_F7) |
| Event code 66 (KEY_F8) |
| Event code 67 (KEY_F9) |
| Event code 68 (KEY_F10) |
| Event code 69 (KEY_NUMLOCK) |
| Event code 70 (KEY_SCROLLLOCK) |
| Event code 71 (KEY_KP7) |
| Event code 72 (KEY_KP8) |
| Event code 73 (KEY_KP9) |
| Event code 74 (KEY_KPMINUS) |
| Event code 75 (KEY_KP4) |
| Event code 76 (KEY_KP5) |
| Event code 77 (KEY_KP6) |
| Event code 78 (KEY_KPPLUS) |
| Event code 79 (KEY_KP1) |
| Event code 80 (KEY_KP2) |
| Event code 81 (KEY_KP3) |
| Event code 82 (KEY_KP0) |
| Event code 83 (KEY_KPDOT) |
| Event code 86 (KEY_102ND) |
| Event code 87 (KEY_F11) |
| Event code 88 (KEY_F12) |
| Event code 96 (KEY_KPENTER) |
| Event code 97 (KEY_RIGHTCTRL) |
| Event code 98 (KEY_KPSLASH) |
| Event code 99 (KEY_SYSRQ) |
| Event code 100 (KEY_RIGHTALT) |
| Event code 102 (KEY_HOME) |
| Event code 103 (KEY_UP) |
| Event code 104 (KEY_PAGEUP) |
| Event code 105 (KEY_LEFT) |
| Event code 106 (KEY_RIGHT) |
| Event code 107 (KEY_END) |
| Event code 108 (KEY_DOWN) |
| Event code 109 (KEY_PAGEDOWN) |
| Event code 110 (KEY_INSERT) |
| Event code 111 (KEY_DELETE) |
| Event code 119 (KEY_PAUSE) |
| Event code 125 (KEY_LEFTMETA) |
| Event code 126 (KEY_RIGHTMETA) |
| Event code 127 (KEY_COMPOSE) |
| Event type 4 (EV_MSC) |
| Event code 4 (MSC_SCAN) |
| Event type 17 (EV_LED) |
| Event code 0 (LED_NUML) state 0 |
| Event code 1 (LED_CAPSL) state 0 |
| Event code 2 (LED_SCROLLL) state 0 |
| Event code 3 (LED_COMPOSE) state 0 |
| Event code 4 (LED_KANA) state 0 |
| Key repeat handling: |
| Repeat type 20 (EV_REP) |
| Repeat code 0 (REP_DELAY) |
| Value 250 |
| Repeat code 1 (REP_PERIOD) |
| Value 33 |
| Properties: |
| Testing ... (interrupt to exit) |
Ensuite j'ai appuyé un à un sur toutes les touches (et directions pour les joysticks). L'outil evtest m'a donné un output, que j'ai découpé pour indiquer quel événement correspond à chaque bouton/joystick de mon board.
Game:
Event: time 1602867195.836506, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70028
Event: time 1602867195.836506, type 1 (EV_KEY), code 28 (KEY_ENTER), value 1
Event: time 1602867195.836506, -------------- SYN_REPORT ------------
Event: time 1602867196.016502, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70028
Event: time 1602867196.016502, type 1 (EV_KEY), code 28 (KEY_ENTER), value 0
Event: time 1602867196.016502, -------------- SYN_REPORT ------------
Shift:
Event: time 1602867198.012503, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70013
Event: time 1602867198.012503, type 1 (EV_KEY), code 25 (KEY_P), value 1
Event: time 1602867198.012503, -------------- SYN_REPORT ------------
Event: time 1602867198.236495, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70013
Event: time 1602867198.236495, type 1 (EV_KEY), code 25 (KEY_P), value 0
Event: time 1602867198.236495, -------------- SYN_REPORT ------------
Volume down:
Event: time 1602867199.948497, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7002d
Event: time 1602867199.948497, type 1 (EV_KEY), code 12 (KEY_MINUS), value 1
Event: time 1602867199.948497, -------------- SYN_REPORT ------------
Event: time 1602867200.144489, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7002d
Event: time 1602867200.144489, type 1 (EV_KEY), code 12 (KEY_MINUS), value 0
Event: time 1602867200.144489, -------------- SYN_REPORT ------------
Volume up:
Event: time 1602867200.868493, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7002e
Event: time 1602867200.868493, type 1 (EV_KEY), code 13 (KEY_EQUAL), value 1
Event: time 1602867200.868493, -------------- SYN_REPORT ------------
Event: time 1602867201.072492, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7002e
Event: time 1602867201.072492, type 1 (EV_KEY), code 13 (KEY_EQUAL), value 0
Event: time 1602867201.072492, -------------- SYN_REPORT ------------
Select player 1:
Event: time 1602867201.884490, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7001e
Event: time 1602867201.884490, type 1 (EV_KEY), code 2 (KEY_1), value 1
Event: time 1602867201.884490, -------------- SYN_REPORT ------------
Event: time 1602867202.096484, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7001e
Event: time 1602867202.096484, type 1 (EV_KEY), code 2 (KEY_1), value 0
Event: time 1602867202.096484, -------------- SYN_REPORT ------------
Select player 2:
Event: time 1602867202.788485, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7001f
Event: time 1602867202.788485, type 1 (EV_KEY), code 3 (KEY_2), value 1
Event: time 1602867202.788485, -------------- SYN_REPORT ------------
Event: time 1602867203.028481, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7001f
Event: time 1602867203.028481, type 1 (EV_KEY), code 3 (KEY_2), value 0
Event: time 1602867203.028481, -------------- SYN_REPORT ------------
Player 1 - Joystick up:
Event: time 1602866642.150741, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70052
Event: time 1602866642.150741, type 1 (EV_KEY), code 103 (KEY_UP), value 1
Event: time 1602866642.150741, -------------- SYN_REPORT ------------
Event: time 1602866642.334743, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70052
Event: time 1602866642.334743, type 1 (EV_KEY), code 103 (KEY_UP), value 0
Event: time 1602866642.334743, -------------- SYN_REPORT ------------
Player 1 - Joystick down:
Event: time 1602866643.390745, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70051
Event: time 1602866643.390745, type 1 (EV_KEY), code 108 (KEY_DOWN), value 1
Event: time 1602866643.390745, -------------- SYN_REPORT ------------
Event: time 1602866643.602733, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70051
Event: time 1602866643.602733, type 1 (EV_KEY), code 108 (KEY_DOWN), value 0
Event: time 1602866643.602733, -------------- SYN_REPORT ------------
Player 1 - Joystick left:
Event: time 1602866645.002731, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70050
Event: time 1602866645.002731, type 1 (EV_KEY), code 105 (KEY_LEFT), value 1
Event: time 1602866645.002731, -------------- SYN_REPORT ------------
Event: time 1602866645.226725, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70050
Event: time 1602866645.226725, type 1 (EV_KEY), code 105 (KEY_LEFT), value 0
Event: time 1602866645.226725, -------------- SYN_REPORT ------------
Player 1 - Joystick right:
Event: time 1602866646.370731, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7004f
Event: time 1602866646.370731, type 1 (EV_KEY), code 106 (KEY_RIGHT), value 1
Event: time 1602866646.370731, -------------- SYN_REPORT ------------
Event: time 1602866646.542721, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7004f
Event: time 1602866646.542721, type 1 (EV_KEY), code 106 (KEY_RIGHT), value 0
Event: time 1602866646.542721, -------------- SYN_REPORT ------------
Player 1 - button 1:
Event: time 1602866340.211744, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e0
Event: time 1602866340.211744, type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 1
Event: time 1602866340.211744, -------------- SYN_REPORT ------------
Event: time 1602866340.339740, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e0
Event: time 1602866340.339740, type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 0
Event: time 1602866340.339740, -------------- SYN_REPORT ------------
Player 1 - button 2:
Event: time 1602866340.887739, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e2
Event: time 1602866340.887739, type 1 (EV_KEY), code 56 (KEY_LEFTALT), value 1
Event: time 1602866340.887739, -------------- SYN_REPORT ------------
Event: time 1602866341.003737, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e2
Event: time 1602866341.003737, type 1 (EV_KEY), code 56 (KEY_LEFTALT), value 0
Event: time 1602866341.003737, -------------- SYN_REPORT ------------
Player 1 - button 3:
Event: time 1602866341.511742, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7002c
Event: time 1602866341.511742, type 1 (EV_KEY), code 57 (KEY_SPACE), value 1
Event: time 1602866341.511742, -------------- SYN_REPORT ------------
Event: time 1602866341.655735, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7002c
Event: time 1602866341.655735, type 1 (EV_KEY), code 57 (KEY_SPACE), value 0
Event: time 1602866341.655735, -------------- SYN_REPORT ------------
Player 1 - button 4:
Event: time 1602866342.183734, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e1
Event: time 1602866342.183734, type 1 (EV_KEY), code 42 (KEY_LEFTSHIFT), value 1
Event: time 1602866342.183734, -------------- SYN_REPORT ------------
Event: time 1602866342.291729, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e1
Event: time 1602866342.291729, type 1 (EV_KEY), code 42 (KEY_LEFTSHIFT), value 0
Event: time 1602866342.291729, -------------- SYN_REPORT ------------
Player 1 - button 5:
(not working?)
Player 1 - button 6:
Event: time 1602866513.331106, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7001b
Event: time 1602866513.331106, type 1 (EV_KEY), code 45 (KEY_X), value 1
Event: time 1602866513.331106, -------------- SYN_REPORT ------------
Event: time 1602866513.471097, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7001b
Event: time 1602866513.471097, type 1 (EV_KEY), code 45 (KEY_X), value 0
Event: time 1602866513.471097, -------------- SYN_REPORT ------------
Player 1 - button 7:
Event: time 1602866514.183102, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70006
Event: time 1602866514.183102, type 1 (EV_KEY), code 46 (KEY_C), value 1
Event: time 1602866514.183102, -------------- SYN_REPORT ------------
Event: time 1602866514.307093, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70006
Event: time 1602866514.307093, type 1 (EV_KEY), code 46 (KEY_C), value 0
Event: time 1602866514.307093, -------------- SYN_REPORT ------------
Player 1 - button 8:
Event: time 1602866515.047102, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70019
Event: time 1602866515.047102, type 1 (EV_KEY), code 47 (KEY_V), value 1
Event: time 1602866515.047102, -------------- SYN_REPORT ------------
Event: time 1602866515.147092, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70019
Event: time 1602866515.147092, type 1 (EV_KEY), code 47 (KEY_V), value 0
Event: time 1602866515.147092, -------------- SYN_REPORT ------------
Player 2 - Joystick up:
Event: time 1602866812.029980, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70015
Event: time 1602866812.029980, type 1 (EV_KEY), code 19 (KEY_R), value 1
Event: time 1602866812.029980, -------------- SYN_REPORT ------------
Event: time 1602866812.285967, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70015
Event: time 1602866812.285967, type 1 (EV_KEY), code 19 (KEY_R), value 0
Event: time 1602866812.285967, -------------- SYN_REPORT ------------
Player 2 - Joystick down:
Event: time 1602866813.053973, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70009
Event: time 1602866813.053973, type 1 (EV_KEY), code 33 (KEY_F), value 1
Event: time 1602866813.053973, -------------- SYN_REPORT ------------
Event: time 1602866813.257973, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70009
Event: time 1602866813.257973, type 1 (EV_KEY), code 33 (KEY_F), value 0
Event: time 1602866813.257973, -------------- SYN_REPORT ------------
Player 2 - Joystick left:
Event: time 1602866814.177968, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70007
Event: time 1602866814.177968, type 1 (EV_KEY), code 32 (KEY_D), value 1
Event: time 1602866814.177968, -------------- SYN_REPORT ------------
Event: time 1602866814.413960, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70007
Event: time 1602866814.413960, type 1 (EV_KEY), code 32 (KEY_D), value 0
Event: time 1602866814.413960, -------------- SYN_REPORT ------------
Player 2 - Joystick right:
Event: time 1602866815.285963, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000a
Event: time 1602866815.285963, type 1 (EV_KEY), code 34 (KEY_G), value 1
Event: time 1602866815.285963, -------------- SYN_REPORT ------------
Event: time 1602866815.437955, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000a
Event: time 1602866815.437955, type 1 (EV_KEY), code 34 (KEY_G), value 0
Event: time 1602866815.437955, -------------- SYN_REPORT ------------
Player 2 - Button 1:
Event: time 1602866817.413952, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70004
Event: time 1602866817.413952, type 1 (EV_KEY), code 30 (KEY_A), value 1
Event: time 1602866817.413952, -------------- SYN_REPORT ------------
Event: time 1602866817.597957, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70004
Event: time 1602866817.597957, type 1 (EV_KEY), code 30 (KEY_A), value 0
Event: time 1602866817.597957, -------------- SYN_REPORT ------------
Player 2 - Button 2:
Event: time 1602866819.449940, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70016
Event: time 1602866819.449940, type 1 (EV_KEY), code 31 (KEY_S), value 1
Event: time 1602866819.449940, -------------- SYN_REPORT ------------
Event: time 1602866819.625941, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70016
Event: time 1602866819.625941, type 1 (EV_KEY), code 31 (KEY_S), value 0
Event: time 1602866819.625941, -------------- SYN_REPORT ------------
Player 2 - Button 3:
Event: time 1602866821.081932, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70014
Event: time 1602866821.081932, type 1 (EV_KEY), code 16 (KEY_Q), value 1
Event: time 1602866821.081932, -------------- SYN_REPORT ------------
Event: time 1602866821.181923, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70014
Event: time 1602866821.181923, type 1 (EV_KEY), code 16 (KEY_Q), value 0
Event: time 1602866821.181923, -------------- SYN_REPORT ------------
Player 2 - Button 4:
Event: time 1602866822.201933, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7001a
Event: time 1602866822.201933, type 1 (EV_KEY), code 17 (KEY_W), value 1
Event: time 1602866822.201933, -------------- SYN_REPORT ------------
Event: time 1602866822.329916, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7001a
Event: time 1602866822.329916, type 1 (EV_KEY), code 17 (KEY_W), value 0
Event: time 1602866822.329916, -------------- SYN_REPORT ------------
Player 2 - Button 5:
Event: time 1602866823.333921, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000c
Event: time 1602866823.333921, type 1 (EV_KEY), code 23 (KEY_I), value 1
Event: time 1602866823.333921, -------------- SYN_REPORT ------------
Event: time 1602866823.473918, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000c
Event: time 1602866823.473918, type 1 (EV_KEY), code 23 (KEY_I), value 0
Event: time 1602866823.473918, -------------- SYN_REPORT ------------
Player 2 - Button 6:
Event: time 1602866824.401917, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000d
Event: time 1602866824.401917, type 1 (EV_KEY), code 36 (KEY_J), value 1
Event: time 1602866824.401917, -------------- SYN_REPORT ------------
Event: time 1602866824.529909, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000d
Event: time 1602866824.529909, type 1 (EV_KEY), code 36 (KEY_J), value 0
Event: time 1602866824.529909, -------------- SYN_REPORT ------------
Player 2 - Button 7:
Event: time 1602866825.437909, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000e
Event: time 1602866825.437909, type 1 (EV_KEY), code 37 (KEY_K), value 1
Event: time 1602866825.437909, -------------- SYN_REPORT ------------
Event: time 1602866825.589898, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000e
Event: time 1602866825.589898, type 1 (EV_KEY), code 37 (KEY_K), value 0
Event: time 1602866825.589898, -------------- SYN_REPORT ------------
Player 2 - Button 8:
Event: time 1602866826.557909, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000f
Event: time 1602866826.557909, type 1 (EV_KEY), code 38 (KEY_L), value 1
Event: time 1602866826.557909, -------------- SYN_REPORT ------------
Event: time 1602866826.697895, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7000f
Event: time 1602866826.697895, type 1 (EV_KEY), code 38 (KEY_L), value 0
Event: time 1602866826.697895, -------------- SYN_REPORT ------------
A noter que le bouton 5 du joueur 1 ne donne pas d'event. C'est probablement un souci hardware, j'ai la même chose avec mon RPI3b mais je n'en ai pas eu l'utilité jusqu'ici.