-->
  • Accueil
  • Mes projets
  • Mon CV
  • A propos
  • Contact

Archive pour le mot-clef ‘linux’

« Articles plus anciens
Concours de création de système Linux embarqué sur carte Mini2440
Jeudi 4 août 2011

Open Wide Ingénierie, par l’intermédiaire de son blog Linux Embedded dédié à l’embarqué, vient de lancer un truc vraiment sympa ! Un concours de création de système Linux embarqué. Les participants doivent réussir à booter sous Linux, se connecter au net, afficher une interface graphique, et tout ça le plus vite possible ! La plateforme choisie pour le concours est la carte Mini2440 de FriendlyARM.

A la clef, des cartes Mini2440, des tablettes Archos et du fun !

Ouvert aux étudiants et aux individuels, le concours se divise en deux parties.

  • Dans un premier temps, le but est de faire fonctionner le système en le simulant sous qemu. Ce qui permet de gagner une carte Mini2440 et de passer à l’étape suivante. Les participants ont jusqu’à fin octobre pour gagner une carte.
  • La finale se passe ensuite sur les cartes Mini2440. Où le but est cette fois d’optimiser au maximum le boot du système sur la plateforme choisie. Cette seconde phase se terminera fin décembre.

Les contraintes techniques se résument en quelques lignes :

Le système devra fonctionner avec un noyau Linux sur une carte Mini2440, obtenir une adresse IP par DHCP et l’afficher en grand dans une application graphique. Un bouton tactile devra également permettre de déclencher l’affichage du nom du ou des auteurs, ainsi que le nom d’équipe s’il y a lieu.

Le temps sera compté à partir du démarrage électrique (à froid) jusqu’à l’affichage graphique.

Il est possible d’optimiser le bootloader, le noyau et l’espace utilisateur (également appelé applicatif ou rootfs).

Donc, seule contrainte, utiliser Linux. En dehors de ça, libre aux participants de bidouiller/hacker à mort leur système pour arriver à leurs fins :) Le but est de se faire plaisir !

Juste besoin d’envoyer un email pour s’inscrire. Un Wiki a été mis en place, ainsi qu’un Forum et un channel IRC.

Je n’ai pas pu résister au défi, je me suis inscrit, en espérant que je trouverai le temps nécessaire pour faire tout ça !

Sur ce ! Au boulot ! :)

Share

Mots-clefs : boot, concours, linux, linux embarqué, Mini2440, Open Wide Ingénierie, optimisation
Publié dans linux, Systèmes Embarqués | 4 commentaires »

Mass Storage USB sur tous les OS grâce au File-backed Storage Gadget (g_file_storage)
Jeudi 2 juin 2011

Je me suis attelé récemment à la mise en place d’un mass storage (FAT32) sur un device Linux grâce au gadget file storage (g_file_storage), compatible avec Windows, Mac et Linux ! Hé bien, c’est un peu de la tambouille magique pour rendre ça compatible entre OS. Hélas, la documentation que l’on retrouve sur Internet ne précise pas forcément les étapes pour faire fonctionner le mass storage sous tous les OS. En fouinant bien j’ai fini par trouver les étapes à suivre pour mettre ça en place ! C’est plus une question du bon argument à spécifier à la création de la partition, mais au final on gagne du temps quand on le sait dès le départ ! Parce qu’aller fouiner dans le code source du driver pour voir comment ça marche c’est cool, mais un poil prise de tête. (encore que mine de rien c’est plutôt bien documenté)

Voici les étapes :

Préparation du kernel

  • Prendre un kernel bien frais !
  • Activer le “File-backed Storage Gadget” (USB_FILE_STORAGE) dans la catégorie USB support. Dans mon cas j’ai choisi de le mettre en module externe.
  • recompiler la bête
  • Et en attendant, préparons la partition de mass_storage.

Préparation de la partition

Jusque là, je n’ai réussi qu’à générer des partitions puissances de 2 au niveau de la taille. Avec des unités d’allocation de 4 Ko (par défaut), il suffit de changer le nombre de têtes (1, 2, 4, …) pour avoir respectivement des mass storage de (4, 8, 16Mo, …) Je n’ai pas encore complètement compris entièrement le fonctionnement pour tenter de sortir des clous avec des partitions exotiques (genre 7Mo si c’est envisageable). Si quelqu’un a l’information, je suis preneur ;) Parce que je me perds un peu avec cette ratatouille de Linux / Windows qui n’ont pas les mêmes unités…

