Archive pour la catégorie ‘Systèmes Embarqués’

Mercredi 8 septembre 2010

Il y a deux jours, je parlais des vidéos de l’Embedded Linux Conference 2010 de San Francisco publiées par Free Electrons. Et comme une bonne chose ne vient jamais seule, ils viennent à nouveau de publier de nouvelles vidéos. Cette fois il s’agit des Rencontres Mondiales du Logiciel Libre 2010 de Bordeaux et du FOSDEM 2010. Maintenant il va falloir trouver le temps de regarder tout ça :P

  • Share/Bookmark
Mardi 7 septembre 2010

DSO nano

Je suis tombé sur un petit appareil magique hier, le DSO nano. Il s’agit d’un oscilloscope numérique de poche. Au premier abord on dirait un téléphone portable ou un baladeur mp3. Sauf qu’il s’agit bien d’un oscilloscope ! Basé sur un processeur ARM Cortex-M3 et équipé d’un écran couleurs 320*240 pour environ 80$, l’oscilloscope offre une bande passante de 1Mhz. C’est assez faible, mais au final c’est amplement suffisant pour visualiser des signaux PWM, I2C, … Bref, la solution idéale pour les amateurs, quand on connait le prix d’un vrai oscilloscope.

On peut le trouver entre autres sur Seeed Depot, Sparkfun et nkcelectronics. J’ai également repéré un test intéressant du produit.

Je n’ai pas d’oscilloscope, vu le prix et l’utilisation épisodique que j’en ai. Cependant j’ai toujours été embêté dès que j’ai eu besoin de travailler  sur des signaux électriques de type PWM ou I2C. Le DSO nano semble être exactement ce que je cherchais. Je sens que je vais craquer très prochainement et me le procurer :-)

  • Share/Bookmark
Lundi 6 septembre 2010

Parce que j’ai mis un moment à trouver les bonnes options pour cross-compiler V8 (le moteur Javascript de Google) sur ARM9 (armv4), voici les étapes que j’ai suivies.

Tout d’abord, V8 utilise execinfo. Et comme uClibC ne l’intègre pas (contrairement à glibc) il faut légèrement feinter. N’ayant pas besoin de backtrace dans mon cas, il suffit de créer un fichier execinfo.h redéfinissant les fonctions de backtraces.

#ifndef _EXECINFO_H_
#define _EXECINFO_H_ 1
 
#include 
 
__BEGIN_DECLS
 
int backtrace(void**,int){ return 0; }
char** backtrace_symbols(void* const*,int){return NULL; }
void backtrace_symbols_fd(void* const*,int,int){}
 
__END_DECLS
 
#endif /* !_EXECINFO_H_ */

Ce n’est pas super propre, mais ça fonctionne. Donc en se basant sur le trunk de V8, il suffit d’utiliser les commandes suivantes. Partir du trunk est important car il contient un patch récent pour ARM nécessaire pour la compilation.

En plaçant en gros bourrin le execinfo.h à la racine de V8 et en laçant le script suivant, V8 compile. (Nécessite de définir BUILDROOT_PATH tout de même)

#!/bin/bash
export GCC_VERSION=44
 
export CC="$BUILDROOT_PATH/output/staging/usr/bin/arm-linux-gcc"
export CXX="$BUILDROOT_PATH/output/staging/usr/bin/arm-linux-g++"
 
export CXXFLAGS="-I. -mcpu=arm920t"
export CFLAGS="-I. -mcpu=arm920t"
 
scons mode=release arch=arm library=shared prof=off os=linux profilingsupport=off snapshot=off

Il n’y a plus qu’à stripper le .so « Et voilà ! »

Par contre si quelqu’un a une solution plus propre pour execinfo je suis preneur.

  • Share/Bookmark
Samedi 4 septembre 2010

Je profite de la sortie de la version 3.3 du projet Armadeus il y a un peu plus d’un mois pour parler d’une association mulhousienne originale.

