Différences entre versions de « Rasp-Os-Occidentalis-v0.2 »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(7 versions intermédiaires par le même utilisateur non affichées)
Ligne 35 : Ligne 35 :
 
Cliquez ci-dessous pour télécharger le fichier ZIP:
 
Cliquez ci-dessous pour télécharger le fichier ZIP:
  
* [http://adafruit-raspberry-pi.s3.amazonaws.com/Occidentalisv02.zip Adafruit Raspberry Pi Educational Distro - Occidentalis v0.2!] 900 Megs! (August 31, 2012)
+
* [http://adafruit-raspberry-pi.s3.amazonaws.com/Occidentalisv02.zip Adafruit Raspberry Pi Educational Distro - Occidentalis v0.2!] 900 Megas! (31 Aout, 2012)
* MD5 of the img itself (not the zip):  4256c0cdad82fa193c5e902143f1ca0e
+
* MD5 du fichier img (pas du zip):  4256c0cdad82fa193c5e902143f1ca0e
* MD5 of the zip: 43456900352bb8bd8860902167195d83
+
* MD5 du zip: 43456900352bb8bd8860902167195d83
* SHA1 of image: a609f588bca86694989ab7672badbce423aa89fd
+
* SHA1 de l'image: a609f588bca86694989ab7672badbce423aa89fd
* SHA1 of zip: 5f33ec07a183f336f973f82634f04108f690f5f3
+
* SHA1 du zip: 5f33ec07a183f336f973f82634f04108f690f5f3
 
   
 
   
 
et décompressez le.  
 
et décompressez le.  
Ligne 70 : Ligne 70 :
  
 
=== Modules pour Senseurs ===
 
=== Modules pour Senseurs ===
We poked around the Kernel configuration file and added in module support for a few familiar sensors such as: AD525x Digipots, HMC6352 compass, BMP085 barometric/temp sensor, ADS1015 I2C ADCs, etc.
+
AdaFruit a également travaillé sur le fichier de configuration du Kernel (noyaux) et ajouté une série de module pour supporter quelques senseurs vraiment populaires comme: AD525x Digipots, compas HMC6352, senseur de température/pression BMP085, Convertisseurs Analogique/Digital ADS1015 I2C, etc.
  
'''Note importante:''' we didn't write or support these kernel modules, and we're not even sure if they all work, please experiment and read any kernel documentation about these modules as we do not have any tutorials or support for them at this time!
+
'''Note importante:''' AdaFruit n'a pas écrit ses modules lui même et ne fait pas de support pour pour ces modules Kernel. Pour être sincère, ils ne savent pas s'il fonctionnent tous correctement. Prenez le temps de faire des tests et de lire les documentations de ces modules!
  
=== PWM and Servo Kernel Module ===
+
=== Module kernel pour PWM et Servo ===
The most exciting addition is our custom-written kernel module specifically for handling the PWM/Servo capability of the Raspberry Pi's GPIO #18 pin. Unfortunately there is only one PWM pin available on the GPIO header '''and its shared''' with the Audio system. That means that '''you can't use PWM/Servo output and play audio through the 3.5mm jack at the same time'''. However, there might be a few situations where you just need a single servo or PWM and audio isn't a requirement.
+
L'un des ajout les plus excitant de cette distribution est certainement l'ajout d'un module spécialement conçu pour géré un servo ou signal PWM sur la broche GPIO #18 du Raspberry Pi. Il n'y a malheureusement qu'une seule broche PWM disponiblesur le connecteur GPIO '''et elle est partagée''' avec le système audio. Cela signifie que '''vous ne pouvez pas utiliser la sortie en Servo/PWM et jouer de l'audio en même temps''' (même via la prise jack de 3.5mm puisqu'elle est partagée avec GPIO #18).  
  
The module was written by Sean Cross for Adafruit Industries, code is available at our github repository (see below)
+
Il existe cependant des situations où vous avez juste besoin d'un Servo ou PWM sans avoir besoin de sortie Audio.
  
This driver can be controlled through its sysfs entries.  It will create the directory '''/sys/class/rpi-pwm/pwm0/''' and populate it with the following files:
+
Le module à été écrit par Sean Cross d'Adafruit Industries, Le code est disponible sur github (voir plus bas)
* '''active''' - Reports '''1''' if PWM is active. In '''delayed''' mode, write a '''1''' to this file to activate stored settings. Deactivate by writing a 0 to this file.
 
* '''delayed''' - If '''0''', any settings made will become active immediately. If '''1''', then settings are stored and won't take effect until a '''1''' is written into '''active'''.
 
* '''mode''' - The PWM mode. One of '''servo''', '''pwm''', or '''audio'''.
 
* '''servo''' - Moves the servo to this step.  Range (0..servo_max) where '''0''' is a 0.5ms-long pulse and '''servo_max''' is a 2.5ms-long pulse.
 
* '''servo_max''' - The maximum number of servo steps, default of 32
 
* '''duty''' - Duty cycle percentage for PWM mode.  Range (1..99) where 1 is the shortest positive pulse and 99 is the widest positive
 
* '''frequency''' - Desired frequency for PWM mode, write the value to this file
 
* '''real_frequency''' - The actual computed frequency, read the value from this file.
 
* '''mcf''' - A maximum common frequency (''see Advanced below'').
 
  
If you attempt to set a frequency or duty cycle that the Raspberry Pi does not support, you will get an error such as:
+
Ce pilote peut être contrôlé par l'intermédiaire de de ses entrées sysfs (interface par système de fichier). Le module créera un répertoire '''/sys/class/rpi-pwm/pwm0/''' où il ajoutera les fichiers suivants:
 +
* '''active''' - Placez y '''1''' si PWM est actif. En mode '''delayed''' (retardé), écrivez un '''1''' dans ce fichier pour activer les données stockées dans les autres fichiers de paramètrage. Désactivé en écrivant un 0 dans ce fichier.
 +
* '''delayed''' - ''Delayed'' signifie ''retardé''. Si '''0''', tous les paramètres deviennent actif immédiatements. Si '''1''' alors les paramètres sont stockés et ne deviennent actifs que lorsque qu'un '''1''' est écrit dans '''active'''.
 +
* '''mode''' - Mode PWM. Peut recevoir l'une des valeurs suivantes: '''servo''', '''pwm''' ou '''audio'''.
 +
* '''servo''' - Déplace le servo jusqu'à une position (pas!) données.  La plage de valeur s'étend de 0 à servo_max. '''0''' représente un impulsion de 0.5ms de "long" et '''servo_max''' une impulsion de 2.5ms de "long".
 +
* '''servo_max''' - Le nombre maximum de pas du servo, 32 par défaut.
 +
* '''duty''' - Pourcentage de cycle utile (Duty cycle percentage) en mode PWM.  Place de valeur (1..99) où 1 représente l'impulsion positive (état haut) la plus courte et 99 l'impulsion positive la plus large.
 +
* '''frequency''' - Fréquence désirée pour le mode PWM, écrivez la valeur dans ce fichier.
 +
* '''real_frequency''' - La fréquence actuellement calculée, lisez la valeur depuis ce fichier.
 +
* '''mcf''' - La fréquence commune maximale (maximum common frequency). ''Voir section Avancé ci-dessous''.
  
'''write error: Numerical result out of range'''
+
Si vous essayez de fixer une fréquence ou un cycle utile (duty cycle) que Raspberry Pi ne supporte pas, alors vous recevrez une erreur comme celle ci-dessous:
  
If this happens, the PWM will stop until you set values that are in range.
+
'''write error: Numerical result out of range'''<br />
 +
''Erreur d'écriture: la valeur numérique est en dehors de la plage supportée''
  
The '''mode''' file can be used to switch between '''pwm''', '''servo''', and '''audio''' mode:
+
Si cela arrive, le signal PWM sera arrêté jusqu'a ce que vous placiez une valeur correcte.
* '''pwm''' - Drives a pulse with a '''frequency''' specified by the frequency file and a duty cycle of '''duty'''.
 
* '''servo''' - A special PWM mode that will drive a servo throughout its range of rotation, starting with 0.5ms wide pulse and ending with 2.5ms, some servos only respond to 1.0-2.0ms and some have a wider range, you will need to experiment to find the full range of your servo. Values are taken from the file '''servo''', and range from 0 to '''servo_max''' (default 32 which is the max resolution of 62.5us.) The PWM system does not seem to be able to handle a resolution better than 62.5us which is approximately 20 different servo positions or speeds. Si vous avez besoin d'une meilleure résolution, vous pouvez consulter notre [[Rasp-Hack-16-channel-servo-driver|tutoriel sur le controleur PWM/Servo 16 canaux]] qui dispose d'une résolution de 4us ([http://mchobby.be/PrestaShop/product.php?id_product=89 produit disponible à l'achat ici chez MCHobby]
 
* '''audio''' - Echos the unfiltered contents of the right audio channel out the PWM port. Also enables '''delayed''' mode so that accidentally modifying PWM parameters won't cause the audio system to lock.
 
  
Using the PWM and playing audio at the same time is dicey at best. If you want to mirror audio out the PWM port, write '''audio''' into the '''mode''' file and leave it. When audio playback is done, you can switch back into '''pwm''' or '''servo''' mode. Then, either write '''0''' into the '''delayed''' file to get back into immediate mode, or set your parameters and write a '''1''' into the '''activate''' file.
+
Le fichier '''mode''' peut être utiliser pour changer de more entre '''pwm''', '''servo''' et '''audio''':
 +
* '''pwm''' - Pilote une impulsion avec la fréquence '''frequency''' spécifiée dans le fichier ''frequency'' et un cycle utile de '''duty'''.
 +
* '''servo''' - Un mode PWM spécial qui permet de piloter un servo sur l'étendue de sa rotation, en commencant avec une impulsion de 0.5ms de long et terminant avec une impulsion de 2.5ms de long. Certains servo ne répondent que pour une plage de 1.0-2.0ms et d'autres dispose d'une plage plus étendue, vous aurez donc besoin de faire des essais pour trouver la plage correcte (totale) de votre servo. Les valeurs sont chargées depuis le fichier '''servo''', et la plage va de 0 à la valeur contenue dans le fichier '''servo_max''' (par défaut 32 qui es la résolution maximale de 62.5µs). Le système PWM ne semble pas capable de gérer une résolution meilleure que 62.5µs, ce qui représente environ 20 positions (ou vitesses) différentes. Si vous avez besoin d'une meilleure résolution, vous pouvez consulter notre [[Rasp-Hack-16-channel-servo-driver|tutoriel sur le controleur PWM/Servo 16 canaux]] qui dispose d'une résolution de 4us ([http://mchobby.be/PrestaShop/product.php?id_product=89 produit disponible à l'achat ici chez MCHobby]
 +
* '''audio''' - Communique le contenu de la sortie Audio droite (sans filtrage) directement sur la broche PWM. Active également le mode '''delayed''' de sorte qu'une modification de paramètres PWM ne bloquera pas (n'arrêtera pas) le système audio :-) .
  
=== Advanced settings ===
+
{{ambox | text = Jouer de l'audio en même temps de PWM est des plus risqué. Si vous voulez quand même utiliser la sortie PWM en "PWM et Audio" (''to mirror audio out the PWM port''):<br/> écrivez '''audio''' dans le fichier '''mode''' et quittez le. Quand le rendu audio est terminer, vous pouvez revenir en mode '''pwm''' ou '''servo'''.  Ensuite, écrivez '''0''' dans le fichier '''delayed''' pour revenir en mode immédiat (réactiver PWM) OU écrivez vos paramètres et ecrivez '''1''' dans le fichier '''activate'''. }}
  
The default '''mcf''' is 16000 Hz. This is the frequency at which the PCM audio clock will run. The actual PWM output is derived based on this value, so it should be higher than the desired output frequency. For small duty cycles or for higher frequencies (e.g. above about 8 kHz), you may need to increase this value to get a more accurate '''real_frequency'''. Due to rounding, it may not be possible to get your desired output rate. Compare the contents of the '''real_frequency''' file with that of the '''frequency''' file to determine accuracy.
+
=== Paramétrage avancé ===
  
== Kernel Source ==
+
La valeur par défaut de '''mcf''' est de 16000 Hz. C'est la fréquence à laquelle l'horloge PCM audio fonctionnera. La sortie PWM du module dérive de cette valeur, qui pourrait donc être supérieure à la fréquence de sortie désirée. Pour de petit cycles utilse ou de plus hautes fréquences (ex en dessus de 8 kHz), vous pourriez avoir besoin d’accroitre la valeur de '''mcf'' pour obtenir une '''real_frequency''' plus précise. Les opertations d'arrondis pourrait rendre difficile (impossible) l'obtention du débit de sortie souhaité.
  
Want to compile your own modules? Or change the configuration of the kernel? [https://github.com/adafruit/adafruit-raspberrypi-linux Advanced users can find our kernel repo here]
+
Pour déterminer la précision, il faut comparez le contenu du fichier '''real_frequency''' avec la valeur que vous avez placé dans le fichier '''frequency'''.
  
[http://adafruit-raspberry-pi.s3.amazonaws.com/OccidentalisV02Kernel.tgz We also have a Kernel+Modules tgz file], after you've copied this over to your pi, run the following commands
+
== Source du module Kernel ==
 +
 
 +
Désirez-vous compiler votre propre module? Ou modifier la configuration du kernel?
 +
 
 +
[https://github.com/adafruit/adafruit-raspberrypi-linux Les utilisateur avancés trouverons le dépôt Kernel d'AdaFruit ici]
 +
 
 +
AdaFruit dispose également d'un fichier tgz avec Kernel+Modules [http://learn.adafruit.com/adafruit-raspberry-pi-educational-linux-distro/occidentalis-v0-dot-2 accessible en bas de cette page], une fois que vous l'aurez copiez sur votre Pi, exécutez les commandes suivantes:
  
 
* tar -zxvf mykernel.tgz
 
* tar -zxvf mykernel.tgz
Ligne 118 : Ligne 125 :
 
* rm -rf tmp
 
* rm -rf tmp
  
AdaFruit ne dispose pas de tutoriel expliquant comment télécharger, compiler or installer un kernel linux.
+
Note: AdaFruit ne dispose pas de tutoriel expliquant comment télécharger, compiler or installer un kernel linux.
  
 
{{Rasp-Os-Occidentalis-TRAILER}}
 
{{Rasp-Os-Occidentalis-TRAILER}}

Version actuelle datée du 21 juin 2013 à 20:21

Versions

C'est la seconde distribution d'Occidentalis, Occidentalis v0.2. Rubus. Elle est dérivé de la distribution officiel Raspbian Wheezy du 16 Aout.

AdaFruit à apporté quelques modification clés pour la rendre plus utile aux hackers en électronique!

Mise-à-jours de la Version 0.2

  • Image tronquée - seulement 2.6G et donc compatible avec toutes les cartes 4G
  • Avis raspi-config retenu lors du boot
  • Retrait de l'entrée wlan0 persistante
  • Pense bête "modification de mot de passe" au login
  • Ajout des modules kernelt RTC lm-sensors
  • Inclus les modules kernel pour: DS1307 (RTC), AD626 I2C digipots, HMC6352, BMP085, ADS1015
  • Nouveau! Module Kernel PWM/Servo (Adafruit) pour un contrôle facile en PWM/Servo sur GPIO#18

Mise-à-jours de la Version 0.1

(toujours inclus dans la version 0.2)

Merci de garder en mémoire qu'AdaFruit ne sont pas des gestionnaire de distribution Linux à temps plein- AdaFruit essayera de corriger les bugs trouvé mais cette distribution n'est pas destinée au débutant Linux!

Télécharger

Cliquez ci-dessous pour télécharger le fichier ZIP:

  • Adafruit Raspberry Pi Educational Distro - Occidentalis v0.2! 900 Megas! (31 Aout, 2012)
  • MD5 du fichier img (pas du zip): 4256c0cdad82fa193c5e902143f1ca0e
  • MD5 du zip: 43456900352bb8bd8860902167195d83
  • SHA1 de l'image: a609f588bca86694989ab7672badbce423aa89fd
  • SHA1 du zip: 5f33ec07a183f336f973f82634f04108f690f5f3

et décompressez le.

Notez que l'image fait 2.6 GB! Vous aurez besoin d'une carte de 4GB ou plus. Les cartes SD de 4GB que nous proposons fonctionne très bien.

Après avoir booté, n'oubliez pas d'exécuter 'sudo raspi-config pour étendre le système de fichier (auto-expand the file system) afin qu'il occupe tout l'espace disponible sur la carte.

Caractéristiques

I2C, SPI, ...

Visitez la page de la v0.1 pour les détails relatifs aux caractéristiques des modules I2C, SPI, WiFi, Avahi et 1-Wire.

Image plus petite

Pour commencer, AdaFruit n'a pas étendu l'image au dela de 2.6Go, l'image elle même est donc plus petite - seulement 2.6G au lieu de 4G. Cela permettra de "graver" l'image plus vite sur une carte SD, et aussi permettre de la placer sur une grande variété de carte SD 4Go. Il est totalement possible de placer cette image sur une carte de 2G, sinon cela aurait été fait.

Rappels configurations & mot de passe

Ensuite, AdaFruit à fait le necessaire pour ne pas activer raspi-config au démarrage, comme pour les distribution Wheezy de stock. Cela aidera aussi les personnes qui désirent se souvenir de "comment initialiser le timezone, taille du disque, le mot de passe, clavier, etc". Cela permet surtout de graver une carte, de l'insérer dans Pi et de poursuivre la configuration depuis une connexion réseau sans avoir besoin de brancher un moniteur et un clavier sur votre Pi.

AdaFruit à également ajouter un petit "rappel" de modification de mot de passe dans ~/.profile - il vérifie si le mot de passe est toujouts identique au mot de passe par défaut.

Support Horloge Matériel

Ajout d'un support RTC ("real time clock" = horloge temps réel) matériel.

L'une des plus grande nouveauté de cette distribution est l'ajout de nombreux modules Kernel pour faire du hacking électronique.

AdaFruit à ajouté le support pour RTC, ce qui permet d'avoir un module RTC externe et d'utiliser hwclock - nous disposons d'un tutoriel à ce sujet ici.

Modules pour Senseurs

AdaFruit a également travaillé sur le fichier de configuration du Kernel (noyaux) et ajouté une série de module pour supporter quelques senseurs vraiment populaires comme: AD525x Digipots, compas HMC6352, senseur de température/pression BMP085, Convertisseurs Analogique/Digital ADS1015 I2C, etc.

Note importante: AdaFruit n'a pas écrit ses modules lui même et ne fait pas de support pour pour ces modules Kernel. Pour être sincère, ils ne savent pas s'il fonctionnent tous correctement. Prenez le temps de faire des tests et de lire les documentations de ces modules!

Module kernel pour PWM et Servo

L'un des ajout les plus excitant de cette distribution est certainement l'ajout d'un module spécialement conçu pour géré un servo ou signal PWM sur la broche GPIO #18 du Raspberry Pi. Il n'y a malheureusement qu'une seule broche PWM disponiblesur le connecteur GPIO et elle est partagée avec le système audio. Cela signifie que vous ne pouvez pas utiliser la sortie en Servo/PWM et jouer de l'audio en même temps (même via la prise jack de 3.5mm puisqu'elle est partagée avec GPIO #18).

Il existe cependant des situations où vous avez juste besoin d'un Servo ou PWM sans avoir besoin de sortie Audio.

Le module à été écrit par Sean Cross d'Adafruit Industries, Le code est disponible sur github (voir plus bas)

Ce pilote peut être contrôlé par l'intermédiaire de de ses entrées sysfs (interface par système de fichier). Le module créera un répertoire /sys/class/rpi-pwm/pwm0/ où il ajoutera les fichiers suivants:

  • active - Placez y 1 si PWM est actif. En mode delayed (retardé), écrivez un 1 dans ce fichier pour activer les données stockées dans les autres fichiers de paramètrage. Désactivé en écrivant un 0 dans ce fichier.
  • delayed - Delayed signifie retardé. Si 0, tous les paramètres deviennent actif immédiatements. Si 1 alors les paramètres sont stockés et ne deviennent actifs que lorsque qu'un 1 est écrit dans active.
  • mode - Mode PWM. Peut recevoir l'une des valeurs suivantes: servo, pwm ou audio.
  • servo - Déplace le servo jusqu'à une position (pas!) données. La plage de valeur s'étend de 0 à servo_max. 0 représente un impulsion de 0.5ms de "long" et servo_max une impulsion de 2.5ms de "long".
  • servo_max - Le nombre maximum de pas du servo, 32 par défaut.
  • duty - Pourcentage de cycle utile (Duty cycle percentage) en mode PWM. Place de valeur (1..99) où 1 représente l'impulsion positive (état haut) la plus courte et 99 l'impulsion positive la plus large.
  • frequency - Fréquence désirée pour le mode PWM, écrivez la valeur dans ce fichier.
  • real_frequency - La fréquence actuellement calculée, lisez la valeur depuis ce fichier.
  • mcf - La fréquence commune maximale (maximum common frequency). Voir section Avancé ci-dessous.

Si vous essayez de fixer une fréquence ou un cycle utile (duty cycle) que Raspberry Pi ne supporte pas, alors vous recevrez une erreur comme celle ci-dessous:

write error: Numerical result out of range
Erreur d'écriture: la valeur numérique est en dehors de la plage supportée

Si cela arrive, le signal PWM sera arrêté jusqu'a ce que vous placiez une valeur correcte.

Le fichier mode peut être utiliser pour changer de more entre pwm, servo et audio:

  • pwm - Pilote une impulsion avec la fréquence frequency spécifiée dans le fichier frequency et un cycle utile de duty.
  • servo - Un mode PWM spécial qui permet de piloter un servo sur l'étendue de sa rotation, en commencant avec une impulsion de 0.5ms de long et terminant avec une impulsion de 2.5ms de long. Certains servo ne répondent que pour une plage de 1.0-2.0ms et d'autres dispose d'une plage plus étendue, vous aurez donc besoin de faire des essais pour trouver la plage correcte (totale) de votre servo. Les valeurs sont chargées depuis le fichier servo, et la plage va de 0 à la valeur contenue dans le fichier servo_max (par défaut 32 qui es la résolution maximale de 62.5µs). Le système PWM ne semble pas capable de gérer une résolution meilleure que 62.5µs, ce qui représente environ 20 positions (ou vitesses) différentes. Si vous avez besoin d'une meilleure résolution, vous pouvez consulter notre tutoriel sur le controleur PWM/Servo 16 canaux qui dispose d'une résolution de 4us (produit disponible à l'achat ici chez MCHobby
  • audio - Communique le contenu de la sortie Audio droite (sans filtrage) directement sur la broche PWM. Active également le mode delayed de sorte qu'une modification de paramètres PWM ne bloquera pas (n'arrêtera pas) le système audio :-) .

Paramétrage avancé

La valeur par défaut de mcf' est de 16000 Hz. C'est la fréquence à laquelle l'horloge PCM audio fonctionnera. La sortie PWM du module dérive de cette valeur, qui pourrait donc être supérieure à la fréquence de sortie désirée. Pour de petit cycles utilse ou de plus hautes fréquences (ex en dessus de 8 kHz), vous pourriez avoir besoin d’accroitre la valeur de mcf pour obtenir une real_frequency plus précise. Les opertations d'arrondis pourrait rendre difficile (impossible) l'obtention du débit de sortie souhaité.

Pour déterminer la précision, il faut comparez le contenu du fichier real_frequency avec la valeur que vous avez placé dans le fichier frequency.

Source du module Kernel

Désirez-vous compiler votre propre module? Ou modifier la configuration du kernel?

Les utilisateur avancés trouverons le dépôt Kernel d'AdaFruit ici

AdaFruit dispose également d'un fichier tgz avec Kernel+Modules accessible en bas de cette page, une fois que vous l'aurez copiez sur votre Pi, exécutez les commandes suivantes:

  • tar -zxvf mykernel.tgz
  • sudo mv tmp/kernel.img /boot/
  • sudo cp -R tmp/modules/lib/* /lib/
  • rm -rf tmp

Note: AdaFruit ne dispose pas de tutoriel expliquant comment télécharger, compiler or installer un kernel linux.


Source: [1]

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

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.