Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Tip

Cette page présente le module CrcConnect, qui permet de contrôler à distance un contrôleur CrcDuino en utilisant une manette sans fil compatible.

View the english version of this page.

Introduction

Le CRCconnect est un dispositif qui permet d’envoyer des commandes au CRCduino à l’aide d’une manette de jeu. Le CRCconnect sert de relais pour les données; il prend les informations par USB, puis envoie l’information au CRCduino sans fils.

Il a été conçu pour permettre une utilisation flexible. Le module CRCconnect peut être attaché par velcro directement sur le contrôleur. Il peut aussi être dans la poche du conducteur et connecté à la manette par un fil USB plus long. Plusieurs écoles ont même des manettes modifiées pour intégrer directement le module. Il peut finalement être connecté à une banque d'énergie externe pour allonger sa vie de batterie.

Manettes compatibles

La beauté du CRCconnect est qu’il permet à une équipe de contrôler son robot avec des manettes de jeu standards. De cette façon, chaque équipe peut utiliser la manette avec laquelle elle est le plus confortable.

Manettes compatibles:

  • PlayStation 3 wireless (Sony Official)

  • Havit HV-G69 wired PS3 knockoff

  • PlayStation 4 (Sony Official)

  • Logitech F130

  • XBox One (Microsoft Official)

  • Wired Xbox 360

Manettes incompatibles:

  • Wireless Xbox 360

  • Most knockoff brand Wireless PlayStation 3

La manette doit être connectée au module CRCconnect à l’aide d’un fil USB-A vers:

Note

Les contrôleurs Logitech F130 et HAVIT ne supportent pas les mouvements analogues des gâchettes, contrairement aux contrôleurs XBox et Playstation.

Sur ces dernières, la valeur de GACHETTE_L et GACHETTE_R sera entre -128 et 127 inclusivement.

Au contraire, les manettes F130 et HAVIT auront des valeurs de -128 ou 127.

Note

Si vous utilisez un contrôleur HAVIT, assurez-vous d’appuyer sur le bouton ANALOG de la manette afin d’allumer la petite DEL rouge entre les joysticks. En cas contraire, les joysticks ne pourront que prendre les valeurs -128, 0 ou 127.

Storage

Mode

Like almost every electronic gadget, there is a very small current that leaks from the battery of the CrcConnect when it’s not in use, even when powered off using the power button. This undesired battery drainage can be avoided by putting the CrcConnect in Storage Mode. We recommend to put the CrcConnect in Storage Mode when you know it won’t be used for 2+ weeks. This will extend the CrcConnect battery life! Storage mode physically disconnects the battery from the control board, effectively cutting any possible leakage current.

  • Storage mode is enabled when the jumper is removed from the board, or when it is plugged into the left and center pins.

Image Removed

Jumper removed; CrcConnect won’t work

Image Removed

Jumper in storage mode; CrcConnect won’t work

  • Storage mode is disabled when the jumper is plugged into the center and right pins.

Image Removed

Jumper OK; CrcConnect will work

Pairing with a CrcDuino board

Pairing a CrcDuino with a CrcConnect is as easy as 1-2-3! Each CrcConnect is identified with a number and comes with a dedicated Xbee Module that is identified with the same number.

Image Removed

Simply plug the Xbee module into the CrcDuino, then power up the CrcConnect and CrcDuino.

A characteristic victory sound will be heard from the CrcDuino when a successful connection as been established with a CrcConnect. If the connection is lost, the CrcDuino sights in despair

rangement

Comme tout équipement électronique, un petit courant fuit de la batterie de la CRCconnect lorsque cette dernière n’est pas utilisée, même lorsqu’elle n’est pas « allumée ». Cette fuite indésirable peut être évitée en mettant la CRCconnect en mode rangement. La CRC recommande de mettre la CRCconnect en mode rangement dès que vous ne l’utilisez pas pendant plus de deux semaines. Cela prolongera la vie de la batterie! Le mode rangement déconnecte physiquement la batterie du circuit, empêchant totalement le courant de fuite.

  • Le mode rangement est activé quand le « jumper » est retiré du module, ou lorsqu’il est placé entre les deux broches de gauche.

