Différences entre versions de « Bluefruit-LE-Shield-Software-resources »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(6 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
{{Bluefruit-LE-Shield-NAV}}
 
{{Bluefruit-LE-Shield-NAV}}
 
{{traduction}}
 
  
 
== Introduction ==
 
== Introduction ==
Ligne 79 : Ligne 77 :
 
{{ADFImage|Bluefruit-LE-Shield-Software-resources-40.png|640px}}
 
{{ADFImage|Bluefruit-LE-Shield-Software-resources-40.png|640px}}
  
=== Bluefruit LE Python Wrapper ===
+
Toujours en guise de "test de concept", Adafruit à produit du code pour utiliser Python avec les APIs Bluetooth natives sur sur OS X et la dernière versions de Bluez pour Linux (disponibles sur certaines distributions Linux).
As a proof of concept, we've played around a bit with getting Python working with the native Bluetooth APIs on OS X and the latest version of Bluez on certain Linux targets.
 
  
There are currently example sketches showing how to retreive BLE UART data as well as some basic details from the Device Information Service (DIS).
+
Il y a un croquis d'exemple qui montre comment recevoir des données BLE UART ainsi que des informations complémentaires en provenance du service Bluetooth DIS ("''Device Information Service''").
  
This isn't an actively support project and was more of an experiment, but if you have a recent Macbook or a Raspberry Pi and know Python, you might want to look at [https://github.com/adafruit/Adafruit_Python_BluefruitLE Adafruit_Python_BluefruitLE] in our github account.
+
Il ne s'agit pas d'un projet supporté activement mais plutôt d'un projet d'expérimentation. Si vous avez un Macbook récent ou un Raspberry Pi et quelques connaissances Python vous pourriez trouver les sources [https://github.com/adafruit/Adafruit_Python_BluefruitLE Adafruit_Python_BluefruitLE] (github d'Adafruit intéressante).
  
== Debug Tools ==
+
== Outil de débogage ==
If your sense of adventure gets the better of you, and your Bluefruit LE module goes off into the weeds, the following tools might be useful to get it back from unknown lands.
+
Si vous êtes un grand aventurier et que, dans durant vos tribulations, votre module Bluefruit LE à totalement perdu le nord alors les outils suivants pourraient se montrer utiles pour revenir en terrain connue.
  
{{ambox-stop|text=hese debug tools are provided purely as a convenience for advanced users for device recovery purposes, and are not recommended unless you're OK with potentially bricking your board. Use them at your own risk.}}
+
{{ambox-stop|text=Ces outils de débogages sont uniquement fournit pour les utilisateurs avancés désirant restaurer l'état de leur périphérique. Il n'est pas recommander de les utiliser sauf si vous savez ce que vous faites car une utilisation incorrecte peut bloquer votre board.
 +
 
 +
 
 +
L'utilisez de ces outils se fait à vos propres risques.}}
  
 
=== AdaLink (Python) ===
 
=== AdaLink (Python) ===
 +
Outil en ligne de commande basé sur le wrapper Python. Il permet de programmer le MCU ARM en utilisant soit un [https://www.adafruit.com/search?q=J-Link Segger J-Link] ou un [https://www.adafruit.com/product/2548 STLink/V2]. Vous pouvez l'utiliser pour reflasher votre module Bluefruit LE en utilisant de dernier firmware disponible sur [https://github.com/adafruit/Adafruit_BluefruitLE_Firmware le dépôt des firmware Bluefruit LE].
  
This command line tool is a python-based wrapper for programming ARM MCUs using either a [https://www.adafruit.com/search?q=J-Link Segger J-Link] or an [https://www.adafruit.com/product/2548 STLink/V2]. You can use it to reflash your Bluefruit LE module using the latest firmware from the [https://github.com/adafruit/Adafruit_BluefruitLE_Firmware Bluefruit LE firmware repo].
+
Les détails concernant l'utilisation de cet outil sont disponible dans le fichier readme.md du dépôt Github [https://github.com/adafruit/Adafruit_Adalink Adafruit_Adalink].
  
Details on how to use the tool are available in the readme.md file on the main [https://github.com/adafruit/Adafruit_Adalink Adafruit_Adalink] repo on Github.
+
Le reflashage complet du module Bluefruit LE avec AdaLink nécessitera 4 fichiers et ressemblera à quelque-chose comme ceci (en utilisant un JLink):
 
 
Completely reprogramming a Bluefruit LE module with AdaLink would require four files, and would look something like this (using a JLink):
 
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
Ligne 107 : Ligne 106 :
 
</syntaxhighlight>
 
</syntaxhighlight>
  
You can also use the AdaLink tool to get some basic information about your module, such as which SoftDevice is currently programmed or the IC revision (16KB SRAM or 32KB SRAM) via the --info command:
+
Vous pouvez également utiliser l'outil AdaLink pour obtenir des informations de diagnostic a propos de votre module. A l'aide de l'option {{fname|--info}}, vous pourrez, par exemple, obtenir des information sur le ''SoftDevice'' programmé dans le module ou la révision du circuit intégré (16KB SRAM ou 32KB SRAM).
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
Ligne 119 : Ligne 118 :
  
 
=== Adafruit nRF51822 Flasher (Python) ===
 
=== Adafruit nRF51822 Flasher (Python) ===
Adafruit's nRF51822 Flasher is an internal Python tool we use in production to flash boards as they go through the test procedures and off the assembly line, or just testing against different firmware releases when debugging.
+
Adafruit nRF51822 Flasher est un outil python utilisé en interne par Adafruit. Il est utilisé en production pour flasher les cartes avec le Firmware Adafruit au moment où elles passent la procédure de test (avant de quitter la ligne d'assemblage).
 +
 
 +
Cet outil est également utilisé pour tester les différentes releases du firmware durant les phases de débogages.
  
It relies on AdaLink or OpenOCD beneath the surface (see above), but you can use this command line tool to flash your nRF51822 with a specific SoftDevice, Bootloader and Bluefruit firmware combination.
+
Il s'appuie sur AdaLink ou OpenOCD (voir ci-dessous) mais vous pouvez utiliser cet outil en ligne de commande pour flashet votre nRF51822 avec un ''SoftDevice'' spécifique, combinaison alternatives de Bootloader et firmware Bluefruit.
  
It currently supports using either a Segger J-Link or STLink/V2 via AdaLink, or [https://github.com/adafruit/Adafruit_nRF51822_Flasher#rpi-gpio-requirements GPIO on a Raspberry Pi] if you don't have access to a traditional ARM SWD debugger. (A pre-built version of OpenOCD for the RPi is included in the repo since building it from scratch takes a long time on the original RPi.)
+
Actuellement, il supporte soit un J-Link de Segger ou STLink/V2 par l'intermédiaire d'AdaLink, ou [https://github.com/adafruit/Adafruit_nRF51822_Flasher#rpi-gpio-requirements GPIO d'un Raspberry Pi] si vous n'avez pas accès à un débugger ARM SWD traditionnel. (une version d'OpenOCD précompilé pour RPi est inclus dans le dépot - recompiler cet outils depuis les sources nécessite un temps considérable.)
  
We don't provide active support for this tool since it's purely an internal project, but made it public just in case it might help an adventurous customer debrick a board on their own.
+
Adafruit n'offre pas de support actif pour cet outil (puis qu'il s'agit d'un outil à usage interne). Il est rendu public pour aider les utilisateurs aventureux qui désirent se débrouiller par eux-même.
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">

Version actuelle datée du 3 août 2017 à 20:57


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.

Introduction

Cette page contient un certain nombre d'outils open source pour la plupart des plateformes supportant Bluetooth Low Energy.

Ces outils permettront de faciliter la communication entre le module Bluefruit LE et autres périphériques Centrales (SmartPhone, Ordinateur, etc).

Bluefruit LE Client Apps and Libraries

Adafruit à préparé une série d'application desktop et mobile ainsi que des bibliothèques pour faciliter, au maximum, les communication entre votre module Bluefruit LE et votre SmartPhone et Laptop. Les codes sources ont étés publiés où lorsque cela à été possible:

Bluefruit LE Connect (Android/Java)

Le support Bluetooth Low Energy a été ajouté depuis Android 4.3 (mais vraiment stable depuis Android 4.4).

Adafruit met donc à disposition Bluefruit LE Connect sur Play Store.

Les codes source complet de Bluefruit LE Connect pour Android est également disponible sur Github. Cela devrait vous aider à démarrer vos propres apps Android. Vous aurez besoin d'une version récente de Android Studio pour pouvoir ouvrir ce projet.

Bluefruit-LE-Shield-Software-resources-00.png
Crédit: AdaFruit Industries www.adafruit.com

Bluefruit LE Connect (iOS/Swift)

Apple a adopté Bluetooth Low Energy très rapidement et Adafruit propose également une version iOS de Bluefruit LE Connect app] (disponible sur l'Apple store).

Le code source swift complet de Bluefruit LE Connect pour iOS est également disponible sur Github. Vous aurez besoin de XCode et un accès au programme développeur d'Apple ("Apple developper program") pour utiliser ce project:

Bluefruit-LE-Shield-Software-resources-10.png
Crédit: AdaFruit Industries www.adafruit.com

Bluefruit LE Connect for OS X (Swift)

Les application bureau OS X sont basées sur le même code que la version 2.x de l'App pour iOS et offre un accès à BLE UART, manipulation des I/O et mise-à-jour OTA du firmware.

C'est un choix judicieux pour faire du logging des données de senseurs afin de les exporter en fichier CSV, JSON ou XML. Vous pourrez ainsi exploiter ces informations dans une autre application. Cette approche vous permet d'utiliser la matériel BLE disponible sur votre ordinateur, il n'est donc pas nécessaire d'ajouter un clé BLE si vous disposez d'un Mac récent.

Le code source complet est également disponible sur Github.

Bluefruit-LE-Shield-Software-resources-20.jpg
Crédit: AdaFruit Industries www.adafruit.com

Ligne de commande Bluefruit LE pour mise-à-jour via OS X (Swift)

Cet outil en ligne de commande expérimental (non supporté, disponible à titre de "test de concept") peut être utilisé pour faire une mise-à-jour du Firmware des périphériques Bluefruit.

Cet utilitaire effectue une mise-à-jour automatique du Firmware (comme celle réalisée par la version graphique du logiciel). Elle vérifie la version du firmware installé sur le périphérique Bluefruit (bia le service "Device Information") et le compare avec les versions du firmware disponibles en ligne. Si nécessaure, les fichiers son téléchargés en tâche de fond.

Installez simplement l'outil précompilé via le fichier DMG et placez le quelque par dans les répertoires systèmes -ou- exécutez le locallement via './bluefruit' (pour voir le message d'aide en anglais):

$ ./bluefruit
bluefruit v0.3
Usage:
	bluefruit <command> [options...]

Commands:
	Scan peripherals:   scan
	Automatic update:   update [--enable-beta] [--uuid <uuid>]
	Custom firmware:    dfu --hex <filename> [--init <filename>] [--uuid <uuid>]
	Show this screen:   --help
	Show version:       --version

Options:
	--uuid <uuid>    If present the peripheral with that uuid is used. If not present a list of peripherals is displayed
	--enable-beta    If not present only stable versions are used

Short syntax:
	-u = --uuid, -b = --enable-beta, -h = --hex, -i = --init, -v = --version, -? = --help

ABLE (Cross Platform/Node+Electron)

ABLE (Adafruit Bluefruit LE Desktop) est une application de bureau cross-platform basé sur la bibliothèque noble de Sandeep Misty et le projet Electron (utilisé par Atom).

Il fonctionne sur OS X, Windows 7+ et une sélectionne de systèmes Linux (Ubuntu testé locallement). Le support Windows 7 est particulièrement intéressant étant qu'il n'a pas de support natif de Bluetooth Low Energy mais la bibliothèque noble permet de dialoguer directement avec des clés Bluetooth 4.0 USB (supportée) pour émuler BLE sur le système (toujours en BETA, prenez plus de précautions lorsque vous travaillez avec lui).

Cette application permet de collecter des données de senseur et permet de réaliser de nombreuses fonctionnalités similaires à celles de l'apps Bluefruit LE Connect mais dans un environnement de bureau.

L'application est toujours en BETA mais le code source complet est disponible sur GitHub ainsi que des binaires pré-compilés (pour faciliter leur utilisation).

Bluefruit-LE-Shield-Software-resources-40.png
Crédit: AdaFruit Industries www.adafruit.com

Toujours en guise de "test de concept", Adafruit à produit du code pour utiliser Python avec les APIs Bluetooth natives sur sur OS X et la dernière versions de Bluez pour Linux (disponibles sur certaines distributions Linux).

Il y a un croquis d'exemple qui montre comment recevoir des données BLE UART ainsi que des informations complémentaires en provenance du service Bluetooth DIS ("Device Information Service").

Il ne s'agit pas d'un projet supporté activement mais plutôt d'un projet d'expérimentation. Si vous avez un Macbook récent ou un Raspberry Pi et quelques connaissances Python vous pourriez trouver les sources Adafruit_Python_BluefruitLE (github d'Adafruit intéressante).

Outil de débogage

Si vous êtes un grand aventurier et que, dans durant vos tribulations, votre module Bluefruit LE à totalement perdu le nord alors les outils suivants pourraient se montrer utiles pour revenir en terrain connue.

AdaLink (Python)

Outil en ligne de commande basé sur le wrapper Python. Il permet de programmer le MCU ARM en utilisant soit un Segger J-Link ou un STLink/V2. Vous pouvez l'utiliser pour reflasher votre module Bluefruit LE en utilisant de dernier firmware disponible sur le dépôt des firmware Bluefruit LE.

Les détails concernant l'utilisation de cet outil sont disponible dans le fichier readme.md du dépôt Github Adafruit_Adalink.

Le reflashage complet du module Bluefruit LE avec AdaLink nécessitera 4 fichiers et ressemblera à quelque-chose comme ceci (en utilisant un JLink):

adalink nrf51822 --programmer jlink --wipe
  --program-hex "Adafruit_BluefruitLE_Firmware/softdevice/s110_nrf51_8.0.0_softdevice.hex" 
  --program-hex "Adafruit_BluefruitLE_Firmware/bootloader/bootloader_0002.hex"
  --program-hex "Adafruit_BluefruitLE_Firmware/0.6.7/blefriend32/blefriend32_s110_xxac_0_6_7_150917_blefriend32.hex"
  --program-hex "Adafruit_BluefruitLE_Firmware/0.6.7/blefriend32/blefriend32_s110_xxac_0_6_7_150917_blefriend32_signature.hex"

Vous pouvez également utiliser l'outil AdaLink pour obtenir des informations de diagnostic a propos de votre module. A l'aide de l'option --info, vous pourrez, par exemple, obtenir des information sur le SoftDevice programmé dans le module ou la révision du circuit intégré (16KB SRAM ou 32KB SRAM).

$ adalink nrf51822 -p jlink --info
Hardware ID : QFACA10 (32KB)
Segger ID   : nRF51822_xxAC
SD Version  : S110 8.0.0
Device Addr : **:**:**:**:**:**
Device ID   : ****************

Adafruit nRF51822 Flasher (Python)

Adafruit nRF51822 Flasher est un outil python utilisé en interne par Adafruit. Il est utilisé en production pour flasher les cartes avec le Firmware Adafruit au moment où elles passent la procédure de test (avant de quitter la ligne d'assemblage).

Cet outil est également utilisé pour tester les différentes releases du firmware durant les phases de débogages.

Il s'appuie sur AdaLink ou OpenOCD (voir ci-dessous) mais vous pouvez utiliser cet outil en ligne de commande pour flashet votre nRF51822 avec un SoftDevice spécifique, combinaison alternatives de Bootloader et firmware Bluefruit.

Actuellement, il supporte soit un J-Link de Segger ou STLink/V2 par l'intermédiaire d'AdaLink, ou GPIO d'un Raspberry Pi si vous n'avez pas accès à un débugger ARM SWD traditionnel. (une version d'OpenOCD précompilé pour RPi est inclus dans le dépot - recompiler cet outils depuis les sources nécessite un temps considérable.)

Adafruit n'offre pas de support actif pour cet outil (puis qu'il s'agit d'un outil à usage interne). Il est rendu public pour aider les utilisateurs aventureux qui désirent se débrouiller par eux-même.

$ python flash.py --jtag=jlink --board=blefriend32 --softdevice=8.0.0 --bootloader=2 --firmware=0.6.7
jtag       	: jlink
softdevice 	: 8.0.0
bootloader 	: 2
board      	: blefriend32
firmware   	: 0.6.7
Writing Softdevice + DFU bootloader + Application to flash memory
adalink -v nrf51822 --programmer jlink --wipe --program-hex "Adafruit_BluefruitLE_Firmware/softdevice/s110_nrf51_8.0.0_softdevice.hex" --program-hex "Adafruit_BluefruitLE_Firmware/bootloader/bootloader_0002.hex" --program-hex "Adafruit_BluefruitLE_Firmware/0.6.7/blefriend32/blefriend32_s110_xxac_0_6_7_150917_blefriend32.hex" --program-hex "Adafruit_BluefruitLE_Firmware/0.6.7/blefriend32/blefriend32_s110_xxac_0_6_7_150917_blefriend32_signature.hex"
...



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