Différences entre versions de « Bluefruit-LE-Shield-BLE-Services »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(38 versions intermédiaires par le même utilisateur non affichées)
Ligne 2 : Ligne 2 :
  
 
== Services BLE ==
 
== Services BLE ==
The following commands allow you to interact with various GATT services present on Bluefruit LE modules when running in Command Mode.
+
Les commandes suivantes vous permettent d'interagir avec les différents services GATT présent sur les modules Bluefruit LE lorsque celui-ci fonctionne en mode commande.
  
 
Le [https://learn.adafruit.com/introducing-the-adafruit-bluefruit-le-uart-friend/ble-gatt service GATT et ses caractéristiques] (''Adafruit, anglais'') gouvernent l'organisation et l'échange de données entre les périphériques.
 
Le [https://learn.adafruit.com/introducing-the-adafruit-bluefruit-le-uart-friend/ble-gatt service GATT et ses caractéristiques] (''Adafruit, anglais'') gouvernent l'organisation et l'échange de données entre les périphériques.
  
 
== AT+BLEUARTTX ==
 
== AT+BLEUARTTX ==
This command will transmit the specified text message out via the [https://learn.adafruit.com/introducing-adafruit-ble-bluetooth-low-energy-friend/uart-service UART Service] while you are running in Command Mode.
+
Cette commande transmet le message texte spécifié en paramètre via le [https://learn.adafruit.com/introducing-adafruit-ble-bluetooth-low-energy-friend/uart-service Service UART] pendant que le module fonctionne en mode commande.
 
* Codebase Revision: 0.3.0
 
* Codebase Revision: 0.3.0
* Parameters: The message payload to transmit. The payload can be up to 240 characters (since AT command strings are limited to a maximum of 256 bytes total).
+
* Paramètre: Le payload (données) à transmettre. Le payload peut faire jusqu'à 240 caractères (étant donné que les commandes AT sont limitées à un maximum de 256 octet).
* Output: This command will produce an '''ERROR''' message if you are not connected to a central device, or if the internal TX FIFO on the Bluefruit LE module is full.
+
* Sortie: Cette commande produit le message erreur '''ERROR''' s'il n'est pas possible de se connecter sur le périphérique central, ou si la mémoire tampon d'émission interne du BluFruit (internal TX FIFO) est remplie.
  
As of firmware release '''0.6.2''' and higher, AT+BLEUARTTX can accept a limited set of escape code sequences:
+
Sur un firmware '''0.6.2''' et supérieur, AT+BLEUARTTX peut accepter quelques séquences d'échappements:
* \r = carriage return
+
* \r = retour clavier
* \n = new line
+
* \n = Nouvelle ligne
* \t = tab
+
* \t = Tabulation
* \b = backspace
+
* \b = retour en arrière (backspace)
* \\ = backward slash
+
* \\ = Anti-slash  
  
As of firmware release '''0.6.7''' and higher, AT+BLEUARTTX can accept the following escape code sequence since AT+BLEUARTTX=? has a specific meaning to the AT parser:
+
Sur un firmware '''0.6.7''' et supérieur, AT+BLEUARTTX peut accepter la séquence d'échappement suivante (puisque AT+BLEUARTTX=? à une signification particulière pour le parseur AT):
* \? = transmits a single question mark
+
* \? = transmet un simple point d'interrogation
  
As of firmware release '''0.7.6''' and higher, AT+BLEUARTTX can accept the following escape code sequence:
+
Sur un firmware '''0.7.6''' et supérieur, AT+BLEUARTTX peut accepter les séquences d'échappement suivantes:
* \+ = transmit a single '+' character without having to worry about `+++` mode switch combinations
+
* \+ = Transmet un simple caractère '+' sans avoir à s’inquiéter de la combinaison de `+++` (changement de mode)
  
{{ambox|text=ESCAPE SEQUENCE NOTE: If you are trying to send escape sequences in code via something like 'ble.print("...");' please note that you will need to send a double back-slash for the escape code to arrive as-intended in the AT command. For example: ble.println("AT+BLEUARTTX=Some Test\\r\\n"); }}
+
{{ambox|text=NOTE SUR LES SEQUENCES D'ECHAPPEMENT: Si vous essayez d'envoyer les séquences d'échappement dans le code par l'intermédiaire d'une instruction telle que 'ble.print("...");' prenez note qu'il vous vaudra utiliser des double-back-slash pour le code d'échappement d'une commande AT.
{{ambox-stop|text= You must be connected to another device for this command to execute}}
+
Par exemple: ble.println("AT+BLEUARTTX=Some Test\\r\\n"); }}
 +
{{ambox-stop|text=Vous devez être connecté sur un autre périphérique pour que cette commande s'éxécute.}}
  
<syntaxhighlight lang="python">
+
<nowiki>
# Send a string when connected to another device
+
# Envoi une chaîne de caractère lorsqu'il
 +
# est connecté sur un autre périphérique
 
AT+BLEUARTTX=THIS IS A TEST
 
AT+BLEUARTTX=THIS IS A TEST
 
OK
 
OK
 
    
 
    
# Send a string when not connected
+
# Réponse lorsque le Bluefruit n'est pas connecté
 +
# sur un autre périphérique
 
AT+BLEUARTTX=THIS IS A TEST
 
AT+BLEUARTTX=THIS IS A TEST
 
ERROR
 
ERROR
</syntaxhighlight>
+
</nowiki>
  
 
=== Gestion de la mémoire tampon de réception ===
 
=== Gestion de la mémoire tampon de réception ===
Starting with firmware version '''0.6.7''', when the TX FIFO buffer is full a 200ms blocking delay will be used to see if any free space becomes available in the FIFO before returning ERROR. The exact process is detailed in the flow chart below:
+
Depuis le firmware '''0.6.7''', lorsque la mémoire tampon FIFO d'émission est saturée (TX FIFO buffer), un délai bloquant de 200ms est utilisé pour voir si de l'espace se libère dans la pile FIFO avant de retourner une erreur (le message "ERROR"). Le processus exact est détaillé dans le graphique suivant:
  
 
[[Fichier:Bluefruit-LE-Shield-BLE-Services-00.jpg]]
 
[[Fichier:Bluefruit-LE-Shield-BLE-Services-00.jpg]]
  
{{ambox|text= Note: The TX FIFO full check will happen for each GATT transaction (of up to 20 bytes of data each), so large data transfers may have multiple 200ms wait states.}}
+
{{ambox|text= Note: La vérification complète de la mémoire tampon FIFO d'émission sera réalisé pour chaque transaction GATT (jusqu'à 20 octets de donnée par transaction), par conséquent, les importants transferts de donnée peuvent rencontrer plusieurs fois des délais d'attente de 200ms.}}
  
You can use the '''AT+BLEUARTFIFO=TX''' command to check the size of the TX FIFO before sending data to ensure that you have enough free space available in the buffer.
+
Vous pouvez utiliser la commande '''AT+BLEUARTFIFO=TX''' pour vérifier la taille du buffer FIFO d'émission avant d'envoyer des donnée. Cela permet de s'assurer qu'il y a assez de place libre dans le buffer.
  
The TX FIFO has the following size, depending on the firmware version used:
+
La mémoire tampon (buffer) d'émission à la taille suivante (la taille dépend de la version du Firmware utilisé):
* Firmware <=0.6.6: '''160 characters wide'''
+
* Firmware <=0.6.6: '''160 caractères'''
* Firmware >=0.6.7: '''1024 characters wide'''
+
* Firmware >=0.6.7: '''1024 caractères'''
  
{{ambox-stop|text=It IS possible with large data transfers that part of the payload can be transmitted, and the command can still produce an ERROR if the FIFO doesn't empty in time in the middle of the payload transfer (since data is transmitted in maximum 20 byte chunks). If you need to ensure reliable data transfer, you should always check the TX FIFO size before sending data, which you can do using the AT+BLEUARTFIFO command. If not enough space is available for the entire payload, add a SW delay until enough space is available. Any single AT+BLEUARTTX command can fit into the FIFO, but multiple large instances of this command may cause the FIFO to fill up mid transfer. }}
+
{{ambox-stop|text=Lors de grand transfert de donnée, il est possible qu'une partie du payload soit transmit, et que la commande produise une erreur si la mémoire tampon FIFO d'émission ne se vide pas dans les temps au milieu du processus de transfert des données (les données sont transmissent par paquet de 20 octets).
 +
 
 +
Vous devriez toujours vérifier la taille de la mémoire tampon FIFO d'émission si vous désirez assurer un transfert fiable. La commande AT+BLEUARTFIFO permet de connaître cette taille. Si la taille n'est pas suffisante pour inclure votre payload alors introduisez un délai d'attente dans votre programme pour laisser l'opportunité à la mémoire tampon de se vider.
 +
 
 +
De simples commande AT+BLEUARTTX peuvent tenir dans le FIFO, mais de multiple instance de cette commande (avec donnée) peuvent remplir le FIFO en cours de transfert. }}
  
 
== AT+BLEUARTTXF ==
 
== AT+BLEUARTTXF ==
This is a convenience function the serves the same purpose as AT+BLEUARTTX, but data is immediately sent in a single BLE packet ('F' for force packet). This command will accept a maximum of 20 characters, which is the limit of what can be send in a single packet.
+
C'est une fonction commode qui réalise la même fonction que AT+BLEUARTTX '''mais''' un envoi immédiat dans un simple packet BLE ('F' pour Forcer le paquet). Cette commande acceptera un maximum de 20 caractères, ce qui est la limite de ce qui peut être envoyé dans un seul paquet.
 
* Codebase Revision: 0.7.6
 
* Codebase Revision: 0.7.6
* Parameters: See AT+BLEUARTTX
+
* Paramètres: voyez AT+BLEUARTTX
* Output: See AT+BLEUARTTX
+
* Sortie: voyez AT+BLEUARTTX
  
 
== AT+BLEUARTRX ==
 
== AT+BLEUARTRX ==
This command will dump the UART service's RX buffer to the display if any data has been received from from the UART service while running in Command Mode. The data will be removed from the buffer once it is displayed using this command.
+
Cette commande fait un dump de la mémoire tampon de réception du [https://learn.adafruit.com/introducing-adafruit-ble-bluetooth-low-energy-friend/uart-service service UART] sur l'écran (si le service UART à reçu des données pendant l'exécution en mode de commande). Les données seront retirée de la mémoire tampon une fois affichées en utilisant cette commande.
  
Any characters left in the buffer when switching back to Data Mode will cause the buffered characters to be displayed as soon as the mode switch is complete (within the limits of available buffer space, which is 1024 bytes on current black 32KB SRAM devices, or 160 bytes for the blue first generation BLEFriend board based on 16KB SRAM parts).
+
Tout caractère laissé dans la mémoire tampon en repassant en mode Data provoquera l'affichage des caractères de la mémoire tampon dès la fin du changement de mode (dans les limites de l'espace disponible dans la mémoire tampon, qui est de 1024 octets --ou 160 octets pour pour la première génération des cartes BLEFriend).
 
* Codebase Revision: 0.3.0
 
* Codebase Revision: 0.3.0
* Parameters: None
+
* Paramètres: Aucun
* Output: The RX buffer's content if any data is available, otherwise nothing.
+
* Sortie: Le contenu de la mémoire tampon en réception (RX buffer) s'il y en a des données disponibles. Sinon rien.
  
{{ambox|text= You can also use the AT+BLEUARTFIFO=RX command to check if any incoming data is available or not.}}
+
{{ambox|text=Vous pouvez également utiliser la commande AT+BLEUARTFIFO=RX pour voir s'il n'y a des données disponibles.}}
  
<syntaxhighlight lang="python">
+
<nowiki>
# Command results when data is available
+
# Résultat de la commande lorsqu'il y en a de disponible
 
AT+BLEUARTRX
 
AT+BLEUARTRX
 
Sent from Android
 
Sent from Android
 
OK
 
OK
 
    
 
    
# Command results when no data is available
+
# Résultat de la commande lorsqu'il n'y a pas de donnée disponible
 
AT+BLEUARTRX
 
AT+BLEUARTRX
 
OK
 
OK
</syntaxhighlight>
+
</nowiki>
 +
 
 +
== AT+BLEUARTFIFO ==
 +
Cette commande retournera l'espace disponible dans les FIFOs de l'UART BLE (les mémoires tampons TX et RX). Si vous transmettez de grandes quantités de données, vous pourriez avoir besoin de vérifier si vous avez assez d'espace libre dans la mémoire tampon FIFO TX avant l'émission. Gardez à l'esprit que les paquet GATT individuels peuvent chacun contenir 20 octets (données utilisateur).
 +
 
 +
* Codebase Revision: 0.6.7
 +
* Paramètre: exécuter cette commande sans paramètre retournera les valeurs (séparée par des virgules) indiquant l'espace disponible dans la mémoire tampon de d'émission (buffer TX), suivit de la mémoire tampon en réception (RX buffer). Pour faire une requête sur une mémoire tampon spécifique, vous pouvez exécuter la commande avec soit la valeur "TX" ou "RX" (Par exemple: "AT+BLEUARTFIFO=TX").
 +
* Sortie: L'espace libre dans les mémoires tampons en émission et réception (TX and RX FIFO buffer). S'il y a un paramètre complémentaire, seul le buffer concerné retourna l'information souhaitée.
 +
 
 +
<nowiki>
 +
AT+BLEUARTFIFO
 +
1024,1024
 +
OK
 +
 
 +
AT+BLEUARTFIFO=TX
 +
1024
 +
OK
 +
 
 +
AT+BLEUARTFIFO=RX
 +
1024
 +
OK</nowiki>
 +
 
 +
== AT+BLEKEYBOARDEN ==
 +
Cette commande va activer le support "GATT over HID" (GoH) - le support clavier, ce qui vous permet d'émuler un clavier sur les périphériques iOS et Android.
 +
 
 +
Par défaut, ce support clavier HID est désactivé. Par conséquent fixez BLEKEYBOARDEN à 1 puis effectuez une réinitialisation système avant que le "clavier" soit énuméré et apparaisse dans les préférences Bluetooth de votre téléphone (où il pourra  être lié comme clavier BLE).
 +
* Codebase Revision: 0.5.0
 +
* Paramètres: 1 ou 0 (1 = activer, 0 = désactiver)
 +
* Sortie: Aucun
 +
{{ambox|text=Depuis le firmware 0.6.6 cette commande est un alias pour AT+BLEHIDEN}}
 +
{{ambox-stop|text=Vous devez effectuer une réinitialisation système (ATZ) avant que les changements soient effectifs!}}
 +
{{ambox-stop|text=Avant de pouvoir utiliser votre clavier "HID over GATT", vous aurez besoin de lier le module Bluefruit LE avec votre mobile (dans le panneau des préférences Bluetooth).}}
 +
<nowiki># Activer le support clavier BLE puis réinitialisation
 +
AT+BLEKEYBOARDEN=1
 +
OK
 +
ATZ
 +
OK
 +
 
 +
# Désactive le support clavier puis réinitialisation
 +
AT+BLEKEYBOARDEN=0
 +
OK
 +
ATZ
 +
OK</nowiki>
 +
 
 +
== AT+BLEKEYBOARD ==
 +
Envoi des données textes via l'interface clavier BLE (si elle a précédemment été activée avec AT+BLEKEYBOARDEN).
 +
* Codebase Revision: 0.5.0
 +
* Paramètre: la chaîne de caractère (incluant éventuellement des caractères d'échappement) à transmettre
 +
* Sortie: Aucune
 +
 
 +
Il est possible d'envoyer tout caractère Alpha-Numérique valide. Les séquences d'échappement suivantes sont supportées:
 +
* \r - Retour à la ligne (''Carriage Return'')
 +
* \n - Passer à la ligne suivante (''Line Feed'')
 +
* \b - Un caractère en arrière (''Backspace'')
 +
* \t - Une tabulation (''Tab'')
 +
* \\ - Un anti-slash (''Backslash'')
 +
 
 +
Depuis la version 0.6.7, vous pouvez également utiliser la séquence suivante pour envoyer un simple caractère ? seul). Car la commande 'AT+BLEKEYBOARD=?' à une autre interprétation pour l'interpréteur de commande:
 +
* \? - point d'interrogation
 +
 
 +
<nowiki># Envoi une URI avec retour à la ligne (pour être exécuté dans Chrome, etc).
 +
AT+BLEKEYBOARD=http://www.adafruit.com\r\n
 +
OK
 +
 
 +
# Envoi un simple point d'interrogation (cas particulier du firmware 0.6.7+)
 +
AT+BLEKEYBOARD=\?
 +
OK</nowiki>
 +
 
 +
== AT+BLEKEYBOARDCODE ==
 +
Envoi une séquence brute (en hexadécimale) de codes de touche HID USB (des ''keycodes'' en anglais) vers l'interface clavier BLE incluant les codes de modification (Shift, Alt, Control,...). Accepte jusqu'à 6 caractères alpha-numériques.
 +
* Codebase Revision: 0.5.0
 +
* Paramètre: un ensemble de valeurs hexadécimales séparés par un tiret ('-'). Notez qu'il s'agit des valeurs des scancode HID, non des valeurs standards ASCII!
 +
* Sortie: Aucune
 +
 
 +
{{ambox|text=Le valeur des codes touches HID (scancode HID) ne correspondent pas aux codes ASCII! Par exemple, 'a' dispose d'un code touche HID de '04' et il n'y a pas de code touche pour le 'A' puisqu'elle s'obtient avec le code de modification majuscule. Une recherche Google sur les termes 'usb hid keyboard scan codes' (et voyez l'exemple ci-dessous). }}
 +
 
 +
Cette commande accepte les valeurs ASCII encodées comme suit dans le ''payload'' hexadécimal,  cela correspond à la façon dont "HID via GATT" envoi les données claviers:
 +
* '''octet 0''': Code de modification (appelé ''modifier'' en anglais).
 +
* '''octet 1''': Reservé (devrait toujours être 00)
 +
* '''octets 2..7''': les valeurs hexadécimales pour les caractères encodés en ASCII (Vous pouvez saisir '00' s'il n'y a pas de caractères utilisés ou laisser vide les caractères en fin de commande)
 +
 
 +
Après avoir envoyé une séquence de code touche avec la commande AT+BLEKEYBOARDCODE, vous devez envoyer une seconde commande avec AT+BLEKEYBOARDCODE avec au moins deux caractères 00 pour indiquer que les touches sont relâchées!
 +
 
 +
<nowiki># Envoyer 'abc' avec la touche majuscule/shift enfoncée
 +
# permet d'obtenir 'ABC'
 +
AT+BLEKEYBOARDCODE=02-00-04-05-06-00-00
 +
OK
 +
# Indiquer que les touches sont relâchées (obligatoire!)
 +
AT+BLEKEYBOARDCODE=00-00
 +
OK</nowiki>
 +
 
 +
Une liste des code touche HID peut être trouvé [http://www.freebsddiary.org/APC/usb_hid_usages.php ici] (voir la section 7).
 +
 
 +
=== Valeurs de modification ===
 +
Ces valeurs de modification (dite ''modifier'' en anglais) permettent d'indiquer si plusieurs autres touches particulières sont également enfoncées (Shift, Alt, Ctrl, ...).
 +
 
 +
L'octet de modification peut avoir un ou plusieurs des bits suivants activés:
 +
* Bit 0 (0x01): Contrôle Gauche (''Left Control'')
 +
* Bit 1 (0x02): Majuscule Gauche (''Left Shift'')
 +
* Bit 2 (0x04): Alternatif Gauche (''Left Alt'')
 +
* Bit 3 (0x08): Window Gauche (''Left Window'')
 +
* Bit 4 (0x10): Contrôle Droit (''Right Control'')
 +
* Bit 5 (0x20): Majuscule Droite (''Right Shift'')
 +
* Bit 6 (0x40): Alternatif Droit (''Right Alt'')
 +
* Bit 7 (0x80): Window Droit (''Right Window'')
 +
 
 +
== AT+BLEHIDEN ==
 +
Cette commande active le support GoH (''GATT over HID'') permettant d'emuler un clavier, souris ou contrôle de média tels qu'ils sont supportés sur les périphériques iOS, Android, OSX et Windows 10. Le support HID est désactivé par défaut. Il est donc nécessaire de l'activer en fixant la valeur à 1 dans BLEHIDEN puis de faire une réinitialisation système avant que le périphérique HID soit énuméré et apparaisse sur votre périphérique centrale (votre smartphone).
 +
* Codebase Revision: 0.6.6
 +
* Paramètres: 1 = activer ou 0 = désactivé
 +
* Sortie: Aucune
 +
 
 +
{{ambox|text=Il sera normalement nécessaire de ''lier/appairer'' le périphérique Bluefruit LE pour pouvoir utiliser les commandes HID. Le processus d'appairage varie d'un système d'exploitation à l'autre.}}
 +
{{ambox|text=Si vous avez déjà appairé le module avec un périhérique et que vous ayez besoin d'effacer cet appairage alors vous pouvez exécuter la commande AT+FACTORYRESET  qui effacera toutes les données du module Bluefruit LE (y compris celle d'appairage).}}
 +
 
 +
<nowiki># Activer le support "GATT over HID" du module Bluefruit LE
 +
AT+BLEHIDEN=1
 +
OK
 +
 
 +
# Réinitialiser le module pour activer la fonctionnalité
 +
ATZ
 +
OK</nowiki>
 +
 
 +
== AT+BLEHIDMOUSEMOVE ==
 +
Déplace la souris HID (ou fait un défilement si un nombre d'impulsion est précisé).
 +
 
 +
Toutes les valeurs sont des entiers 8 bits signées (-128 à +127). Les valeurs positives provoque un déplacement vers la droite / vers le bas. L'origine des coordonnées se trouvent dans le coin supérieur gauche.
 +
* Codebase Revision: 0.6.6
 +
* Paramètres: impulsions X (+/-), impulsions Y (+/-), rouge de défilement (+/-), défilement horizontal (+/-)
 +
* Sortie: Aucun
 +
<nowiki># Déplace la souris de 100 impulsions à droite et 100 impulsions vers le bas
 +
AT+BLEHIDMOUSEMOVE=100,100
 +
OK
 +
 
 +
# Faire un défilement de 20 pixels ou lignes (en fonction du contexte) vers le bas
 +
AT+BLEHIDMOUSEMOVE=,,20,
 +
OK
 +
 
 +
# Défilement horizontal vers la droite (la fonctionnalité dépend de l'OS)
 +
AT+BLEHIDMOUSEMOVE=0,0,0,100</nowiki>
 +
 
 +
== AT+BLEHIDMOUSEBUTTON ==
 +
Permet de manipuler les boutons de la souris HID à l'aide de textes spécifiques.
 +
* Codebase Revision: 0.6.6
 +
* Paramètres: '''Bouton''' à l'aide [L][R][M][B][F], '''Action''' à l'aide de [PRESS][CLICK][DOUBLECLICK][HOLD]
 +
** Bouton:
 +
*** L = Bouton gauche, ''Left Button''
 +
*** R = Bouton droit, ''Right Button''
 +
*** M = Bouton du milieu, ''Middle Button''
 +
*** B = Bouton "en Arrière", ''Back Button''
 +
*** F = Bouton "en avant", ''Forward Button''
 +
** Action:
 +
*** PRESS = presser le bouton
 +
*** CLICK = cliquer le bouton
 +
*** DOUBLECLICK = double cliquer le bouton
 +
*** HOLD = maintenir le bouton
 +
** 3ieme paramètre:
 +
*** Si le second paramètre (Action) est "HOLD", un 3ième paramètre optionnel permet de spécifier combien de temps le bouton doit être maintenu pressé (en millisecondes).
 +
* Aucune: Aucune
 +
 
 +
<nowiki># Double cliquer le bouton gauche
 +
AT+BLEHIDMOUSEBUTTON=L,doubleclick
 +
OK
 +
 
 +
# Presser le bouton gauche, bouger la souris, puis relâcher le bouton
 +
# Cela permet de réaliser une opération 'glisser-déposer'
 +
AT+BLEHIDMOUSEBUTTON=L
 +
OK
 +
AT+BLEHIDMOUSEMOVE=-100,50
 +
OK
 +
AT+BLEHIDMOUSEBUTTON=0
 +
OK
 +
 
 +
# Maintient le bouton "en arrière" de la souris pendant 200 milli-secondes (Dépendant de l'OS)
 +
AT+BLEHIDMOUSEBUTTON=B,hold,200
 +
OK</nowiki>
 +
 
 +
== AT+BLEHIDCONTROLKEY ==
 +
Envoi une commande HID de contrôle Media vers le périphérique lié (modification du volume, luminosité de l'écran, sélection de la piste musicale, etc.).
 +
* Codebase Revision: 0.6.6
 +
* Paramètre: Le code de la touche HID (de contrôle multimédia) à envoyer, suivi du délai pendant lequel il faut maintenir le bouton enfoncé (ms). Voir les valeurs ci-dessous.
 +
* Sortie: Aucune.
 +
 
 +
Le code de la touche multimédia à envoyer:
 +
* Contrôle système (fonctionne avec la plupart des systèmes)
 +
** BRIGHTNESS+ : augmentation de la luminosité
 +
** BRIGHTNESS- : diminution de la luminosité
 +
* Contôle des médias (fonctionne avec la plupart des systèmes)
 +
** PLAYPAUSE : jouer - pause
 +
** MEDIANEXT : média/piste suivante
 +
** MEDIAPREVIOUS : média/piste précédente
 +
** MEDIASTOP : média arrêt
 +
* Contrôle du volume (fonctionne avec la plupart des systèmes)
 +
** VOLUME
 +
** MUTE : muet
 +
** BASS : sons graves
 +
** TREBLE : sons aigus
 +
** BASS_BOOST : Booster les bass
 +
** VOLUME+ : augmenter le volume
 +
** VOLUME- : diminuer le volume
 +
** BASS+ : augmenter les basses
 +
** BASS- : diminuer les basses
 +
** TREBLE+ : augmenter les aigus
 +
** TREBLE- : diminuer les aigus
 +
* Démarrage d'application (Windows 10 uniquement)
 +
** EMAILREADER : lecture des e-mails
 +
** CALCULATOR : calculatrice
 +
** FILEBROWSER : navigateur de fichier
 +
* Contrôle de navigateur/explorateur de fichier (Firefox sous Windows/Android uniquement)
 +
** SEARCH : Rechercher
 +
** HOME : Page d'accueil / répertoire racine
 +
** BACK : en arrière
 +
** FORWARD : en avant
 +
** STOP : arrêt
 +
** REFRESH : rafraîchir
 +
** BOOKMARKS : marque-pages
 +
 
 +
Vous pouvez également envoyer une valeur hexadécimale brute (16 bits) au format '0xABCD'. Une liste complète des code HID 16 bit (''HID Consumer Control Key Codes'') peut être trouvé [http://www.freebsddiary.org/APC/usb_hid_usages.php ici] (section 12).
 +
 
 +
{{ambox-stop|text=Si vous n'êtes pas appairé et connecté sur un périphérique centrale alors la commande retournera ERROR. Assurez vous d'être appairé et d'avoir activé le support HID avant d'avoir exécuté ces commandes.}}
 +
 
 +
<nowiki># Mettre le volume du périphérique appairé en muet
 +
AT+BLEHIDCONTROLKEY=MUTE
 +
OK
 +
 
 +
# Maintenir la touche VOLUME+ enfoncée pendant 500ms
 +
AT+BLEHIDCONTROLKEY=VOLUME+,500
 +
OK
 +
 
 +
# Envoyer un code touche HID (valeur 16-bit brute). 0x006F = Brightness+
 +
AT+BLEHIDCONTROLKEY=0x006F
 +
OK</nowiki>
 +
 
 +
== AT+BLEHIDGAMEPADEN ==
 +
Active le support du service HID pour le joystick/gamepad. Le gamepad HID est désactivé par défaut (depuis la version 0.7.6 du firmware) parce qu'il cause des problème sur iOS et OS X et devrait uniquement être utilisé avec les périphériques Android et Windows.
 +
 
 +
* Codebase Revision: 0.7.6
 +
* Paramètres: indique si le service gamepad devrait être activé ou désactivé.
 +
** '''1''' ou '''on'''
 +
** '''0''' ou '''off'''
 +
* Sortie: Lorsque la commande est exécutée sans paramètre, l'interpréteur de commande retourne une valeur numérique indiquant l'état d'activation du service. 1 = activé ou 0 = désactivé.
 +
{{ambox|text=Cette commande nécessite une réinitialisation système (ATZ) pour que la modification soit effective.}}
 +
 
 +
== AT+BLEHIDGAMEPAD ==
 +
Envoi une commande HID gamepad via BLE
 +
* Codebase Revision: 0.7.0
 +
* Paramètres: Les paramètres suivants (séparés par une virgule) sont disponibles:
 +
** '''Axe x''':  GAUCHE ou DROITE. Si X=-1 alors c'est le bouton 'GAUCHE' qui est pressé. Si X=1 alors c'est le bouton de 'DROITE' qui est pressé. Si X=0 alors aucun des deux boutons (gauche ou droite) est pressé
 +
** '''Axe y''': HAUT ou BAS. Si Y=-1 alors c'est le bouton 'HAUT' qui est pressé. Si Y=1 ALORS KES LE BOUTON 'BAs' qui est pressé. Si Y=0 alors aucun des deux boutons (haut ou bas) est pressé
 +
** '''Boutons''': de 0x00 à 0xFF, qui est un octet dont les différents bits indiquent lequels des 8 boutons sont pressés (boutons de 0-7)
 +
* Output: aucune
 +
{{ambox|text=Le gamepad HID est désactivé par défaut depuis la version version 0.7.6 du firmware. Le service HID Gamepad doit être préalablement activé à laide de la commande AT+BLEHIDGAMEPADEN=1 avant de pouvoir l'utiliser.}}
 +
{{ambox|text=Note: Il est nécessaire d'envoyer les deux événements 'pressé' et 'relâché' pour chaque bouton utilisé. A défaut, le bouton restera "pressé" jusqu'à la réception de la commande de "relâchement" du bouton.}}
 +
 
 +
<nowiki># Presser 'DROITE' et le 'Bouton0' en même temps
 +
# Boutons = 0b00000001 en binaire -> 1 en décimal -> 0x01 en hexadécimal
 +
AT+BLEHIDGAMEPAD=1,0,0x01
 +
 
 +
# Presser 'HAUT' et 'Bouton1' + 'Bouton0' en même temps
 +
# Boutons = 0b00000011 en binaire -> 3 en décimal -> 0x03 en hexadécimal
 +
AT+BLEHIDGAMEPAD=0,-1,0x03</nowiki>
 +
 
 +
== AT+BLEMIDIEN ==
 +
Active ou désactive le service MIDI ble.
 +
* Codebase Revision: 0.7.0
 +
* Paramètre: Activer / Désactiver le service MIDI BLE avec les valeurs suivante:
 +
** '''1''' ou '''on''' - pour activer
 +
** '''0''' ou '''off''' - pour désactiver
 +
* Sortie: Lorsqu'elle est exécutée sans paramètre, l'interpréteur de commande retourne une valeur numérique correspondant à l'état d'activation du service MIDI BLE. 1 = activé ou 0 = désactivé.
 +
{{ambox|text=Note: cette commande nécessitera une réinitialisation (ATZ) pour que la modification soit prise en compte.}}
 +
 
 +
<nowiki># Vérifier l'état actuel du service MIDI
 +
AT+BLEMIDIEN
 +
1
 +
OK
 +
 
 +
# Activer le service MIDI
 +
AT+BLEMIDIEN=1
 +
OK</nowiki>
 +
 
 +
== AT+BLEMIDIRX ==
 +
Lit la mémoire tampon et retourne le tableau de caractère MIDI entrant.
 +
* Codebase Revision: 0.7.0
 +
* Paramètre: Aucun
 +
* Sortie: l'événement midi retourné sous forme de tableau d'octet
 +
 
 +
<nowiki>AT+BLEMIDIRX
 +
90-3C-7F
 +
OK</nowiki>
 +
 
 +
== AT+BLEMIDITX ==
 +
Envoyer un événement MIDI vers l'hôte.
 +
* Codebase Revision: 0.7.0
 +
* Paramètre: l'événement MIDI sous forme d'un tableau hexadécimal, qui peut être soit:
 +
** Une série d'événement MIDI complet (jusqu'à 4 événements)
 +
** 1 événement MIDI complet (exactement) + plusieurs événements '''running events''' sans statut (''several running events without status'') (jusqu'à 7)
 +
* Sortie: Aucune
 +
 
 +
<nowiki># Envoi de un événement (middle C/DO grave avec la vélocité maximale)
 +
AT+BLEMIDITX=90-3C-7F
 +
OK
 +
 
 +
# Envoi de 2 événements
 +
AT+BLEMIDITX=90-3C-7F-A0-3C-7F
 +
OK
 +
 
 +
# Envoi d'un événement complet + "running event"
 +
AT+BLEMIDITX=90-3C-7F-3C-7F
 +
OK</nowiki>
 +
 
 +
== AT+BLEBATTEN ==
 +
Active le service Battery en suivant la définition de "Bluetooth SIG".
 +
 
 +
Le [https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.service.battery_service.xml Service Battery] permet d'exposer l'état de la batterie au périphérique appairé.
 +
 
 +
* Codebase Revision: 0.7.0
 +
* Paramètre: Indique si le service Battery doit être activé ou désactivé:
 +
** '''1''' ou '''on''' - activer le service
 +
** '''0''' ou '''off''' - désactiver le service
 +
* Sortie: Si la commande est exécutée sans paramètre alors l'interpréteur de commande retourne une valeur numérique indiquant l'état d'activation du service. Activer = 1, Désactiver = 0.
 +
 
 +
{{ambox|text=Nécessite une réinitialisation système (ATZ) pour que la modification soit prise en compte.}}
 +
 
 +
== AT+BLEBATTVAL ==
 +
Permet au module d'envoyer le niveau de sa batterie au périphérique central (votre smartphone).
 +
 
 +
* Codebase Revision: 0.7.0
 +
* Paramètre: Le pourcentage (0..100) de la batterie à communiquer.
 +
* Sortie: Si la commande est exécutée sans paramètre, l'interpréteur de commande retourne le niveau de batterie actuel tel qu'il à été stocké dans les caractéristiques.
 +
 
 +
<nowiki># Fixer le niveau de la batterie à 72%
 +
AT+BLEBATTVAL=72
 +
OK</nowiki>
  
 
{{Bluefruit-LE-Shield-TRAILER}}
 
{{Bluefruit-LE-Shield-TRAILER}}

Version actuelle datée du 18 juin 2017 à 20:20


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Services BLE

Les commandes suivantes vous permettent d'interagir avec les différents services GATT présent sur les modules Bluefruit LE lorsque celui-ci fonctionne en mode commande.

Le service GATT et ses caractéristiques (Adafruit, anglais) gouvernent l'organisation et l'échange de données entre les périphériques.

AT+BLEUARTTX

Cette commande transmet le message texte spécifié en paramètre via le Service UART pendant que le module fonctionne en mode commande.

  • Codebase Revision: 0.3.0
  • Paramètre: Le payload (données) à transmettre. Le payload peut faire jusqu'à 240 caractères (étant donné que les commandes AT sont limitées à un maximum de 256 octet).
  • Sortie: Cette commande produit le message erreur ERROR s'il n'est pas possible de se connecter sur le périphérique central, ou si la mémoire tampon d'émission interne du BluFruit (internal TX FIFO) est remplie.

Sur un firmware 0.6.2 et supérieur, AT+BLEUARTTX peut accepter quelques séquences d'échappements:

  • \r = retour clavier
  • \n = Nouvelle ligne
  • \t = Tabulation
  • \b = retour en arrière (backspace)
  • \\ = Anti-slash

Sur un firmware 0.6.7 et supérieur, AT+BLEUARTTX peut accepter la séquence d'échappement suivante (puisque AT+BLEUARTTX=? à une signification particulière pour le parseur AT):

  • \? = transmet un simple point d'interrogation

Sur un firmware 0.7.6 et supérieur, AT+BLEUARTTX peut accepter les séquences d'échappement suivantes:

  • \+ = Transmet un simple caractère '+' sans avoir à s’inquiéter de la combinaison de `+++` (changement de mode)
# Envoi une chaîne de caractère lorsqu'il 
# est connecté sur un autre périphérique
AT+BLEUARTTX=THIS IS A TEST
OK
  
# Réponse lorsque le Bluefruit n'est pas connecté 
# sur un autre périphérique
AT+BLEUARTTX=THIS IS A TEST
ERROR

Gestion de la mémoire tampon de réception

Depuis le firmware 0.6.7, lorsque la mémoire tampon FIFO d'émission est saturée (TX FIFO buffer), un délai bloquant de 200ms est utilisé pour voir si de l'espace se libère dans la pile FIFO avant de retourner une erreur (le message "ERROR"). Le processus exact est détaillé dans le graphique suivant:

Bluefruit-LE-Shield-BLE-Services-00.jpg

Vous pouvez utiliser la commande AT+BLEUARTFIFO=TX pour vérifier la taille du buffer FIFO d'émission avant d'envoyer des donnée. Cela permet de s'assurer qu'il y a assez de place libre dans le buffer.

La mémoire tampon (buffer) d'émission à la taille suivante (la taille dépend de la version du Firmware utilisé):

  • Firmware <=0.6.6: 160 caractères
  • Firmware >=0.6.7: 1024 caractères

AT+BLEUARTTXF

C'est une fonction commode qui réalise la même fonction que AT+BLEUARTTX mais un envoi immédiat dans un simple packet BLE ('F' pour Forcer le paquet). Cette commande acceptera un maximum de 20 caractères, ce qui est la limite de ce qui peut être envoyé dans un seul paquet.

  • Codebase Revision: 0.7.6
  • Paramètres: voyez AT+BLEUARTTX
  • Sortie: voyez AT+BLEUARTTX

AT+BLEUARTRX

Cette commande fait un dump de la mémoire tampon de réception du service UART sur l'écran (si le service UART à reçu des données pendant l'exécution en mode de commande). Les données seront retirée de la mémoire tampon une fois affichées en utilisant cette commande.

Tout caractère laissé dans la mémoire tampon en repassant en mode Data provoquera l'affichage des caractères de la mémoire tampon dès la fin du changement de mode (dans les limites de l'espace disponible dans la mémoire tampon, qui est de 1024 octets --ou 160 octets pour pour la première génération des cartes BLEFriend).

  • Codebase Revision: 0.3.0
  • Paramètres: Aucun
  • Sortie: Le contenu de la mémoire tampon en réception (RX buffer) s'il y en a des données disponibles. Sinon rien.
# Résultat de la commande lorsqu'il y en a de disponible
AT+BLEUARTRX
Sent from Android
OK
  
# Résultat de la commande lorsqu'il n'y a pas de donnée disponible
AT+BLEUARTRX
OK

AT+BLEUARTFIFO

Cette commande retournera l'espace disponible dans les FIFOs de l'UART BLE (les mémoires tampons TX et RX). Si vous transmettez de grandes quantités de données, vous pourriez avoir besoin de vérifier si vous avez assez d'espace libre dans la mémoire tampon FIFO TX avant l'émission. Gardez à l'esprit que les paquet GATT individuels peuvent chacun contenir 20 octets (données utilisateur).

  • Codebase Revision: 0.6.7
  • Paramètre: exécuter cette commande sans paramètre retournera les valeurs (séparée par des virgules) indiquant l'espace disponible dans la mémoire tampon de d'émission (buffer TX), suivit de la mémoire tampon en réception (RX buffer). Pour faire une requête sur une mémoire tampon spécifique, vous pouvez exécuter la commande avec soit la valeur "TX" ou "RX" (Par exemple: "AT+BLEUARTFIFO=TX").
  • Sortie: L'espace libre dans les mémoires tampons en émission et réception (TX and RX FIFO buffer). S'il y a un paramètre complémentaire, seul le buffer concerné retourna l'information souhaitée.
AT+BLEUARTFIFO
1024,1024
OK

AT+BLEUARTFIFO=TX
1024
OK

AT+BLEUARTFIFO=RX
1024
OK

AT+BLEKEYBOARDEN

Cette commande va activer le support "GATT over HID" (GoH) - le support clavier, ce qui vous permet d'émuler un clavier sur les périphériques iOS et Android.

Par défaut, ce support clavier HID est désactivé. Par conséquent fixez BLEKEYBOARDEN à 1 puis effectuez une réinitialisation système avant que le "clavier" soit énuméré et apparaisse dans les préférences Bluetooth de votre téléphone (où il pourra être lié comme clavier BLE).

  • Codebase Revision: 0.5.0
  • Paramètres: 1 ou 0 (1 = activer, 0 = désactiver)
  • Sortie: Aucun
# Activer le support clavier BLE puis réinitialisation
AT+BLEKEYBOARDEN=1
OK
ATZ
OK
  
# Désactive le support clavier puis réinitialisation
AT+BLEKEYBOARDEN=0
OK
ATZ
OK

AT+BLEKEYBOARD

Envoi des données textes via l'interface clavier BLE (si elle a précédemment été activée avec AT+BLEKEYBOARDEN).

  • Codebase Revision: 0.5.0
  • Paramètre: la chaîne de caractère (incluant éventuellement des caractères d'échappement) à transmettre
  • Sortie: Aucune

Il est possible d'envoyer tout caractère Alpha-Numérique valide. Les séquences d'échappement suivantes sont supportées:

  • \r - Retour à la ligne (Carriage Return)
  • \n - Passer à la ligne suivante (Line Feed)
  • \b - Un caractère en arrière (Backspace)
  • \t - Une tabulation (Tab)
  • \\ - Un anti-slash (Backslash)

Depuis la version 0.6.7, vous pouvez également utiliser la séquence suivante pour envoyer un simple caractère ? seul). Car la commande 'AT+BLEKEYBOARD=?' à une autre interprétation pour l'interpréteur de commande:

  • \? - point d'interrogation
# Envoi une URI avec retour à la ligne (pour être exécuté dans Chrome, etc).
AT+BLEKEYBOARD=http://www.adafruit.com\r\n
OK
  
# Envoi un simple point d'interrogation (cas particulier du firmware 0.6.7+)
AT+BLEKEYBOARD=\?
OK

AT+BLEKEYBOARDCODE

Envoi une séquence brute (en hexadécimale) de codes de touche HID USB (des keycodes en anglais) vers l'interface clavier BLE incluant les codes de modification (Shift, Alt, Control,...). Accepte jusqu'à 6 caractères alpha-numériques.

  • Codebase Revision: 0.5.0
  • Paramètre: un ensemble de valeurs hexadécimales séparés par un tiret ('-'). Notez qu'il s'agit des valeurs des scancode HID, non des valeurs standards ASCII!
  • Sortie: Aucune

Cette commande accepte les valeurs ASCII encodées comme suit dans le payload hexadécimal, cela correspond à la façon dont "HID via GATT" envoi les données claviers:

  • octet 0: Code de modification (appelé modifier en anglais).
  • octet 1: Reservé (devrait toujours être 00)
  • octets 2..7: les valeurs hexadécimales pour les caractères encodés en ASCII (Vous pouvez saisir '00' s'il n'y a pas de caractères utilisés ou laisser vide les caractères en fin de commande)

Après avoir envoyé une séquence de code touche avec la commande AT+BLEKEYBOARDCODE, vous devez envoyer une seconde commande avec AT+BLEKEYBOARDCODE avec au moins deux caractères 00 pour indiquer que les touches sont relâchées!

# Envoyer 'abc' avec la touche majuscule/shift enfoncée
# permet d'obtenir 'ABC'
AT+BLEKEYBOARDCODE=02-00-04-05-06-00-00
OK
# Indiquer que les touches sont relâchées (obligatoire!)
AT+BLEKEYBOARDCODE=00-00
OK

Une liste des code touche HID peut être trouvé ici (voir la section 7).

Valeurs de modification

Ces valeurs de modification (dite modifier en anglais) permettent d'indiquer si plusieurs autres touches particulières sont également enfoncées (Shift, Alt, Ctrl, ...).

L'octet de modification peut avoir un ou plusieurs des bits suivants activés:

  • Bit 0 (0x01): Contrôle Gauche (Left Control)
  • Bit 1 (0x02): Majuscule Gauche (Left Shift)
  • Bit 2 (0x04): Alternatif Gauche (Left Alt)
  • Bit 3 (0x08): Window Gauche (Left Window)
  • Bit 4 (0x10): Contrôle Droit (Right Control)
  • Bit 5 (0x20): Majuscule Droite (Right Shift)
  • Bit 6 (0x40): Alternatif Droit (Right Alt)
  • Bit 7 (0x80): Window Droit (Right Window)

AT+BLEHIDEN

Cette commande active le support GoH (GATT over HID) permettant d'emuler un clavier, souris ou contrôle de média tels qu'ils sont supportés sur les périphériques iOS, Android, OSX et Windows 10. Le support HID est désactivé par défaut. Il est donc nécessaire de l'activer en fixant la valeur à 1 dans BLEHIDEN puis de faire une réinitialisation système avant que le périphérique HID soit énuméré et apparaisse sur votre périphérique centrale (votre smartphone).

  • Codebase Revision: 0.6.6
  • Paramètres: 1 = activer ou 0 = désactivé
  • Sortie: Aucune
# Activer le support "GATT over HID" du module Bluefruit LE
AT+BLEHIDEN=1
OK
  
# Réinitialiser le module pour activer la fonctionnalité
ATZ
OK

AT+BLEHIDMOUSEMOVE

Déplace la souris HID (ou fait un défilement si un nombre d'impulsion est précisé).

Toutes les valeurs sont des entiers 8 bits signées (-128 à +127). Les valeurs positives provoque un déplacement vers la droite / vers le bas. L'origine des coordonnées se trouvent dans le coin supérieur gauche.

  • Codebase Revision: 0.6.6
  • Paramètres: impulsions X (+/-), impulsions Y (+/-), rouge de défilement (+/-), défilement horizontal (+/-)
  • Sortie: Aucun
# Déplace la souris de 100 impulsions à droite et 100 impulsions vers le bas
AT+BLEHIDMOUSEMOVE=100,100
OK
  
# Faire un défilement de 20 pixels ou lignes (en fonction du contexte) vers le bas 
AT+BLEHIDMOUSEMOVE=,,20,
OK
  
# Défilement horizontal vers la droite (la fonctionnalité dépend de l'OS)
AT+BLEHIDMOUSEMOVE=0,0,0,100

AT+BLEHIDMOUSEBUTTON

Permet de manipuler les boutons de la souris HID à l'aide de textes spécifiques.

  • Codebase Revision: 0.6.6
  • Paramètres: Bouton à l'aide [L][R][M][B][F], Action à l'aide de [PRESS][CLICK][DOUBLECLICK][HOLD]
    • Bouton:
      • L = Bouton gauche, Left Button
      • R = Bouton droit, Right Button
      • M = Bouton du milieu, Middle Button
      • B = Bouton "en Arrière", Back Button
      • F = Bouton "en avant", Forward Button
    • Action:
      • PRESS = presser le bouton
      • CLICK = cliquer le bouton
      • DOUBLECLICK = double cliquer le bouton
      • HOLD = maintenir le bouton
    • 3ieme paramètre:
      • Si le second paramètre (Action) est "HOLD", un 3ième paramètre optionnel permet de spécifier combien de temps le bouton doit être maintenu pressé (en millisecondes).
  • Aucune: Aucune
# Double cliquer le bouton gauche
AT+BLEHIDMOUSEBUTTON=L,doubleclick
OK

# Presser le bouton gauche, bouger la souris, puis relâcher le bouton
# Cela permet de réaliser une opération 'glisser-déposer'
AT+BLEHIDMOUSEBUTTON=L
OK
AT+BLEHIDMOUSEMOVE=-100,50
OK
AT+BLEHIDMOUSEBUTTON=0
OK
  
# Maintient le bouton "en arrière" de la souris pendant 200 milli-secondes (Dépendant de l'OS)
AT+BLEHIDMOUSEBUTTON=B,hold,200
OK

AT+BLEHIDCONTROLKEY

Envoi une commande HID de contrôle Media vers le périphérique lié (modification du volume, luminosité de l'écran, sélection de la piste musicale, etc.).

  • Codebase Revision: 0.6.6
  • Paramètre: Le code de la touche HID (de contrôle multimédia) à envoyer, suivi du délai pendant lequel il faut maintenir le bouton enfoncé (ms). Voir les valeurs ci-dessous.
  • Sortie: Aucune.

Le code de la touche multimédia à envoyer:

  • Contrôle système (fonctionne avec la plupart des systèmes)
    • BRIGHTNESS+ : augmentation de la luminosité
    • BRIGHTNESS- : diminution de la luminosité
  • Contôle des médias (fonctionne avec la plupart des systèmes)
    • PLAYPAUSE : jouer - pause
    • MEDIANEXT : média/piste suivante
    • MEDIAPREVIOUS : média/piste précédente
    • MEDIASTOP : média arrêt
  • Contrôle du volume (fonctionne avec la plupart des systèmes)
    • VOLUME
    • MUTE : muet
    • BASS : sons graves
    • TREBLE : sons aigus
    • BASS_BOOST : Booster les bass
    • VOLUME+ : augmenter le volume
    • VOLUME- : diminuer le volume
    • BASS+ : augmenter les basses
    • BASS- : diminuer les basses
    • TREBLE+ : augmenter les aigus
    • TREBLE- : diminuer les aigus
  • Démarrage d'application (Windows 10 uniquement)
    • EMAILREADER : lecture des e-mails
    • CALCULATOR : calculatrice
    • FILEBROWSER : navigateur de fichier
  • Contrôle de navigateur/explorateur de fichier (Firefox sous Windows/Android uniquement)
    • SEARCH : Rechercher
    • HOME : Page d'accueil / répertoire racine
    • BACK : en arrière
    • FORWARD : en avant
    • STOP : arrêt
    • REFRESH : rafraîchir
    • BOOKMARKS : marque-pages

Vous pouvez également envoyer une valeur hexadécimale brute (16 bits) au format '0xABCD'. Une liste complète des code HID 16 bit (HID Consumer Control Key Codes) peut être trouvé ici (section 12).

# Mettre le volume du périphérique appairé en muet
AT+BLEHIDCONTROLKEY=MUTE
OK

# Maintenir la touche VOLUME+ enfoncée pendant 500ms
AT+BLEHIDCONTROLKEY=VOLUME+,500
OK

# Envoyer un code touche HID (valeur 16-bit brute). 0x006F = Brightness+
AT+BLEHIDCONTROLKEY=0x006F
OK

AT+BLEHIDGAMEPADEN

Active le support du service HID pour le joystick/gamepad. Le gamepad HID est désactivé par défaut (depuis la version 0.7.6 du firmware) parce qu'il cause des problème sur iOS et OS X et devrait uniquement être utilisé avec les périphériques Android et Windows.

  • Codebase Revision: 0.7.6
  • Paramètres: indique si le service gamepad devrait être activé ou désactivé.
    • 1 ou on
    • 0 ou off
  • Sortie: Lorsque la commande est exécutée sans paramètre, l'interpréteur de commande retourne une valeur numérique indiquant l'état d'activation du service. 1 = activé ou 0 = désactivé.

AT+BLEHIDGAMEPAD

Envoi une commande HID gamepad via BLE

  • Codebase Revision: 0.7.0
  • Paramètres: Les paramètres suivants (séparés par une virgule) sont disponibles:
    • Axe x: GAUCHE ou DROITE. Si X=-1 alors c'est le bouton 'GAUCHE' qui est pressé. Si X=1 alors c'est le bouton de 'DROITE' qui est pressé. Si X=0 alors aucun des deux boutons (gauche ou droite) est pressé
    • Axe y: HAUT ou BAS. Si Y=-1 alors c'est le bouton 'HAUT' qui est pressé. Si Y=1 ALORS KES LE BOUTON 'BAs' qui est pressé. Si Y=0 alors aucun des deux boutons (haut ou bas) est pressé
    • Boutons: de 0x00 à 0xFF, qui est un octet dont les différents bits indiquent lequels des 8 boutons sont pressés (boutons de 0-7)
  • Output: aucune
# Presser 'DROITE' et le 'Bouton0' en même temps
# Boutons = 0b00000001 en binaire -> 1 en décimal -> 0x01 en hexadécimal
AT+BLEHIDGAMEPAD=1,0,0x01

# Presser 'HAUT' et 'Bouton1' + 'Bouton0' en même temps
# Boutons = 0b00000011 en binaire -> 3 en décimal -> 0x03 en hexadécimal
AT+BLEHIDGAMEPAD=0,-1,0x03

AT+BLEMIDIEN

Active ou désactive le service MIDI ble.

  • Codebase Revision: 0.7.0
  • Paramètre: Activer / Désactiver le service MIDI BLE avec les valeurs suivante:
    • 1 ou on - pour activer
    • 0 ou off - pour désactiver
  • Sortie: Lorsqu'elle est exécutée sans paramètre, l'interpréteur de commande retourne une valeur numérique correspondant à l'état d'activation du service MIDI BLE. 1 = activé ou 0 = désactivé.
# Vérifier l'état actuel du service MIDI
AT+BLEMIDIEN
1
OK

# Activer le service MIDI
AT+BLEMIDIEN=1
OK

AT+BLEMIDIRX

Lit la mémoire tampon et retourne le tableau de caractère MIDI entrant.

  • Codebase Revision: 0.7.0
  • Paramètre: Aucun
  • Sortie: l'événement midi retourné sous forme de tableau d'octet
AT+BLEMIDIRX
90-3C-7F
OK

AT+BLEMIDITX

Envoyer un événement MIDI vers l'hôte.

  • Codebase Revision: 0.7.0
  • Paramètre: l'événement MIDI sous forme d'un tableau hexadécimal, qui peut être soit:
    • Une série d'événement MIDI complet (jusqu'à 4 événements)
    • 1 événement MIDI complet (exactement) + plusieurs événements running events sans statut (several running events without status) (jusqu'à 7)
  • Sortie: Aucune
# Envoi de un événement (middle C/DO grave avec la vélocité maximale)
AT+BLEMIDITX=90-3C-7F
OK

# Envoi de 2 événements
AT+BLEMIDITX=90-3C-7F-A0-3C-7F
OK

# Envoi d'un événement complet + "running event"
AT+BLEMIDITX=90-3C-7F-3C-7F
OK

AT+BLEBATTEN

Active le service Battery en suivant la définition de "Bluetooth SIG".

Le Service Battery permet d'exposer l'état de la batterie au périphérique appairé.

  • Codebase Revision: 0.7.0
  • Paramètre: Indique si le service Battery doit être activé ou désactivé:
    • 1 ou on - activer le service
    • 0 ou off - désactiver le service
  • Sortie: Si la commande est exécutée sans paramètre alors l'interpréteur de commande retourne une valeur numérique indiquant l'état d'activation du service. Activer = 1, Désactiver = 0.

AT+BLEBATTVAL

Permet au module d'envoyer le niveau de sa batterie au périphérique central (votre smartphone).

  • Codebase Revision: 0.7.0
  • Paramètre: Le pourcentage (0..100) de la batterie à communiquer.
  • Sortie: Si la commande est exécutée sans paramètre, l'interpréteur de commande retourne le niveau de batterie actuel tel qu'il à été stocké dans les caractéristiques.
# Fixer le niveau de la batterie à 72%
AT+BLEBATTVAL=72
OK

Basé sur "Bluefruit LE Shield" d'Adafruit Industries, écrit par Kevin Townsend - Traduit en Français par shop.mchobby.be CC-BY-SA pour la traduction
Toute copie doit contenir ce crédit, lien vers cette page et la section "crédit de traduction".

Based on "Bluefruit LE Shield" from Adafruit Industries, written by Kevin Townsend - Translated to French by shop.mchobby.be CC-BY-SA for the translation
Copies must includes this credit, link to this page and the section "crédit de traduction" (translation credit).

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com