Image Added

« Jumper » retiré; la CRCconnect ne sera pas fonctionnelle

Image Added

« Jumper » en mode rangement; la CRCconnect ne sera pas fonctionnelle

  • Le mode rangement est désactivé quand le « jumper » est placé entre les deux broches de droite.

Image Added

« Jumper » OK; La CRCconnect sera fonctionnelle

Couplage avec un CRCduino

Coupler un CRCduino et une CRCconnect est facile comme bonjour ! Chaque CRCconnect est identifiée avec un numéro et vient avec un module Xbee dédié avec ce même numéro.

Image Added

Il s’agit simplement de connecter le module Xbee sur le CRCduino, puis d’allumer la CRCconnect et le CRCduino.

Un son caractéristique de victoire retentira du CRCduino lorsqu’une connexion sera établie. Si cette dernière est perdue, le CRCduino soupire de désespoir 😞 …

A USB-A port in which the cable coming from the remote controller is plugged into
Note

A compatible remote controller must be plugged into the CrcConnect for it to communicate succesfully with a CrcDuino.

Note

The CrcDuino must run using CrcLib Release 1.1 and up to be able to connect with the CrcConnect.

Swapping the Xbee Module from the old CrcConnect to the new CrcConnect with integrated remote control

Une manette de jeu compatible doit être connectée à la CRCconnect pour que celle-ci établisse la connexion au CRCduino.

Note

Le CRCduino doit utiliser une version supérieur à la CrcLib 1.1 et être actif pour pouvoir se connecter à la CRCconnect.

Transférer un module Xbee d’une vieille CRCconnect au nouveau module intégré

https://youtu.be/D8woVCYgStU

https://youtu.be/zLYCgJZHE0U

Ports &

buttons