Bref, dans cet exemple je me base sur un mass storage de 4 Mo. Mais pour augmenter la taille de celle-ci, il suffit de changer la valeur du count dans la commande dd qui va suivre, puis le nombre de têtes dans le fdisk. Le max était 255 têtes, soit les 1020 Mo max du FAT32 pour des unités d’allocation de 4 Ko

Créons donc notre périphérique à partir du néant !

dd bs=1M count=4 if=/dev/zero of=mass_storage.img

Puis lançons fdisk.

$ fdisk mass_storage.img
Le périphérique ne contient pas une table de partitions DOS ou Sun, SGI, OSF valide
Création d'une nouvelle étiquette DOS avec id de disque 0x3a4a9ca1.
Les modifications restent en mémoire jusqu'à ce que vous les écriviez.
Après quoi, bien sûr, le contenu précédent sera irrécupérable.

AVERTISSEMENT: fanion 0x0000 non valide dans la table de partitions 4, sera corrigé par w(écriture)
Vous devez initialiser cylindres.
Vous pouvez faire cela depuis le menu des fonctions avancées.

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').

Commande (m pour l'aide): x

Commande pour experts (m pour de l'aide): s
Nombre de secteurs (1-63, par défaut 63): 8
AVERTISSEMENT: initialisation du décalage de secteur pour compatibilité DOS

Commande pour experts (m pour de l'aide): h
Nombre de têtes (1-256, par défaut 255): 1

Commande pour experts (m pour de l'aide): c
Nombre de cylindres (1-1048576): 1024

Commande pour experts (m pour de l'aide): r

Commande (m pour l'aide): n
Commande d'action
e   étendue
p   partition primaire (1-4)
p
Numéro de partition (1-4): 1
Premier cylindre (2-1024, par défaut 2):
Utilisation de la valeur par défaut 2
Dernier cylindre, +cylindres or +taille{K,M,G} (2-1024, par défaut 1024):
Utilisation de la valeur par défaut 1024

Commande (m pour l'aide): t
Partition sélectionnée 1
Code Hexa (taper L pour lister les codes): b
Type système de partition modifié de 1 à b (W95 FAT32)

Commande (m pour l'aide): p

Disque mass_storage.img: 0 Mo, 0 octets
1 têtes, 8 secteurs/piste, 1024 cylindres
Unités = cylindres de 8 * 512 = 4096 octets
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identifiant de disque : 0x3a4a9ca1

Périphérique Amorce  Début        Fin      Blocs     Id  Système
mass_storage.img1               2        1024        4092    b  W95 FAT32

Commande (m pour l'aide): w
La table de partitions a été altérée!

AVERTISSEMENT: si vous avez créé ou modifié une partition DOS 6.x,
svp consulter les pages du manuel de fdisk pour des informations
complémentaires.
Synchronisation des disques.

Et si l’on souhaite consulter les informations de notre partition :

$ fdisk -l mass_storage.img
Vous devez initialiser cylindres.
Vous pouvez faire cela depuis le menu des fonctions avancées.

Disque mass_storage.img: 0 Mo, 0 octets
1 têtes, 8 secteurs/piste, 0 cylindres
Unités = cylindres de 8 * 512 = 4096 octets
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identifiant de disque : 0x3a4a9ca1

Périphérique Amorce  Début        Fin      Blocs     Id  Système
mass_storage.img1               2        1024        4092    b  W95 FAT32

Pour accéder au device, on doit alors préciser à quel offset se placer pour travailler avec. Pour ça nous devons calculer la taille du premier cylindre. Soit :
offset = cylindres de 8 * 512 = 4096 octets (indiqué par la commande p du fdisk ou fdisk -l)

losetup -o 4096 /dev/loop0 mass_storage.img

Et on créé un magnifique système de fichiers FAT32 appelé “storage” :

mkdosfs /dev/loop0 -n storage

Si vous voulez vous pouvez monter votre mass storage et bidouiller dedans :

mount -t vfat /dev/loop0
...
umount /dev/loop0

puis on démonte le périphérique virtuel.

losetup -d /dev/loop0

Chargement du mass_storage

Une fois que votre kernel est en place sur votre système, il n’y a plus qu’à placer le fichier mass_storage.img sur le système embarqué et de charger la partition :

insmod g_file_storage.ko file=/tmp/mass_storage.img stall=0

stall=0 est l’option magique qui fait que le mass_storage fonctionne sous Windows sans mouliner à l’infini en attendant une détection du filesystem. (boolean to permit the driver to halt bulk endpoints)
On peut également jouer avec l’option ro pour mettre le mass storage en read only ou non. De façon générale on peut retrouver de la doc sur le driver dans le kernel : drivers/usb/gadget/file_storage.c

Et voilà, en branchant votre device sur n’importe quel OS, il sera reconnu comme disque de mass storage appelé “storage” :) Héhé !

Et pour la route, voici les partitions FAT32 finales (vides) :

  • version 4Mo
  • version 8Mo
Share

Mots-clefs : g_file_storage, linux, Mac, Mass storage, module, storage gadget, USB, Windows
Publié dans Général, linux, Systèmes Embarqués | Aucun commentaire »

Vidéos des conférences récentes sur l’embarqué
Vendredi 27 mai 2011

Du nouveau pour nos amis d’outre-quévin qui aiment la batavia les vidéos de Free Electrons. Depuis la semaine dernière, nous avons eu le droit à un sacré paquet de vidéos des événements récents relatifs à l’embarqué.

  • l’ELC 2011 à San Francisco
  • l’Android Builders Summit 2011 à San Francisco toujours
  • le FOSDEM 2011 à Bruxelles

Tout plein de vidéos super intéressantes.

Encore une fois, merci à eux ;) Je peux continuer à me former sans prendre l’avion :)

Share

Mots-clefs : 2011, Android Builders Summit 2011, conférence, ELC, ELC 2011, embarqué, FOSDEM, FOSDEM 2011, Free Electrons, linux
Publié dans linux, Systèmes Embarqués | Aucun commentaire »

Introduction au système de communication inter-processus D-Bus
Jeudi 26 mai 2011

Cela faisait quelques temps que je souhaitais rédiger une documentation sur D-Bus et ses concepts (en français). Je n’ai pas trouvé énormément d’informations sur lefonctionnement détaillé de ce Bus quand j’en avais besoin. Du coup, je me suis lancé dans la rédaction d’un tutoriel pour les personnes qui se retrouveront tôt ou tard dans le même cas que moi. Et puis ça me sert aussi de gros aide mémoire :) Vous pouvez consulter l’article sur developpez.com, mais également au format pdf.

D-Bus est un système de communication inter-processus initié en 2002 offrant un moyen simple de dialoguer entre applications. Aujourd’hui il est présent sur de très nombreux projets. Il fait partie intégrante d’Ubuntu, et sait être assez obscur pour les personnes souhaitant l’utiliser ou le comprendre. Cet article s’adresse aux personnes souhaitant comprendre le fonctionnement de D-Bus et éventuellement mettre en place une architecture logicielle basée sur ce bus.

Lire le reste de cet article »

Share

Mots-clefs : Bus, D-Bus, dbus-daemon, IPC, libdbus, linux, processus
Publié dans Général, linux | 2 commentaires »

Salon Solutions Linux / Open Source 2011 – Petit bilan du 11 Mai
Samedi 14 mai 2011

Je me suis rendu mercredi dernier au salon Solutions Linux / Open Source 2011. Depuis quelques temps, je mets mon nez dans les salons Linux, il y a plein de choses intéressantes à y apprendre :) ! Seul problème, trouver le temps de s’y rendre, ce qui n’est pas forcément simple quand ça se passe en semaine. Bref ! J’ai choisi mercredi car j’avais repéré des conférences sur l’embarqué.

Il y a eu donc une première table ronde sur Android avec des messieurs SSII, dont le monsieur embarqué Pierre Ficheux. Bon, au final rien de bien transcendant. Les points suivants ont été abordés :

  • le marché d’Android et son émergence depuis quelques années/mois
  • l’intégration d’Android sur de nouveaux devices
  • l’utilisation (ou pas) d’Android par les industriels.
  • l’ergonomie d’Android et sa comparaison avec les produits Apple. (soit dit en passant, ça taillait pas mal sur Apple, niark)
  • la dépendance vis à vis de Google et la question de sécurité et de vie privée

Sinon je ne sais plus qui a dit ça dans les intervenants, mais j’ai bien rigolé lors de la comparaison d’Android et du HTML. Genre Android c’est l’équivalent du HTML pour les téléphones. Ahahah … !

Bref ce qui en sort c’est surtout qu’Android est un OS Mass Market pour le multimedia pour produits avec écrans. Dans le lot des intervenants, il n’y avait que 2 personnes avec un esprit un plus critique sur Android. Dommage que la discussion n’ait pas été plus loin sur les « inconvénients » d’Android, ça aurait été plus intéressant. Car le discours était plus de l’ordre « Android il est bien, Android il est gentil, Android c’est la solution universelle ! ». J’aurais bien aimé pousser la discussion sur ces inconvénients et avoir une table ronde plus objective. Mais bon d’un autre côté ils n’allaient pas inviter un intervenant MeeGo et un intervenant Apple dans le lot pour parler d’Android :D

Table ronde sur Android

Tiens, d’ailleurs ça devait être le moment où Pierre Ficheux a dit qu’Eclipse ça faisait pitié (quand on venait du vrai monde des gens qui utilisent QT) :D Je dis respect ! Dire ça à une table ronde sur Android entouré de fanboys Android :) Ahah !

Sinon en passant, vous pouvez retrouver la vidéo de la table ronde sur le site du Paris Android User Group. Bon bah il s’avère que je suis en plein dans le champ à plusieurs reprises (1min50). J’étais sur le siège d’à côté…

Seconde conférence

Seconde conférence intitulée « Terminaux mobiles et fuite de d’information », qui s’est transformée en « Architecture Android, les spécificités de l’OS » au dernier moment. Philippe Prados, a qui on doit le numéro hors série de Linux Magazine sur Android, nous a expliqué le fonctionnement d’Android. 30 min pour la présentation, dommage car pas facile de rentrer dans les détails. J’ai pu réapprendre le fonctionnement des Activities and co d’Android :D Mais bon ça restait intéressant, bien que très court. Enfin j’aurais bien aimé avoir la présentation « Terminaux mobiles et fuite de d’information ». Mais apparemment l’intervenant qui devait venir a eu un imprévu. Donc bah ça sera pour un prochain salon !

Troisième conférence sur OpenEmbedded

La troisième conférence était  intitulée « Linux sur ARM : ça ne date pas de 2010 OpenEmbedded, un framework pour des applications embarquées riches ». Pendant la conférence d’avant j’ai repéré un visage qui me disait quelque chose. J’ai fini par réaliser qu’il s’agissait de Christian Charreyre que j’avais vu 2 mois plus tôt au salon RTS Embedded Systems. FAIL pour le coup, le nom de la présentation n’était pas le même, mais le contenu l’était. Du coup, je me suis assuré que la présentation était identique, et j’ai plutôt opté pour un retour sur le salon.

Etonnemment je m’attendais à quelque chose de différent, plus orienté projets open source. Au lieu de ça, il y avait énormément de SSII/SSLL/SSLLL/and co. Il y avait bien sûr pas mal de stands d’associations relatives à toutes les distribs possibles et imaginables de Linux, un stand Gnome et un stand KDE côte à côte (fight !), l’April, de l’hébergeur et encore de l’hébergeur, pas mal d’associations d’utilisateurs et de développeurs, le stand du PAUG, et tout plein de stands de SSII :P

Il y avait Intel également qui présentait MeeGo et ses tablettes atom. J’ai attendu un moment avant de pouvoir discuter avec une des personnes du stand. J’ai été un peu violent avec la personne avec mes questions (pardooooon !), je lui ait demandé quels étaient les arguments que je pourrais utiliser pour choisir MeeGo au profit d’Android. Aie ! Question très méchante ! J’étais très intéressé par la réponse à cette question à vrai dire. Il m’a avancé les avantages de l’open source, de leur store multi-plateformes,  mais je suis déçu, je n’ai pas eu réellement d’argument béton pour choisir Meego plutôt qu’Android. Ce qui m’a fait un peu peur (enfin j’étais sur le stand Intel…) c’est que MeeGo n’a pas (plus?) réellement vocation à tourner sur ARM. Enfin il m’a annoncé clairement qu’avec le départ de Nokia le support des processeurs ARM était pas franchement leur priorité. Bon Intel prêche aussi pour sa paroisse ! Mais bon… Donc au final j’en tire une conclusion simple :

  • Android = arm
  • MeeGo = x86

Aussi simple que cela ? Hum, ça m’embête ! Je vais continuer à mener mon enquête pour déterminer si je dois choisir MeeGo ou Android pour les prochains produits sur lesquels je vais travailler.

Ah et puis marrant, j’ai croisé un professeur de lycée qui m’a reconnu à mon nom sur mon badge car il avait travaillé sur la carte fox et qu’il connaissait mon blog :) Huhu

Un éléphant PHP géant ! Cooool !

Ah oui ! Aussi, un truc qui m’a bien fait marrer ! Un stand Microsoft ! (désolé pour la photo crade)

Des guerriers courageux de chez Microsoft !

Pour conclure, je suis bien content de ce salon. Ne serait-ce que par simple curiosité, j’avais envie d’y aller. J’imaginais l’évènement un peu plus geek, au lieu de cela je suis tombé plus sur un salon très axé service. Les projets open source étaient représentés par des associations, et les sociétés qui les mettent en oeuvre placées à part. Je comprends le fonctionnement, mais je  ne m’attendais pas à ça.

Sinon j’ai pu grapiller bien du Linux Mag et de la revue en tout genre :)

Ah et puis … merci pour les autocollants Linux, ils ont fini collés sur le mac d’un de mes collègues :D

Prochain salon, les RMLL en juillet !

Share

Mots-clefs : 2011, CNIT, compte rendu, geek, Libre, linux, open source, Paris, projet, Salon, Salon Solutions Linux / Open Source
Publié dans linux, Non classé, Systèmes Embarqués | 2 commentaires »

Raspberry Pi – Révolution du Do It Yourself ?
Mardi 10 mai 2011

Avec un peu de retard, je viens de tomber sur la carte Raspberry Pi, annoncée par The Raspberry Pi Foundation, une fondation britannique. Cette dernière, dont le but est de promouvoir l’apprentissage de l’informatique, plus particulièrement dans les écoles, vient de lancer un gros pavé dans la mare. Elle propose de développer et produire un ordinateur ultra ultra low cost d’ici un an.

Il s’agit d’un système basé sur un processeur ARM11 à 700MHz et 128Mo de RAM. De la taille d’une clé USB, ils l’annoncent à un prix de £10 à £15 (soit 17€). Oui 17€ ! Même s’il ne s’agit peut-être là que du prix des composants cela reste réellement intéressant.

En voici les specs détaillées :

  • 700MHz ARM11
  • 128MB of SDRAM
  • OpenGL ES 2.0
  • 1080p30 H.264 high-profile decode
  • Composite and HDMI video output
  • USB 2.0
  • SD/MMC/SDIO memory card slot
  • General-purpose I/O
  • Open software (Ubuntu, Iceweasel, KOffice, Python)

Le système Raspberry Pi avec un module caméra

Sachant ce que l’on peut faire avec un tel matériel, cela pourrait bien devenir un produit révolutionnaire pour la communauté de la bidouille et du DIY. Le prix est tellement bas que je me demande *vraiment* si ce communiqué est vrai et si le projet est économiquement viable. Si tel était le cas, on se retrouverait avec un Linux embarqué pour moins cher, voir le même prix qu’une Arduino… Oh ! j’en achète une caisse tout de suite !

Même si l’approche et beaucoup plus axée éducation, apprentissage de l’informatique en générale, et comme ordinateur low-cost du genre OPLC, je ne peux que voir l’avantage d’une telle carte de dev de type ARM à seulement 17€ pour le monde de la bidouille. A ce prix, il n’y a plus de limite aux possibilités d’une telle carte ! Imaginez le système Raspberry Pi couplé à une carte Arduino ! Pour moins de 50€ nous avons le système rêvé de tout hacker qui se respecte.

J’ai hâte !

Share

Mots-clefs : ARM, ARM 11, embarqué, linux, low-cost, Pi, Raspberry, Raspberry Pi, Raspberry Pi Foundation
Publié dans linux, Systèmes Embarqués | 2 commentaires »

uClibc et Timezone Info (TZ)
Jeudi 5 mai 2011

S’il y a bien des intérêts à utiliser la uClibC, il y a tout de même pas mal d’inconvénients. Dans le lot, il y a la gestion des timezones.

Alors que la glibc utilise la zoneinfo database, /etc/timezone et /etc/localtime pour manipuler les timezones, la uClibC, quant à elle utilise la variable TZ. C’est une des différences qui existe entre ces deux libc. Donc pour définir une timezone, il faut définir la variable d’environnement TZ ou bien la décrire dans le fichier /etc/TZ. Une modification de TZ et la fonction date prend en compte le changement.

Sauf que la valeur à renseigner, bien que standardisée n’est listée nullepart sur le net sauf ici (mais hélas elle n’est pas exhaustive). J’ai pourtant bien cherché… Bref pas super pratique pour gérer l’international quand on nous dit quel format utiliser sans pour autant donner de liste. Théoriquement, la liste peut se refaire à la main, en se basant sur les spécifications. Mais avec 405 timezones dans le monde, je ne suis pas super fan. Si quelqu’un a une autre source, je suis vraiment preneur…

Un collègue m’a finalement bien sorti de la galère. La solution, se baser sur la zoneinfo database d’un système sous glibc pour générer le format TZ avec un petit script bash. Et ça s’avère bien pratique, donc je partage !

?View Code BASH
#!/bin/bash
for i in `tail -n+28 /usr/share/zoneinfo/zone.tab | cut -f3`; do
    echo -e "$i;$(cat /usr/share/zoneinfo/$i | tail -n1)"
done

Pour une raison encore inconnue, ce premier script retourne 10 timezones sans valeur de TZ. Le script suivant permet de les échapper.

?View Code BASH
#!/bin/bash
for i in `tail -n+28 /usr/share/zoneinfo/zone.tab | cut -f3`; do
    TZ=$(cat /usr/share/zoneinfo/$i | tail -n1)
    [ $(echo $TZ | wc -c) -gt 1 ] && echo -e "$i;$TZ"
done

Ce qui nous donne une jolie liste exploitable en C :]

