dimanche 24 février 2013

Dongle wifi DWA-121 et Raspberry Pi

Mon dernier achat est un dongle WIFI. Avant cet achat compulsif, j'ai vérifié dans la liste fournie sur le wiki de raspberry pi, quel modèle acheter. C'est déjà pas forcément facile avec du matériel certifié alors si on part dans l'inconnu, c'est encore plus galère....

L'heureux élu est le dongle DWA-121 de la marque D-LINK.

Le but de ce tutoriel est de configurer le dongle wifi sur une distribution de type buildroot (oubliez network-manager et tout ce qui va avec ....)


Pour ce tutoriel, nous allons :

  • Utiliser l'outil de configuration wifi : wpa_supplicant
  • Compiler, installer et charger le driver de chez realtek : 8192cu
  • Compiler et installer les outils sans fil fournis avec le driver
  • Créer un script pour la configuration du dongle au lancement du système de fichiers.

mardi 19 février 2013

Afficheur Alphanumérique (partie 3)



On va maintenant s’intéresser à l'interfaçage de la carte micro-contrôleur avec la raspberry pi.


Afficheur Alphanumérique (partie 2)




Architecture Logicielle


L'architecture logicielle de la carte contrôleur est relativement simple. 
On reçoit des trames provenant du bus I²C via le handler d'interruption et les empiler dans une file d'attente (FIFO), ensuite, périodiquement, on dépile la file d'attente et traite les trames enregistrées pour afficher les informations sur l'écran LCD.



Afficheur Alphanumérique (partie 1)

Préambule

Ce projet consiste à interfacer un afficheur alphanumérique 2x16 caractères avec la raspberry pi. Il va pouvoir indiquer différentes informations sur l'état de la raspberry pi en fonctionnement (exemples : information sur la mémoire, le micro processeur, les process, etc ...).

Ça a l'air d'être à la mode d'interfacer un afficheur à la raspberry pi. Vous trouverez sur la toile, de nombreux tutoriels pour le faire directement.
Je vais complexifier un peu la chose, rien de bien méchant, je vous rassure ;-)
L'afficheur va être contrôlé avec un micro contrôleur 8bits de la marque Microchip (Pic 16f876a) et dialoguera avec la raspberry pi via le bus I2C. Cela permettra d'appréhender la communication entre 2 micros via un bus série.

Architecture générale du projet















J'ai choisi ce micro contrôleur 8 bits parce qu'il est possible :
  • d'écrire le programme en C (je suis pas un grand fan de l'assembleur)
  • de compiler le programme sous Linux à l'aide du compilateur HI-TECH C compiler (il existe, de plus, une version demo et lite)
  • de le faire évoluer pour d'autres fonctionnalités.
  • de pouvoir découvrir de nouveaux aspects des systèmes embarqués.
  • de réduire les coûts de développement (quelques euros, voir dizaines d'euros avec le programmateur)

Le premier billet va illustrer les différents éléments de ce projet.
Le second billet va aborder les différents modules du micro contrôleur PIC 16f876a à mettre en place et finalement, le dernier billet montrera l'interface avec la raspberry pi.

samedi 9 février 2013

Alertes [LE BON COIN]





Vous connaissez, surement, l'un des sites de recherche d'objets neufs ou d'occasions le plus connu, Le bon coin. Il est vrai que l'on peut y faire de bonnes affaires, en achetant ou en vendant à peu près tout ce que l'on veut ou en proposant tous types de services.
Il m'arrive, assez régulièrement, de fréquenter ce site, surtout quand je suis à la recherche de choses bien précise.
N'ayant pas la possibilité de me rendre régulièrement sur le site, tout au long d'une journée, j'ai imaginé ce soft qui a pour but d'effectuer la recherche à ma place à une date précise ou un intervalle de temps programmé. Le résultat de cette recherche est ensuite envoyé par email si de nouveaux éléments sont trouvés.
Une interface web est accessible depuis n'importe quel navigateur, afin de faciliter la gestion (Ajout, suppression et configuration) de mes recherches.

Ce programme, sous licence GPL, écrit entièrement en python, utilise différentes sources tierces pour atteindre mon but :

  • CherryPy : Création et gestion d'un serveur Web minimaliste
  • Genshi : Template pour la gestion des pages Web
  • BeautifulSoup : Analyse d'une page internet
  • Minidom : Gestion des fichiers XML qui jouera le rôle de base de données
  • APScheduler : Gestion d'un ordonnanceur/planificateur de tâches