• [^] # Re: ForumLinux.embarqué — Choix d'une carte pour linux embarqué

    Posté par . En réponse au message Choix d'une carte pour linux embarqué. Évalué à 3.

    Désolé, j'ai pas pu répondre vendredi, et j'ai passé mon début d'après-midi hier à changer le PC qui me sert de firewall ( j'en ai profité pour y mettre une alim moins bruyante), et j'ai été pas mal occupé hier après-midi.

    Bon, revenons à nos moutons : moi aussi je cherchais une carte pour "jouer" :). Une carte polyvalente me permettant de faire de la robotique, commander un train électrique, de la domotique, et plein de choses semblables.

    Le rasberry Pi me paraissait pas mal sauf qu'il manquait de GPIO à mon goût et que, pour s'en faire envoyer un, ça prend d temps. Du coup j'ai cherché autre chose et me suis tourné vers une carte Olimex.

    Mes 2 critères principaux :
    - besoin d'une interface réseau filaire
    - beaucoup de GPIO.

    La carte que j'ai répond plutôt bien à ces besoin, à quelques inconvénients près. Globalement j'en suis assez satisfait, il y a juste quelques inconvénients, qui ne sont pas bloquants pour moi mais qu'il faut connaitre je pense avant d'acheter.

    Premier inconvénient : la quantité de RAM un peu limitée par rapport notamment à un Rasberry Pi. J'arive à installer une Debian dessus, mais une fois la distrib installée, la RAM dispo pour l'applicatif peut être un peu juste: il faudra probablement à terme que je fasse une distrib "sur mesure" pour mon ou mes applis. Pas trop gênant pour moi vu que j'ai les compétences, mais ça peut être un problème pour certains.

    Le second inconvénient pour moi vient du fait que l'interface réseau filaire est en pratique une interface USB (comme sur le Rasberry Pi), ce qui peut être gênant.

    Le troisième inconvénient : extrait de la doc du SoC fournie par Freescale (PAGE 1375):

    35.4.2 Constructing Image to Be Loaded by Boot Loader
    The image is stored in an encrypted form that includes an authenticating hash. Freescale supplies a program called elftosb to convert a fully resolved executable binary image into a boot image usable by the boot loader. A key set must be input to the elftosb program to properly encrypt and authenticate the image. A default key set is supplied with elftosb. The process of creating a boot loader image is shown in Figure 35-2 ( … ).

    Ceci complique la génération d'un système personnalisé, et je t'avoue ne pas avoir encore tiré ça au clair. Je me contente pour l'instant d'un noyau et d'un Debian plus ou moins "générique"). Et si tu ne veux rien faire (pratique quand tu reçois la carte pour la tester), il y a des images toutes faites de cartes SD à base de Debian ou Arch.

    Quatrième inconvénient : la carte ne dispose que de 4 canaux PWM. C'est déjà pas mal pour ce type de carte (je ne sais pas de combien dispose une Rasberry Pi par exemple), mais ça risque d'être insuffisant, et je risque de devoir passer par un ou plusieurs autres microcontroleurs externes (style AVR) pour m'en sortir (ou acheter une seconde carte et les coupler, ce qui pourrait être amusant d'ailleurs).

    Cinquième inconvénient : la nécessité de passe par une interface jtag dédiée qui n'est pas donnée (il est possible de passer par une connectique jtag standard, mais les points de connection sont situés en dessous de l'emplacement de la SD card et il me semble que si on l'utilise, on invalide la carte SD : c'est expliqué dans le manuel utilisateur; Si tu as l'intention de l'utiliser, va jeter un oeil)

    Deux autres point qui peut être un inconvénient pour certains :
    1. l'alim. Ce n'est pas du micro USB. Vérifie que tu as ce qu'il faut avant d'acheter, sinon un adaptateur universel de ce genre et qu'on trouve un peu partout devrait faie l'affaire (ils vendent des alims sur le site d'Olimex mais il y a peut-être moyen de trouver moins cher)
    2. pas de sortie HD our la vidéo mais juste un connecteur RCA. De ce fait, je te conseille d'avoir avec la carte une interface USB/Serie (vendue chez Olimex ou n'importe quel type d'interface permettant de se connecter sur l'interfacee console de la carte (qui est en 3,3 V : tu peux te faire une interface à base de transistor ou de MAX3232, mais pour ma part j'ai acheté l'interface USB/Sere vendue par Olimex : plus rapide). C'est pratique pour voir si ta carte démare bien. En effet il semble que toutes les images dispo sur le web n'utilisent pas cette sortie en guise de console. Je n'ai pas approfondi ce point parce que personnellement je m'en moque. Mais ça pourrait te gêner.
    Sinon pour le reste :

    • Documentation : le manuel utilisateur de carte - ici olinuxino maxi - est disponible, ainsi que les spécifications . Tout le monde peu fabriquer la carte pour peu qu'il dispose du matériel et des compétences nécessaires. La doc du SOC est disp chez Freescale et contient pas mal d'infos intéressantes. Avant de choisir la carte, va jeter au moins un oeil sur la documentation utilisateur de la carte, je pense que tu obtiendras pas mal d'infos par rapport à ton besoin.

    • Communauté et infos sur le net : points d'entrée intéressants :

      1. le forum : il semble assez actif (mais je ne le suis pas trop) : je n'ai pas encore assez avancé dans la découverte de la carte et sur les points spécifiques de celle-ci. Mais va jeter un oeil pour te faire une idée.
      2. un blog tenu par Olimex sur lequel on retrouve des infos techniques sur l'utilisation des diverses cartes, ainsi que les évolutions des produits Olimex (nouveaux produits, état d'avancement des prototypes, etc …) Va voir par toi-même, c'est intéressant.
      3. des infos éparpillées un peu partout sur le web : en cherchant sur Google des infos sur Olinuxino on trouve de plus en plus de choses intéressantes (mais beaucoup d'anglais par contre). Pour l'instant toutes les questions que je me suis posées ont trouvé une réponse. Mais je ne suis pas encore assez avancé dans mon projet pour avoir suffisamment de recul (j'en suis à la réalisation hardware des diverses parties de commandes ou capteurs: cartes drivers de moteurs à base de L293, ou L298, ou pont en H à base de transistors : pas encore terminé mes prototypes, capteurs à contacts, ou à détection infrarouge, pas encore abordé cette partie, actionneurs divers, … , la partie commande via Linux viendra après). Même si cette carte ne convient pas pour ce projet précis, j'ai d'autres idées pour l'utiliser.

    J'envisage éventuellement, si celà n'existe pas, de monter un espace (wiki, blog, forum ou autre) en français, mais ça demande du temps et je ne l'ai pas pour le moment (mission pourrie en ce moment, loin de chez moi, qui ne me laisse pas e temps de faire ce que je veux après).

    • interfaces

    Olimex fournit pas mal d'interfaces à ses cartes que l'on peut utiliser via un connecteur appelé UEXT Connector et on trouve pas mal de modules tout prêts.

    En résumé à mon sens il s'agit d'une carte intéressante pour son prix. A noter que cette carte existe en trois ou quatre version (micro, maxi, mini, mini-wifi) : a toi de la choisir en fonction du besoin; Je te conseille également d'acheter une alim si tu n'en disposes pas, ainsi qu'une interface serie te permettant de te connecter à la carte en console, au moins pour avoir les infos de démarrage de la carte. On trouve pas mal d'infos sur le net (blog, forum espaces perso desutilisateurs de cette carte, …). Ces infos sont utilisables (ca marche si on ne se pose pas de questions) mais celles-ci sont parfois incomplètes à mon gout (modes opéatoires sans forcément avoir les infos sur le pourquoi de telle ou telle action).

    J'espère que ce message t'aidera dans ton choix. J'essaierai de te répondre si tu as besoin d'autres infos (en fonction de mon temps dispo, ce qui est une ressource rare chez moi en ce moment).