Europe/Andorra;CET-1CEST,M3.5.0,M10.5.0/3
Asia/Dubai;GST-4
Asia/Kabul;AFT-4:30
America/Antigua;AST4
America/Anguilla;AST4
Europe/Tirane;CET-1CEST,M3.5.0,M10.5.0/3
Asia/Yerevan;AMT-4AMST,M3.5.0,M10.5.0/3
America/Curacao;AST4
Africa/Luanda;WAT-1
Antarctica/McMurdo;NZST-12NZDT,M9.5.0,M4.1.0/3
Antarctica/South_Pole;NZST-12NZDT,M9.5.0,M4.1.0/3
Antarctica/Rothera;ROTT3
Antarctica/Palmer;
Antarctica/Mawson;MAWT-5
Antarctica/Davis;DAVT-7
Antarctica/Casey;WST-8
Antarctica/Vostok;VOST-6
Antarctica/DumontDUrville;DDUT-10
Antarctica/Syowa;SYOT-3
Antarctica/Macquarie;MIST-11
America/Argentina/Buenos_Aires;ART3
America/Argentina/Cordoba;ART3
America/Argentina/Salta;ART3
...
Share

Mots-clefs : database, glibc, linux, timezone, TZ, uClibc, zoneinfo
Publié dans linux, Systèmes Embarqués | Aucun commentaire »