The CrcConnect has 2 ports a one button on its side. From left to right:

  • A Micro-USB port to charge the CrcConnect internal battery;

  • A power button;

  • boutons

    Sur un des côtés de la CRCconnect se trouvent 2 ports et un bouton. De gauche à droite:

    • Un port microUSB pour charger la batterie interne de la CRCconnect;

    • Un bouton « power »;

    • Un port USB-A pour connecter une manette externe (si le module n’est pas un module intégré).

    Note

    Do not press and hold the Power button for more than 10 seconds. This puts the CrcConnect in a limbo state that allows CRC Robotics to configure the CrConnect, and disables the communication function with the CrcDuino.

    Status LEDs

    The CrcConnect has 4 LEDs that allows to learn about the state of the CrcConnect and the CrcDuino:

    Image Removed
    Image Removed

    Robot LED

    Indicates the voltage of the power supplied to the CrcDuino to which the CrcConnect is connected to, witha refresh rate of 10s. This therefore feedbacks the charge level of the 12V battery on the robot.

    Robot

    LED Color

    We good?

    Recommendation

    Power Supply voltage

    Solid Green

    (thumbs up)

    Great power management, keep up the good work

    N’appuyez pas plus de 10 secondes sur le bouton « power ». Cela active le mode configuration qui ne sert qu'à la CRC et qui désactive les fonctions normales de la CRCconnect.

    DELs de statut

    La CRCconnect possède 4 DELs qui permettent d’en apprendre plus sur l'état de la CRCconnect et du CRCduino connecté:

    Image Added
    Image Added

    DEL Robot

    Indique le niveau de la batterie qui alimente le CRCduino, avec une période de 10s.

    Couleur

    État?

    Recommendation

    Voltage batterie

    Vert

    (thumbs up)

    Incroyable gestion de la batterie !

    >= 12.5V

    Solid Orange

    👋 Maybe

    charge the batteryPensez à charger la batterie ?

    [12V ; 12.5V[

    Solid RedRouge

    (thumbs down) Yeah

    , you should charge the battery NOWChargez la batterie MAINTENANT !

    [11V ; 12V[

    Blinking RedRouge clignotant

    Were you even paying attention? Go on and you might affect your robot batteries ability to hold up charge

    ALLO ? À ce niveau la batterie est en train de s’endommager définitivement 🤷‍♂️

    < 11V

    LED CrcConnect

    LED

    Indicates the voltage of the internal CrcConnect battery. This therefore feedbacks the charge level of the 5V battery inside of it.

    CrcConnect

    LED Color

    We good

    Indique le voltage interne de la batterie de la CRCconnect.

    Solid Green

    Couleur

    État?

    Recommendation

    Internal battery voltage

    Voltage batterie

    Vert

    (thumbs up) Great

    power management, keep up the good workIncroyable gestion de la batterie!

    >= 3.8V

    Solid Orange

    👋 Maybe

    charge the batteryPensez à charger la batterie ?

    [3.7V ; 3.8V[

    Solid RedRouge

    (thumbs down) Yeah

    , you should charge the battery NOWChargez la batterie MAINTENANT !

    [3.6V ; 3.7V[

    Blinking RedRouge clignotant

    Were you even paying attention? Go on and you might affect your CrcConnect battery ability to hold up charge

    ALLO ? À ce niveau la batterie est en train de s’endommager définitivement 🤷‍♂️

    [3.5V ; 3.6V[

    OFFÉteinte

    The CrcConnect will automatically shutdown to prevent battery damages

    La CRCconnect s'éteint d’elle même pour éviter d’endommager la batterie.

    < 3.5V

    DEL Communication

    LED

    Indicates the connection quality between the CrcConnect and its paired CrcDuino. Is also used to indicate a successful link between a remote controller and the CrcConnect.

    Typical interference causes include and are not limited to: too much metal around the CrcDuino, robot frame electrically connected to the battery negative pole (lose wire, faulty wire isolation), etc.

    Communication LED Color

    We good?

    Recommendation

    Meaning

    Solid Green

    (thumbs up)

    Whatever you’re doing, keep up doing it!

    Great connection with the CrcDuino. Wired to a remote controller.

    Solid Orange

    👋

    Get closer to the robot. Reduce possible interference.

    Meehh connection with the CrcDuino. Wired to a remote controller.

    Solid Red

    (thumbs down)

    Get closer to the robot. Reduce possible interference.

    Bad connection with the CrcDuino. Wired to a remote controller.

    Blinking Red

    Get closer to the robot. Reduce possible interferences. Have you tried turning everything off and on again? Are the CrcDuino & CrcConnect powered up? Appropriate Xbee module correctly inserted in the CrcDuino socket? CrcDuino running a program using CrcLib Release 1.1 and up?

    Connected to the CrcDuino and wired to a remote controller, but data is not correctly sent/received

    OFF

    No connection with a CrcDuino, or no wired to a compatible remote controller

    Charge LED

    This LED, on the backside of the CrcConnect, is lit when it's charging, and OFF when not charging.

    Power management

    The CrcConnect module can be recharged throught the Micro-USB port. It can even be recharged when in use!

    No need to worry about recharging the remote controller itself. The remote controller, when connected to a CrcConnect module, is powered by the CrcConnect internal battery pack.

    Auto-shutdown function

    Auto-shutdown functions have been programmed into the CrcConnect to avoid permanent internal damage.

    Voltage shutdown

    If the internal battery voltage falls beneath a certain threshold, the CrcConnect won’t power up or will shutdown immediately after being powered up.

    Temperature shutdown

    If the internal temperature gets so hot that it might lead to permanently damage the internal battery, the three main status LED will flash Orange 5 times and the CrcConnect will automatically shutdown right after.

    Button and joystick mapping

    The remote controller buttons and joysticks state can be retrieved using CrcLib::ReadDigitalChannel() and CrcLib::ReadAnalogChannel() using the appropriate nomenclature.

    The following pictures show the physical mapping of the different members of the enum classes for typical remote controller arrangements.

    Image Removed
    Image Removed

    Still not sure? Upload the following code into your CrcDuino and open up a Serial Monitor at 2000000 baud to witness the state of the different buttons of the remote controller on your computer screen.

    Code Block
    languagecpp
    //CrcConnect Remote Controller Test Sketch //Valid using CrcLib_1-1-0_Release #include <CrcLib.h> //------------------------------------------------------------ void setup() { // put your setup code here, to run once:

    Indique la qualité de la connexion entre la CRCconnect et le CRCduino connecté (et, implicitement, s’il y a une connexion à une manette de jeu).

    Les causes typiques d’interférences: trop de métal autour du CRCduino, l’armature de métal du robot est connecté à la batterie (fil déconnecté ou mal isolé), etc.

    Couleur

    État?

    Recommendation

    Signification

    Vert

    (thumbs up)

    Incroyable, fantastique, sensationnel !

    Super connexion avec le CRCduino. Manette de jeu connectée.

    Orange

    👋

    Rapprochez-vous du robot. Réduisez les sources d’interférence.

    Connexion meehh avec le CRCduino. Manette de jeu connectée.

    Rouge

    (thumbs down)

    Rapprochez-vous du robot. Réduisez les sources d’interférence.

    Mauvaise connection avec le CRCduino. Manette de jeu connectée.

    Rouge clignotant

    Rapprochez-vous du robot. Réduisez les sources d’interférence.

    Essayez d'éteindre puis d’allumer à nouveau le tout.

    Est-ce que les CRCduino et CRCconnect sont correctement connectés ? Est-ce que le module Xbee est inséré correctement dans le CRCduino ?

    Connecté au CRCduino et à une manette, mais les données ne sont pas transmises correctement

    Éteinte

    Aucune connexion avec un CRCduino ou aucune manette de jeu compatible détectée

    DEL Charge

    Cette petite DEL sous la CRCconnect est allumée lorsque le module est en charge.

    Gestion de la batterie

    Le module CRCconnect peut être rechargé par le port Micro-USB. Même lorsqu’on l’utilise!

    Pas besoin de recharger la manette elle-même. Lorsque connectée à la CRCconnect, cette dernière alimente la manette à même sa propre batterie.

    «Auto-shutdown »

    Pour éviter des dommages internes permanent, la CRCconnect peut s'éteindre d’elle-même dans les cas suivants:

    Batterie faible

    Si la batterie tombe sous un certain niveau, la CRCconnect ne s’allumera pas ou s'éteindra immédiatement.

    Température élevée

    Si la température interne devient trop élevée pour la batterie, les 3 DELs principales du module clignoteront orange 5 fois puis celui-ci s’éteindra immédiatement après.

    Boutons et « joysticks » de la manette

    L'état des boutons et joysticks peuvent être obtenus à l’aide des fonctions ReadDigitalChannel() {FR} et ReadAnalogChannel() {FR} en utilisant la bonne sélection (CrcLib: accéder aux boutons de la télécommande ).

    L’image suivante montre les différentes valeurs à indiquer pour obtenir les bonnes valeurs sur des manettes typiques.

    Image Added
    Image Added

    Encore incertain ? Téléversez le code suivant sur le CRCduino (aussi disponible dans les exemples), puis ouvrez une console à 2000000 baud. Vous pourrez par la suite voir les valeurs se mettre à jour en temps réel à l'écran.

    Code Block
    languagecpp
    #include <CrcLib.h>
    
    void setup() {
      CrcLib::Initialize();
      Serial.begin(2000000);
    }
    
    
    void loop() {
      // put your main code here, to run repeatedly:
      CrcLib::Update();
      Serial.println();
    
      if (CrcLib::IsCommValid())
      {
        CrcLib::PrintControllerState();
      }
      else
      {
        Serial.print("NoAucune remoteconnexion controllervalide successfullyà communicates with the CrcDuinoune manette");
      }
    
    }
    

    Related articles

    Filter by label (Content by label)
    sorttitle
    excerptTyperich content
    cqllabel = "ar-crcconnect_en"

    Articles liés

    Filter by label (Content by label)
    sorttitle
    excerptTyperich content
    cqllabel = "ar-crcconnect_fr"