Partage
  • Partager sur Facebook
  • Partager sur Twitter

Nunchuck Wii

Bras articulé

5 mars 2019 à 8:32:36

Bonjour à tous,

J'ai pour projet de réaliser un bras articulé piloté par le Nunchuck de la Wii.

J'en suis à la découverte de l'utilisation de la librairie WiiChuck.h et je rencontre déjà des soucis.

En effet lors de la compilation d'un programme très simple pour afficher l'état des boutons C et Z, l'IDE ne semble pas reconnaitre la bibliothèque.

j'ai le message d'erreur suivant:"'WiiChuck' does not name a type" (Pourtant la commande change de couleur)

Voici mon bout de code:

#include <Wire.h>
#include <WiiChuck.h>
WiiChuck nunchuck1;

void setup() {
  nunchuck1.begin();
  Serial.begin(9600)
 
}
void loop() {
  nunchuck1.readData();
  uint8_t ButtonZ = nunchuck1.values[10];
  uint8_t ButtonC= nunchuck1.values[11];
  
  Serial.print("Bouton Z:");
  Serial.println(ButtonZ);
  Serial.print("Bouton C:");
  Serial.println(ButtonC);
  delay(30);
}

D'où l'erreur peut elle venir ?

Existe t il d'autres librairies plus efficaces et simples d'utilisation ? (j'ai déjà rechercher sur internet et je me noie un peu face à la qté d'info qui parfois se contredisent)

Enfin, où pourrai je trouver des exemples de codes simples qui me permettraient de me former progressivement (j'en ai trouvé quelques un comme celui ci-dessus mais qui ne marchent pas ou alors trop complexe et là je ne m'y retrouve pas)

Merci pour votre aide

  • Partager sur Facebook
  • Partager sur Twitter
5 mars 2019 à 15:15:53

D'après les sources de la bibliothèque dont est tiré le code d'exemple que tu utilises, la classe à utiliser s'appelle "Accessory" et non "WiiChuck". Et normalement, quand tu as installé la bibliothèque, 3 exemples auraient dû s'installer dans le menu Fichier -> Exemple -> WiiChuck.

L'IDE Arduino est très basique, il ne sait pas ce qu'est une classe, ce sont les bibliothèques qui lui fournissent une liste de mots clés à colorer dans un fichier keywords.txt inclus dans leurs répertoires. Pour cette bibliothèque en particulier, il est fort possible que le fichier keywords.txt n'ait pas été mis à jour depuis longtemps.

  • Partager sur Facebook
  • Partager sur Twitter
5 mars 2019 à 20:02:18

Merci beaucoup.

Le mot clé "Accessory" me permet de passer l'étape de la compile.

En revanche l'exécution ne marche pas pour autant.

L'afficheur m'indique ceci:

I2C error code _burstRead error: 2 repeted: 1

I2C error code _burstRead error: 2 repeted: 2

I2C error code _burstRead error: 2 repeted: 3

I2C error code _burstRead error: 2 repeted: 4

I2C error code _burstRead error: 2 repeted: 5
X:0
Y:0
Bouton Z:0
Bouton C:0

Avec une autre librairie (http://www.gabrielbianconi.com/projects/arduinonunchuk/), des valeurs s'affichent mais ne varient pas même avec 3 Nunchucks différents.

Je continue à chercher mais si vous avez des tuyau, je suis preneur^^

Merci

  • Partager sur Facebook
  • Partager sur Twitter
5 mars 2019 à 22:15:56

Le lien de la 2e bibliothèque ne fonctionne pas, c'est sur https://github.com/GabrielBianconi/arduino-nunchuk 

Mais dans celle-ci, il n'y a pas de gestion d'erreur i2c, si aucun périphérique ne répond à la requête, le tableau n'est pas rempli et la fonction renvoie des valeurs aléatoires (le contenu de la mémoire occupée par le tableau avant la requête).

Es-tu sûr que le nunchuck est branché correctement à l'arduino ? Est-ce un arduino Uno ou mega ? 

  • Partager sur Facebook
  • Partager sur Twitter
5 mars 2019 à 22:25:36

En effet je pense que l'I2C n'est pas reconnu.

Je suis sur Mega.

J'avais connecter le d du connecteur sur A4 et le c sur A5

Je viens de changer en passant directement sur les sorties communication (20 et 21)

Mais j'ai le même résultat

Comment puis je vérifier l'I2c ?

  • Partager sur Facebook
  • Partager sur Twitter
6 mars 2019 à 0:17:50

SachaVettu a écrit:

Comment puis je vérifier l'I2c ?

Tu n'as pas à vérifier l'i2c, c'est à la bibliothèque de le faire et la 1ère fait déjà toutes les vérifications (c'est pour ça qu'elle affiche des messages d'erreur).

Donc, juste pour être sûr, les connexions sont:

  • d sur  20/SDA, 
  • c sur 21/SCL,  
  • le + sur 3.3V,
  • le - sur GND.

Avec le connecteur dans le bon sens, parce qu'il n'y a rien qui empêche de l'inverser sur les adaptateurs PCB, et GND et 3.3V se retrouveraient alors inversés ce qui pourrait griller ta ou tes manettes. La piste correspondant à -/GND doit être du côté du creux du connecteur.

-
Edité par alexisdm 27 mars 2019 à 20:22:02

  • Partager sur Facebook
  • Partager sur Twitter
6 mars 2019 à 8:44:11

J'ai vérifier les branchements et la connexion. tout est en ordre.

Je ne vois pas ce qui cloche.

Ce soir j'essaie avec une UNO.

Je te tiens au courant. Merci

Edit:

Bon ben avec une UNO ça marche !!!

Merci pour tes conseils Alexisdm

-
Edité par Watxm 7 mars 2019 à 8:28:12

  • Partager sur Facebook
  • Partager sur Twitter
26 avril 2019 à 2:28:50

I'm reading this through google translator, but i'm getting the same error with the UNO.  Did you get it to work with the WiiChuck library or the arduino-nunchuck library?

Thanks,

Mike

  • Partager sur Facebook
  • Partager sur Twitter
30 avril 2019 à 13:28:30

I use WiiChuck Library.
  • Partager sur Facebook
  • Partager sur Twitter