Petit retour sur le salon Rts Embedded Systems 2011 à Paris
Samedi 23 avril 2011

Je me suis rendu au salon RTS Embedded Systems 2011 en mars dernier (uniquement sur la matinée du jeudi). Je n’ai pas eu l’occasion jusque là de revenir sur les conférences auxquelles j’ai assisté.

Première conférence vraiment très intéressante de Gilles Blanc (Linagora) intitulée « Linux embarqué, Réussir son projet ». Abordant des sujets tels que les erreurs fatales, l’évaluation de projet, la réalisation de PoC, le calcul de coûts, mais également les nouveaux paradigmes autour d’Android, MeeGo and co., les compétences et rôles au sein d’une équipe, l’organisation du travail, l’environnement de développement. Mais aussi, de façon générale comment mener à bien son projet, les cycles de développement, la relation client/fournisseur et la gestion proactive.

J’ai appris beaucoup de choses notamment sur les erreurs fatales (Oh mince j’en avais déjà expérimenté un paquet :D mais je suis toujours en vie ! :D ), les coûts cachés et la gestion complexe des licenses en embarqué. Point tellement peu maîtrisé par beaucoup d’industriels. Je ne pourrais citer que mon propre exemple avec des juristes qui me demandent ce qu’est la licence GPL et une licence contaminante… C’est pas toujours gagné ! Également intéressant de voir l’intérêt du PoC en embarqué pour estimer la charge de travail.