Le Projet Armadeus est une association française, mais ouverte à l’international, dont le but est de faciliter le développement de systèmes embarqués à base de logiciels Libres.

Il permet aux membres d’acquérir, à tarif préférentiel, des cartes  ARM distribuées par la société Armadeus Systems. Basé sur les outils U-Boot, Linux et Buildroot/Busybox/uClibc (ce qui fait la force du projet) le système permet de prototyper, bidouiller et se lancer dans des applications concrètes très intéressantes, et cela très rapidement. En tant que grand adepte de Buildroot, je ne peux que saluer l’idée du projet initié en 2006. Armadeus apporte une composante matérielle et communautaire qui peut favoriser l’émergence de projets innovants !

Cela fait un moment que je suis leurs activités, et je me demande si je ne vais pas finir par adhérer à l’association :)

  • Share/Bookmark
Vendredi 3 septembre 2010

Le planning de l’Embedded Linux Conference Europe 2010 (ELC Europe)  a été annoncé il y a une dizaine de jours. Tant pis pour le retard, c’est toujours d’actualité :) Il y a un mois, nous avions eu un aperçu des conférences présentes à Cambridge en octobre prochain. Maintenant on sait comment tout cela sera agencé, et on peut déjà regretter que l’on ne puisse pas se couper en 3. J’aimerais beaucoup m’y rendre. J’essaie de négocier ça au travail :-P

Comme annoncé sur la liste Celinux-dev, la conférence accueillera près de 50 sessions abordant les sujets suivants :

  • Linux in Mobile
  • Porting and board bring-up
  • Android
  • Meego
  • Video and Multimedia
  • Boot technologies, including fast booting
  • Toolchains
  • Power management
  • Real-time
  • Memory analysis and performance
  • Flash file systems
  • Security
  • License compliance

Le planning de la conférence Gstreamer ayant lieu un jour avant, est également disponible depuis quelques temps déjà.

Et pour ceux qui voudraient rentabiliser leur voyage en Angleterre, il y a également la DroidCon à Londres les 28 et 29 octobre 2010 dont le programme est également disponible.

Oh la belle semaine de geek que voilà ! 4 jours, 3 conférences !

  • Share/Bookmark
Mercredi 1 septembre 2010

Logo BuildrootJe suis tellement en retard dans les billets que je souhaiterais écrire que j’ai failli rater la sortie aujourd’hui de Buildroot 2010.08. Les modifications sont toutefois moins visibles que la dernière release de mai dernier. On peut retrouver les détails de la nouvelle version sur la mailing list (qui spamme ma boîte mail avec toujours autant de ferveur :-) ) La prochaine version est annoncé pour fin novembre 2010 !

Après quelques semaines extrêmement chargées, je vais enfin pouvoir rattraper mon retard sur une actualité Linux embarqué plutôt chargée. A très bientôt donc.

  • Share/Bookmark
Mercredi 18 août 2010

Je suis tombé aujourd’hui sur un article très intéressant d’Ars Technica, relayé par Toolinux. La semaine dernière, à la conférence LinuxCon à Boston, les créateurs de MeeGo ont abordé les éléments qui différenciaient leur nouveau système de ceux existants sur le marché. En profitant pour annoncer la sortie du premier appareil sous MeeGo cette année, Thomas Miller (Nokia’s MeeGo Ecosystem Development head) a déclaré que l’appareil serait ouvert. Dans le sens où les utilisateurs seraient à même de modifier le software. Donc de quoi ravir les early-adopters.

Un des avantages notables de MeeGo, et pas des moindres, est que les constructeurs seront en mesure de participer au processus de développement du système de façon plus active. Ce qui fait donc la force du produit à mes yeux ! L’approche est différente de celle de Google Android qui est moins proche du Libre qu’on voudrait le croire. Les fondateurs de MeeGo montrent ainsi un peu du doigt la politique de Google Android, moins ouverte.

