Archives par mot-clé : BeagleBoard

Arduino Tre avec processeur ARM et Arduino Galileo avec processeur Intel Quark [MAJ]

Arduino Tre (http://xv4y NULL.radioclub NULL.asia/wp-content/uploads/2013/10/ArduinoTre_LandingPage NULL.png)Après avoir innové et rendu accessible à un large public le développement de programmes pour micro-contrôleurs, la fondation Arduino se met dans les pas du Raspberry Pi. Elle vient d’annoncer l’Arduino Tre une carte conçue en partenariat avec BeagleBoard et qui embarque un processeur de la famille Cortex A8 d’ARM (un TI Sitara AM335x à 1GHz) ainsi qu’un micro-contrôleur AVR à ses côtés (un ATMega32U4 comme celui de l’Arduino Due) (http://arduino NULL.cc/en/Main/ArduinoBoardTre). A noter que le Sitara AM335x est le même que celui de la BeagleBone Black, ce qui garanti le support des mêmes distributions Linux et d’un support matériel accru. La disponibilité est annoncée pour le printemps 2014 et de prix officiel pour l’instant. L’Arduino Yún (avec routeur Ethernet/WiFi sous OpenWRT/Linux intégré) (http://store NULL.arduino NULL.cc/eu/index NULL.php?main_page=product_info&products_id=313) étant à 52€, on peut spéculer que le prix du Tre devrait être du même ordre de grandeur dans les 70€.

Intel Galileo Arduino (http://xv4y NULL.radioclub NULL.asia/wp-content/uploads/2013/10/Intel_Galileo1-640x482 NULL.jpg)Autre annonce, celle d’une carte avec processeur Intel x86, l’Intel Galileo conçue en collaboration avec la fondation Arduino. Elle embarque un processeur SoC Quark X1000 à 400MHz qui reprend l’architecture de la famille Atom et qui devrait avoir des performances supérieures aux meilleurs représentants de la famille Cortex Mx d’ARM, mais pour des caractéristiques de consommation inconnue. La disponibilité est annoncée pour fin Novembre et le prix sous les 60$. Cette carte est aussi capable de faire tourner un système d’exploitation Linux.

MAJ : Après avoir étudié de plus l’architecture du Quark X1000, Hardware.fr lui trouve beaucoup de similarité avec celle du i486DX… (http://www NULL.hardware NULL.fr/news/13381/intel-quark-486 NULL.html)

Merci à Ars Technica pour les deux infos (ici (http://arstechnica NULL.com/information-technology/2013/10/most-powerful-arduino-ever-has-arm-cortex-a8-chip-runs-full-linux/) et ici (http://arstechnica NULL.com/information-technology/2013/10/intel-powers-an-arduino-for-the-first-time-with-new-galileo-board/)).

Un BeagleBone avec processeur ARM Cortex A8 à 1GHz pour 45$

Beagle Bone Black (http://xv4y NULL.radioclub NULL.asia/wp-content/uploads/2013/04/BeagleBoneBlack01-640x426 NULL.png)Le projet BeagleBoard (http://xv4y NULL.radioclub NULL.asia/2012/03/21/beaglebrick-lipad-du-radioamateur/) est antérieur de plusieurs années au bien connu Raspberry Pi. S’il souffrait d’un positionnement différent avec l’utilisation de techniques plus avancées pesant sur son coût, l’arrivée des BeagleBone avait rectifié un peu le tir.

Aujourd’hui, grâce au support de Texas Instruments (aide technique et allocation de temps de travail d’ingénieurs sur ce projet libre), une nouvelle étape vient d’être franchie. En effet, le nouveau BeagleBone Black sera disponible dès demain à 45 USD et offrira bien plus de puissance de calcul que tous les compétiteurs (http://beagleboard NULL.org/Products/BeagleBone%20Black). Le processeur est un Sitara AM335x de chez TI, utilisant un coeur ARM Cortex A8 à 1 GHz. Ce processeur utilise l’architecture ARM v7 ce qui lui permet de faire tourner Ubuntu ou Android contrairement au Raspberry Pi bloqué sur l’architecture ARM v6.

La nouvelle platine BeagleBone dispose aussi de plus d’entrées-sorties même si on reste en deca des plateformes micro-contrôleurs haut de gamme utilisées sur l’Arduino Due (http://xv4y NULL.radioclub NULL.asia/2012/11/01/arduino-due-32bits/) ou le Tiva C LaunchPad (http://xv4y NULL.radioclub NULL.asia/2013/04/15/le-stellaris-launchpad-rebaptise-tiva-c/). La carte comporte 512Mo de RAM DDR3L, 2Go de mémoire Flash intégrée en plus du port MicroSD, un port USB et un port Ethernet. A noter aussi que bien que facturée 10$ de plus d’un Raspberry Pi, le BeagleBone est livré avec une alimentation et un câble réseau. La différence de puissance peut paraître mince, mais elle est suffisant pour envisager réellement des applications lourdes de traitement du signal comme de la SDR sur un système embarqué.

Détails caractéristiques BeagleBone (http://xv4y NULL.radioclub NULL.asia/wp-content/uploads/2013/04/beaglebone-specs NULL.png)

Le système préinstallé est Ångström Linux (http://www NULL.angstrom-distribution NULL.org/). Il permet de programmer comme sous tout système Linux en Python, C, script Shell, PHP… Mais un autre point fort du BeagleBone et de disposer d’origine de BoneScript, un environnement de programmation volontairement inspiré d’Arduino permettant d’écrire rapidement et simplement des programmes équivalent à ceux que l’on fait tourner sur un micro-contrôleur pour contrôler les entrées-sorties du BeagleBone. Les 100 000 unités du premier lot de production devraient partir comme des petits pains…

Merci à Ars Technica pour l’information (http://arstechnica NULL.com/information-technology/2013/04/for-your-robot-building-needs-the-45-beaglebone-linux-pc-goes-on-sale/).

 

Un PC miniature Quad-Core à 129$

Vu sur ArsTechnica (http://arstechnica NULL.com/gadgets/2012/07/korean-company-offers-3-5-inch-quad-core-arm-linux-computer-for-129/), la société coréenne Hardkernel propose sa carte ODROID-X qui vient compléter la famille des Raspberry Pi, BeagleBoard et consorts.

Carte ODROID-X, PC embarqué (http://xv4y NULL.radioclub NULL.asia/wp-content/uploads/2012/07/201206301841017729 NULL.jpeg)Visiblement orientée sur le haut du marché, la carte comprend un processeur à quatre coeurs (Samsung Exynos 4 à 1,4 GHz), un processeur graphique quadri-core Mali 400, 1 Go de RAM, 6 ports USB, un port Ethernet, une entrée-sortie audio et un lecteur de carte SDHC. Le processeur étant construit sur l’architecture Cortex A9 d’ARM, il permet de faire tourner Ubuntu et Android.

La carte semble disponible à la vente immédiatement avec une expédition internationale à partir de fin juillet (http://www NULL.hardkernel NULL.com/renewal_2011/products/prdt_info NULL.php?g_code=G133999328931), livraison prévue en 2 semaines par EMS. Le prix de 129$ (plus 30$ de port) est plus élevé que celui d’autres cartes, mais les performances sont à la hausse. A noter la garantie de 4 semaines et l’ensemble de petites notes en bas qui vous font comprendre que l’achat est à vos risques…

Un nouveau PC miniature à 49$

VIA Android PC board (http://xv4y NULL.radioclub NULL.asia/wp-content/uploads/2012/05/apc-banana-640x358 NULL.jpg)Vu sur l’excellent site Ars Technica (http://arstechnica NULL.com/gadgets/2012/05/another-tiny-computer-vias-49-apc-offers-android-hdmi-video-out/). La société VIA, très connue pour ses chipsets et microprocesseurs pour micro-ordinateurs et compatibles PC, a annoncé la disponibilité d’un nouveau concurrent du Raspberry Pi et consorts (http://xv4y NULL.radioclub NULL.asia/2012/03/15/beagleboard-raspberry-pi-et-autres-pc-embarques-pour-les-radioamateurs/). C’est le APC ou Android PC qui embarque un processeur ARM (ARM11, donc compatible Android contrairement au Raspberry Pi), 512Mo de RAM, 2 Go de mémoire Flash, des sorties VGA, HDMI et audio, une entrée audio, un port MicroSD, un port Ethernet et 4 ports USB. La carte vendue nue et annoncée comme au format Neo-ITX consomme entre 4 et 13,5 Watts et est livré avec une version adaptée d’Android 2.3.

AllWiner Android PC USB clé (http://xv4y NULL.radioclub NULL.asia/wp-content/uploads/2012/05/ea687cbe6b22cba6b63b77472f9c876d NULL.jpeg)L’article parle aussi d’un autre micro PC à 74$ mais mieux équipé avec Wifi et un processeur Cortex A8 à 1,5GHz qui fait tourner Android 4.0 (http://arstechnica NULL.com/gadgets/2012/05/new-74-android-mini-computer-is-slightly-larger-than-a-thumb-drive/). Avec tout cela, il y a du choix et avec un peu de chance ces produits seront réellement disponibles (qui a un Rasbperry Pi entre les mains ?)…

BeagleBrick : l’iPad du radioamateur

Un copain me faisait remarqué que j’avais oublié la BeagleBrick (http://www NULL.rarcpio NULL.net/beaglebrick/main NULL.html) dans mon dernier article sur les Raspberry Pi, BeagleBoard et consorts (http://xv4y NULL.radioclub NULL.asia/2012/03/15/beagleboard-raspberry-pi-et-autres-pc-embarques-pour-les-radioamateurs/). Non je ne l’avais pas oublié, mais je trouvais l’article déjà assez long (apparemment les lecteurs du blog préfère les articles courts) et surtout la BeagleBrick n’est pas quelque chose de “fini” actuellement.

Concept BeagleBrickKC4NYK a fait un beau boulot il est vrai de produire une image disque (une distribution) regroupant tous les logiciels d’intérêt radioamateur pour la BeagleBoard. Je pense toutefois qu’il a sous-estimé l’ampleur de la tâche car 90% de ces éléments logiciels sont en version beta voire alpha et les maintenir à jour (et fonctionnels tous en même temps) doit être très difficile. La dernière mise à jour date du 22 septembre 2009.

De plus, si matériellement le concept paraît simple (on met dans le même package une BeagleBoard, une platine SDR type SoftRock et un écran LCD), faire fonctionner l’ensemble correctement pour pouvoir le produire en série n’est pas chose simple! Un PC (même du type embarqué) rayonne énormément de HF, l’écran aussi. Passer du concept de “tout intégré” à la réalité semble plus difficile à faire qu’à dire.

Aussi voici quelques autre points de détails qui me gène dans l’analyse fait par l’OM dans sa présentation. A noter qu’ils sont récurrents chez les défenseurs de la radio-logicielle (SDR). Il compare une radio “commerciale” disons à 1000$ au concept de BeagleBrick qui coûterait moins de 300$, mais :

  • Il n’intégre pas le prix d’un écran et d’un périphérique de saisie (clavier, écran tactile…) dans le coût. On pourrait évaluer ce coût supplémentaire à 100$.
  • Il compare une radio sortant 100W et une platine QRP limitée à 1W. Or l’étage de puissance et quasiment ce qui coûte le plus cher même si on le prévoit pour une bande unique. Cela rajoute donc un surcoût de 200$.
  • Les émetteurs-récepteurs type SoftRock sont souvent monobandes ou du moins limités. La solution est généralement trouvée sous forme de modules enfichables (pas très pratique ni fiable) ou avec un système comme la MoBo 4.3 (http://sites NULL.google NULL.com/site/lofturj/mobo4_3) qui a un coût loin d’être négligeable.
  • Du point de vue performances, les circuits audio intégrés à la BeagleBoard sont loin d’être de qualité suffisante. Les vrais adeptes de la SDR le savent bien, si on veut pourvoir profiter des qualités intrinsèques du concept de la conversion I/Q il faut un excellent convertisseur ADC. Ils sont toutefois suffisant pour générer un signal pour faire de l’AFSK avec un transceiver traditionnel, ou pour faire de la réception SDR occasionnelle.
  • Il y a l’éternelle question des latences inhérentes au SDR utilisant des micro-ordinateurs polyvalents plutôt que de DSP dédiés. C’est un long débat, mais sachez que faire de la CW à haute vitesse (en concours par exemple) avec une radio type FlexRadio même haut de gamme n’est pas du goût de tout le monde.

Enfin, je ne voudrais pas paraître de dénigrer le travail de KC4NYK et il a eu le mérite d’aborder le sujet et d’essayer. Tout ce que je voudrais dire, c’est que les transceivers HF “traditionnels”, qui l’air de rien sont tous des SDR aujourd’hui (le signal est généré ou démodulé numériquement par un DSP) ont encore de beaux jours devant eux. C’est vrai qu’on dispose maintenant de circuits “grands publics” plutôt performants pour un coût parfois dérisoire. Ils sont tout de même loin des performances des circuits spécialisés pour un coût comparable.

A ce propos, et comme point de comparaison, Elecraft vient d’annoncer la disponibilité de sa carte P3SVGA (http://www NULL.elecraft NULL.com/P3/p3 NULL.htm#svga) qui est en fait un module d’extension du Panadapter P3. Cette carte augmente les performances du P3 pour lui permettre d’afficher sur un écran externe de résolution 1920x1080p. Elle est proposée à 260$.

BeagleBoard, Raspberry Pi et autres PC embarqués pour les radioamateurs

L’arrivée du Rapsberry Pi (http://www NULL.raspberrypi NULL.org/) a fait beaucoup parlé de cette famille de PC « embarqués ». Les 10 000 premières unités produites ont été précommandées par au moins 200 000 clients ! Un point sur ce qu’ils sont réellement et leur intérêt pour les radioamateurs me paraît nécessaire.

Raspberry Pi (http://img1 NULL.lesnumeriques NULL.com/news/23/23602/rapsberry-pi-mini-pc-35 NULL.jpg)Nous commencerons par les plus anciens de la famille des BeagleBoard (http://beagleboard NULL.org/), projet totalement ouvert, plus destinés à être des « plateformes de développement » selon leurs auteurs et qui sont appuyés par Texas Instrument cherchant ici à développer l’usage de ses processeurs. L’architecture étant ouverte, un industriel peut ensuite produire une série taillée sur mesure de la plateforme correspondant exactement à ses besoins et réduisant les coûts.

Le Rapsberry Pi est plus un produit pour geeks et se veut vendu en masse. Plus fermé conceptuellement, il offre aussi moins de possibilités pour le concepteur du matériel de bidouiller.
Le dernier de la famille, dont nous ne parlerons pas c’est le Cotton Candy (http://www NULL.fxitech NULL.com/products/) : Un PC au format Clé USB plutôt puissant (il embarque un processeur Cortex A9 et 1 Go de RAM) n’offrant en fait aucune vraie entrée-sortie.

Tout d’abord les caractéristiques.

BeagleBoard-xMBeagleBoard originale

  • 125 $
  • Texas Instrument OMAP3530 à 720 MHz (ARM Cortex A8) = 1200 MIPS
  • Processeur graphique PowerVR SGX530
  • DSP TMS320C64x+ pour vidéo HD ou divers traitement du signal (SDR)
  • 128 Mo RAM, 256 Mo Flash
  • Bus I2C/SPI, GPIO, RS-232, JTAG
  • Connecteur USB et USB-on-the-go, lecteur carte MMC/SD
  • Entrée-sortie audio stéréo
  • Sortie DVI et S-Video
  • OS : Android, Ubuntu, WinCE, RISC OS, Symbian…autres Linux

BeagleBoard-xM (différences avec le BeagleBoard original) :

  • 149 $
  • Texas Instrument OMAP3530 à 1 GHz
  • 512 Mo RAM, pas de Flash intégrée
  • Ethernet 10/100
  • Port caméra
  • Lecteur MicroSD (jusque 4 Go)
  • Sortie HDMI (plus de DVI)

Pandaboard ES

PandaBoard ES

  • 182$
  • Texas Instrument OMAP4460 à 1,2 GHz (ARM Cortex A9 bicoeur)
  • Processeur graphique PowerVR SGX540 à 384 MHz
  • DSP TMS320C64x
  • 1 Go de RAM, pas de Flash intégrée
  • Lecteur carte SD (SDHC jusque 32 Go)
  • Ethernet 10/100, Wifi et Bluetooth
  • Bus I2C/SPI, GPIO, RS-232, JTAG
  • Port caméra, Connecteur DSI pour écran LCD
  • USB et USB-on-the-go
  • Sortie DVI et HDMI
  • OS : Android, Ubuntu et RISC OS

Raspberry Pi

  • 35$
  • Broadcom 2763 à 700 MHz (ARM1176JZF-S)
  • 256 Mo RAM
  • Sortie audio stéréo (pas d’entrée)
  • Ethernet 10/100
  • Bus I2C/SPI, GPIO
  • Connecteur DSI pour écran LCD
  • OS : Debian, Fedora, RISC OS
    (l’architecture ARMv6 n’est pas supportée par Ubuntu ou Android)

En faisant une petite recherche sur le web on se rend vite compte que peu de projets tournant sur ces plateformes ont trait au radioamateurisme. Ceci pour plusieurs raisons.

Tout d’abord une grande partie des applications que nous utilisons (cahier de trafic, cluster, modes numériques…) a besoin d’une interface homme-machine (un écran, un clavier en résumé) et ceci n’est pas inclus dans les produits ci-dessus. Le coût au premier abord paraît faible mais quand on y ajoute un écran on arrive vite à celui d’un PC portable premier prix.

SDR2Go avec UHFSDR

Ensuite, pour faire de ces systèmes un contrôleur de radio type SDR, se présentent rapidement deux écueils. Le premier c’est l’absence d’entrée-sortie à grande vitesse (le plus rapide étant le bus USB) pour accéder directement aux données d’un ADC comme sur le HPSDR. Les Beagleboard embarquent bien une entrée-sortie audio stéréo (soient 2 DAC et 2 ADC) mais les circuits sont de piètre qualité, loin des besoins d’une vrai radio SDR. Le deuxième c’est la difficulté pour programmer le DSP embarqué dans ces systèmes. Contrairement à ce qui existe sur d’autres plateformes dédiées au traitement du signal (comme celles utilisées sur le SDR2Go (http://www NULL.qsl NULL.net/k5bcq/Kits/Kits NULL.html) ou le SDRCube (http://www NULL.sdr-cube NULL.com/)), ici tout est à faire ou presque, et cela rebute pas mal de développeurs (voir le portage de GNU Radio sur Beagleboard (http://www NULL.opensdr NULL.com/node/17)).

Quand on regarde bien, le vrai but de ces produits n’est pas de fournir un système polyvalent mais surtout une plateforme « multimédia » comme le sont les smartphones avec qui ils partagent la plupart des composants micro-processeur en tête. Ok ils disposent d’entrées-sorties supplémentaires pour les adeptes de la bidouille, mais celles dont nous aurions besoin !

Un peu après avoir publié cet article j’ai lu un message sur la liste Knight QRSS qui suggérait que ce type de PC embarqué pourrait être parfait pour servir de Grabber QRSS. C’est une application que je n’avais pas envisagé. Seule la PandaBoard a suffisamment de puissance pour servir de décodeur WSPR par contre. A moins de porter les algorithmes de K1JT sur le DSP, mais c’est une autre paire de manches.

Et Arduino ?

En guise de conclusion, comment ces produits se comparent-ils à un Arduino (http://www NULL.arduino NULL.cc/) ? Tour d’abord en terme de performances brutes l’Arduino est largement derrière. Le processeur de l’ArduinoMega est à 16 MHz, 8ko de SRAM, 256Ko de Flash, pas de DSP, pas de circuits vidéos… rien à voir. C’est vrai qu’un Arduino est aussi puissant qu’un ordinateur familial des années 80, et qu’il peut déjà faire pas mal de choses.

La vraie force de l’Arduino c’est d’automatiser des tâches nécessitant beaucoup d’interactions électriques ou électroniques : commandes des relais (pour une balise, un manipulateur CZ) , capturer des valeurs (fréquencemètre, Wattmètre), piloter un bus I2C. Ecrire un tel code sur un Arduino est très simple et permet de concevoir un matériel autonome, fiable, très simple, consommant peu d’énergie et peu coûteux à produire en série si besoin. L’environnement de développement (IDE) de l’Arduino permet de concevoir un tel code en quelques minutes.

Bien entendu, on peut faire la même chose avec un BeagleBoard dont les entrées-sorties GPIO et I2C sont accessibles par des commandes du shell Linux. Honnêtement, c’est un peu utiliser un marteau-pilon pour enfoncer une punaise, et si on veut faire des choses complexes on va sentir le besoin d’un vrai environnement de développement et d’un langage dédié. De plus dupliquer le circuit sera difficile et coûteux et la complexité du matériel (et du logiciel) augmente le risque de panne.