Gilles Blanc a d’ailleurs annoncé qu’il travaillait actuellement sur un livre reprenant entre autres les points abordés dans sa présentation. Très bonne nouvelle ! Un ouvrage très intéressant en perspective ! Une bonne chose quand on voit que la littérature française sur l’embarqué n’est pas encore très étendue. Gilles a même utilisé le terme de « Libre embarqué » qui m’a beaucoup plu. Il faudrait l’appeler comme ça ton livre ;)

Seconde présentation de Christian Charreyre (CIO informatique industrielle) sur OpenEmbedded qui m’a presque donné envie de balancer mon cher Buildroot à la poubelle :P

Présentation très sympa sur les avantages et inconvénients du projet (enfin … surtout les avantages :D ) Mais j’avoue que les éléments suivants :

  • gestion de dépendance entre paquets
  • gestion de la chaîne de compilation
  • génération de SDK (du staging quoi)
  • génération de paquets logiciels binaires (.deb)
  • génération d’image prête à déployer
  • classification des logiciels par licence (CA c’est la grande classe !)
  • gestion des dépendances et versions
  • grande richesse logicielle
  • prise en compte de l’internationalisation
  • indépendance vis à vis du poste de développement hôte
  • moteur écrit en python (bitbake)
  • Jeu de recettes de paquets pour générer des systèmes adaptés à des besoins particuliers.
  • gestionnaire de paquets sur la cible (sweet !) avec gestion de dépendances d’installation et de suppression