Mettant en avant la diversité des langages de programmation disponibles sur MeeGo, les créateurs de MeeGo ont également abordé le point de la distribution des applications. Les utilisateurs et développeurs auront la possibilité de disposer de plusieurs stores. Les fabriquant seraient également en mesure de bénéficier de leur propre de store basé sur le service AppUp d’Intel

Concernant le choix de QT comme framework par défaut, je vois déjà râler les gens qui critiquent le C++ et préfèrent des langages plus « facile d’accès ». Cependant, utilisant Android quotidiennement, j’ai légèrement le sentiment que l’Android Market devient de plus en plus pollué par les applications buggués, inutiles et faites à la va-vite. Je ne sais pas comment les stores de MeeGo seront gérés et agencés. Toutefois, je me demande si la décision d’utiliser QT ne serait pas à terme un gage de qualité (ne pas y voir un sentiment anti JAVA, mais plutôt anti développeurs du dimanche).

Idéalement, je rêverais beaucoup plus d’un système d’applications libres, améliorées par les utilisateurs et développeurs, plutôt qu’un système de magasin en ligne où les gens ne publient que leurs exécutables. Attention, je fais bien la distinction entre libre et gratuit. A vrai dire, l’aspect Libre d’Android ne transparaît pas du tout dans ses applications. Point que je trouve réellement intéressant chez MeeGo s’ils s’aventurent dans l’optique de l’ouverture.

Tout cela pour conclure que ces annonces illustrent une vision des choses bien différente de celle des concurrents actuels de MeeGo. Dans ce sens, c’est exactement ce qui se rapproche de ma façon de voir les choses. A ce titre, je pense que MeeGo aurait parfaitement sa place sur le marché, offrant des perspectives plus proches du Libre. J’ai maintenant juste hâte que le premier appareil sous MeeGo sorte :)

  • Share/Bookmark
Jeudi 5 août 2010

Je suis récemment tombé sur un projet complètement génial réalisé par un Allemand. Mêlant jeu vidéo et réalité virtuelle, l’idée est de télécommander une voiture dans un véritable circuit en carton le tout commandé par une borne d’arcade. Et bien sûr, géré par une carte Arduino ! Tiens, tiens !

L’idée est vraiment énorme. J’ai un gros projet similaire en tête depuis un moment déjà, je sens que je vais finir par m’y mettre. Déjà parce que cette vidéo m’a vraiment donné envie de me lancer pour de bon et ensuite parce que quelqu’un va finir par avoir la même idée que moi :D

  • Share/Bookmark
Lundi 26 juillet 2010

Comme prévu, Meego gagne peu à peu la confiance des constructeurs et rejoint les rangs des projets de systèmes embarqués. Nokia vient d’annoncer que Meego serait la prochaine plateforme d’In-Vehicle Infotainment (désolé je ne trouve pas de traduction française potable pour le terme) utilisée par la GENIVI Alliance. Pour en citer quelques uns, la GENIVI Alliance comprends entre autres les constructeurs BMW, GM, Mitsubishi, Hyundai et Peugeot Citroën. Aucune date de prévue pour l’instant, mais l’annonce augure d’un bel avenir pour MeeGo !

  • Share/Bookmark
Lundi 26 juillet 2010

La liste des sessions de l’Embedded Linux Conference Europe vient d’être annoncée sur son site web. Leur site s’est rempli peu à peu d’information très intéressantes depuis quelques jours. Vendredi, les descriptions des conférences n’avaient pas encore été mises en ligne. Donc j’imagine que le listing est encore amené à évoluer.

Le programme n’est pas encore disponible, mais les conférences s’annoncent vraiment sympathiques !

L’ELC Europe 2010 aura lieu les 27 et 28 octobre 2010 à Cambridge et cohabitera avec la conférence non moins intéressante GStreamer Conference 2010 qui, elle, aura lieu le 26.

  • Share/Bookmark