La librairie keyboard rend mon clavier fou

Bonjour a tous,

Je suis depuis peu utilisateur de arduino pour un projet en ISN au lycée.
J'ai un gros problème, et celui si persiste peu importe le code et peu importe le montage et n'importe quel ordi...
A chaque test, je branche mon arduino leonardo avec le code sur mon pc et les touches de mon clavier n'ont plus du tout les mêmes fonctionnalités et le pire c'est que les fonctionnalités de ces touches ne sont pas régulières, par exemple la touche "D" est devenu la touche supprimer, la touche "F" explorateur de fichier, la touche "A" qui fait copier coller supprimer... Bref le gros bordel...
J'ai fait plein de recherche et je ne trouve rien...
Et pour les personnes qui viennent juste pour dire "cherche sur internet" ou "tu fait des fautes d'orthographe" merci de passer votre chemin
Voici le code si sa peut être utile pour me venir en aide:

#include <Keyboard.h>
const int boutonCopier = 8;
const int boutonColler = 9;
const int boutonEtat = 3;
const int led = 10;
bool flag = true;
char ctrl = KEY_LEFT_CTRL;
void setup()
{
pinMode(boutonCopier, INPUT);
pinMode(boutonColler, INPUT);
pinMode(boutonEtat, INPUT);
pinMode(led, OUTPUT);
}
void loop()
{
if (digitalRead(boutonEtat))
{
if(flag)
{
Keyboard.begin();
digitalWrite(led, HIGH);
flag = false;
}

if(digitalRead(boutonCopier))
{
Keyboard.press(ctrl);
Keyboard.press('c');
delay(100);
Keyboard.releaseAll();
delay(100);
}
else if(digitalRead(boutonColler))
{
Keyboard.press(ctrl);
Keyboard.press('v');
delay(100);
Keyboard.releaseAll();
delay(100);
}
}
else
{
if(!flag)
{
Keyboard.end();
digitalWrite(led, LOW);
flag = true;
}
}
}

Les fautes c’est une chose, poster sans lire les règles d’usage du forum en est une autre...

corrigez votre post ci dessus et rajoutez les code tags autour du code:
[code]`` [color=blue]// votre code ici[/color] ``[/code].

ça doit ressembler à cela:// votre code ici

Indentez le code pour qu’on voit bien à quel if le dernier else se rapporte.

=====

Comment sont branchés vos boutons? Vous avez un pull down externe?

Je pense que le Keyboard.begin(); devrait être dans le setup et pas dans la loop.

lesept:
Je pense que le Keyboard.begin(); devrait être dans le setup et pas dans la loop.

Non c’est géré correctement avec un Keyboard.end() correspondant et un flag pour ne le faire qu’une fois et j’imagine un bouton qui active le mode clavier.

merci a tous d'avoir répondu mais j'ai trouver la solution

PilotB:
merci a tous d'avoir répondu mais j'ai trouver la solution

par respect pour ceux qui vous ont répondu et pour ceux qui liraient ce post, ce serait bien d'expliquer quel était le soucis....