m’ont vraiment donné envie de tester OpenEmbedded pour mes prochains projets. Mais pour ça il va me falloir une nouvelle machine, apparemment OpenEmbedded est extrêmement gourmand en espace disque et temps CPU. A côté de cette usine à gaz, Buildroot génère des images instantanées et un staging ultra light :D

Nous avons eu ensuite droit à une présentation de Wind River par Pierre-Henri Stanek à propos du test de systèmes Linux. Si je ne m’abuse il s’agissait du système présenté au Mobile World Congres. Bon je vais vous avouer que le discours était tout de suite plus commercial (trop pour moi) et pas assez technique à mon goût :P

Et enfin la matinée s’est terminée sur une présentation de Jérome Letailleur d’Anticyp sur le Debug Kernel portant sur la spécificité de la phase Bootloader -> Kernel -> Applicatif. En l’occurrence ici, sur le moment où la MMU n’est pas encore chargée et où l’on a besoin d’investiguer et trouver la source d’un problème bien vicieux et planqué au fin fond du Kernel. Bon, sa solution impliquait du plugin Eclipse et de l’IDE graphique. Graphique ? Berk ! … Je sais ! Je suis un intégriste du vim et de la ligne de commande ! Niark ! Plus sérieusement, je regarderai à l’occasion. Ma phase vim me passera peut-être un jour… ou pas :D

