Bonjour,

J'ai une cible embarquée (ARM11) avec un écran lcd 7", ainsi que trois boutons, le tout avec un debian perso.

Mon dernier travaille a été de gérer les boutons. Pour celà, j'ai défini 3 gpio-keys dans la définition de ma plateforme:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
static struct gpio_keys_button my_buttons[] = {
	{
		.gpio		= S3C64XX_GPN(0),
		.code		= KEY_F1,
		.type 		= EV_KEY,
		.desc		= "Button1",
		.active_low	= 1,
		.debounce_interval = 20,
	}, 
	{
		.gpio		= S3C64XX_GPN(2),
		.code		= KEY_F2,
		.type 		= EV_KEY,
		.desc		= "Button2",
		.active_low	= 1,
		.debounce_interval = 20,
	},
	{
		.gpio		= S3C64XX_GPN(4),
		.code		= KEY_F3,
		.type 		= EV_KEY,
		.desc		= "Button3",
		.active_low	= 1,
		.debounce_interval = 20,
	}
};
Ceci se traduit par la création d'un /dev/input/event0. Pour info, j'ai un event1 qui correspond à ma dalle tactile.

Souhaitant vérifier son fonctionnement, j'appelle, via une console série, un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
evtest /dev/input/event0
.. sans succès.


Après plusieurs manipulations, je me rends compte de plusieurs choses:
1- Lancer mon appli (Qt) puis la quitter permet de faire fonctionner mon evtest qui remonte bien des événements clavier.
2- Une fois mon appli quittée, l'appui sur les touches affiche le caractère correspondant sur la console de l'écran 7" alors que ma console série ne sort rien si je n'appelle pas mon evtest (ce qui me va très bien).
3 - Si je tente d'ouvrir le /dev/input/event0 dans mon appli, seul le premier évènement est attrapé.
4 - Le même programme sur Ubuntu fonctionne très bien...

De là je me pose deux questions:
1 - Pourquoi ce déblocage par mon appli?
2 - Pourquoi les caractères sortent sur la console du 7"

J'espère avoir quelques clefs pour résoudre ce problème

Merci d'avance