Bref, une matinée fort intéressante. Je ne suis pas resté l’après midi, les sujets abordés m’intéressaient déjà moins. Et j’avais aussi pas mal à faire avec la sortie du Karotz ! Je regrette un peu de ne pas avoir pu me rentre à la conférence de la veille sur Android et MeeGo.

J’ai déjà repéré un cycle de conférences sur l’embarqué au Salon Solutions Linux / Open Source le 11 mai prochain à Paris. J’ai déjà pris ma journée pour m’y rendre :)

Share

Mots-clefs : Android, conférence, embarqué, linux, linux embarqué, MeeGo, OpenEmbedded, Réussir son projet, Salon
Publié dans linux, Systèmes Embarqués | 1 commentaire »

Sortie d’Open Silicium Magazine N°2 – Magazine de l’open source pour l’électronique et l’embarqué
Mardi 29 mars 2011

Héhé ! Le numéro 2 d’Open Silicium vient de sortir ! Billet avec un peu de retard, mais mon ami le facteur ne me l’a amené qu’aujourd’hui !

Voici le sommaire :

  • 4 News

Labo

  • 6 Mini2440 : Utilisation de la sonde JTAG
  • 10 Utilisation des cartes magnétiques sous GNU/Linux
  • 18 Parlez 1-Wire, I2C, SPI, MIDI et bien plus avec un seul outil : Bus Pirate v3

Mobilité

  • 28 Faites parler vos montages en bluetooth
  • 30 ARCHOS 70 internet tablet : aussi pour les développeurs… ou pas !

Système

  • 37 Instrumentation du noyau Linux et utilisation de Ftrace
  • 44 Le microcontrôleur : un ordinateur sur une puce
  • 48 Arduino : le microcontrôleur AVR pour tous
  • 52 Débuter avec son Arduino : des premiers pas au bord de l’environnement Arduino
  • 64 Allez plus loin avec votre module Arduino

Expérimentation

  • 76 ReadyNAS : et si on s’occupait un peu du noyau ?

Repère

  • 80 Apprenez à utiliser les Makefiles pour faciliter vos développements
  • 84 Implémentation efficace d’algorithmes sur FPGA : Machines à état

Réseau

  • 90 Exploration et modification d’un NAS LaCie BigDisk Network
Share

Mots-clefs : embarqué, linux, linux embarqué, Linux Magazine, magazine, Open Silicium, système embarqué, Systèmes Embarqués
Publié dans linux, Systèmes Embarqués | 2 commentaires »

Quick Start Board – La nouvelle carte Cortex A8 de chez Freescale
Mercredi 2 mars 2011
Quick Start Board

Quick Start Board

Décidément ! Il pleut des cartes de dev sur le monde de l’embarqué ! C’est à l’occasion de l’exposition Embedded World 2011 à Nürnberg, que Freescale a annoncé la sortie de sa première carte low-cost basée sur sa famille de processeurs i.MX53 ARM Cortex A8.

Ce n’est pas croyable !

Je rate évènement sur évènement sur l’embarqué ! J’aurais bien aimé faire un tour à Nürnberg moi. Je sens que je vais finir par me faire un calendrier des évènements dédiés à l’embarqué.

Bref ! Cette petite carte est annoncée à 149 $USD et sera supportée par la communauté imxcommunity.org.

Voici les caractéristiques de la carte Quick Start Board :

  • Processor — Freescale i.MX535 @ 1GHz; Dialog DA9053 PMIC chip
  • Memory — 1GB of DDR3 RAM
  • Flash expansion — 1 x full-size SD/MMC slot; 1 x microSD slot
  • Storage — 7-pin SATA connector
  • Display:
    • VGA connector
    • LVDS connector
    • parallel LCD or HDMI add-on card via expansion connector
    • supports 4.3-inch, 24-bit 800 x 480 display with 4-wire touchscreen
  • Networking — 10/100 Ethernet port
  • Other I/O:
    • 2 x high-speed USB ports
    • 1 x micro-USB device port
    • Mic and headphone jacks
    • SPDIF audio via HDMI add-on card
    • Expansion connector for LCD, HDMI, camera CSI, I2C. SSI, SPI
    • JTAG connector
    • DB-9 UART port
  • Other features — 3-axis Freescale accelerometer; Freescale SGTL5000 audio codec
  • Power — 5V, 2A
  • OS and tools support:
    • Linux BSP from Freescale
    • Android 2.2 BSP from Adeneo
    • Windows Compact 7 BSP from Adeneo
    • Segger/CodeSourcery, Macgraigor, IAR debug, IDE toolchain
    • Mentor Graphics Inflexion UI tool
    • VMware player for Windows PC image

Quelques liens

  • Freescale spins Cortex-A8 SoCs, tablet design, and $149 dev board
  • New low-cost Cortex A8 board from Freescale
Share

Mots-clefs : ARM, Cortex A8, Embedded World, Freescale, i.MX, i.MX53, imx, linux, linux embarqué, Quick Start, Quick Start Board
Publié dans linux, Systèmes Embarqués | Aucun commentaire »

« Articles plus anciens


Un peu de moi autrepart :

  • rss Twitter
  • rss LinkedIn
  • rss Viadeo
  • rss Developpez.com
  • rss Github
  • rss Youtube
  • rss Flickr
  • rss Mon CV (pdf, odt) - ENGLISH
  • rss Flux RSS

  • Articles récents

    • Raspberry Pi – Premières images de la version alpha
    • Au revoir Mindscape
    • Concours de création de système Linux embarqué sur carte Mini2440
    • Juillet 2011 – Quelques news en vrac sur l’actualité de l’embarqué
    • Mass Storage USB sur tous les OS grâce au File-backed Storage Gadget (g_file_storage)
  • Commentaires récents

    • TRYSS dans DSO nano – L’oscilloscope numérique de poche
    • Yoann Sculo dans Raspberry Pi – Premières images de la version alpha
    • R@OUL dans Raspberry Pi – Premières images de la version alpha
    • sache dans Vicacopter, un hélicoptère autonome open source fort sympathique
    • Yoann Sculo dans Au revoir Mindscape
  • Catégories

    • Applications
    • Emploi
    • Général
    • linux
    • Non classé
    • Robotique
    • Systèmes Embarqués
    • Traitement d'image
  • Mots-clefs

    Android Arduino ARM association caliban Buildroot C caliban camera caprica 2010 carte fox CELF conférence ELCE 2010 embarqué Embedded Linux Conference Emploi foxboard Free Electrons G20 Genesis Karotz lapin Libre Linaro linux linux embarqué Linux Magazine magazine MeeGo Mindscape nabaztag Nokia open source planète robots Robert robot Robotique robotique amateur Simerion système embarqué Systèmes Embarqués UTT video violet électronique


Yoann Sculo est fièrement propulsé par WordPress
Articles (RSS) et Commentaires (RSS).