ELECINF344/381

Partie interactive du site pédagogique ELECINF344/ELECINF381 de Télécom ParisTech (occurrence 2011).

Catégories

MB Led: Firmware protocol

Since Saturday I have been working on Firmware transmission through IrDA and the use of SD Card.

Transmission protocol for firmware:

The firmware is stored on flash memory, so we are transmitting from flash to flash through IrDA.

As we have to write in flash by pages, we also have to transmit our firmware by pages and as pages important in size we cannot send it at once. Thus each firmware will be sent divided by pages which are divided into packets.

  1. At the beginning of a transaction a first packet is sent with the data needed in order to store the firmware such as number of pages, number of packets sent by pages and for security purpose the id of the sender and the interface used. The bloc send an acceptance packet either it is already on transaction or not.
  2. Then a PAGE_BEGIN packet is sent with its position in the firmware.
  3. During page sending all data is stored in a buffer of 32-bits words.
  4. At the end of a page a packet END_OF_PAGE is sent confirming its position and adding its CRC calculated thanks to CRC unit on STM32 and the CRC is checked(Note that in the IrDA task we already check the integrity of each packet). If everything is okay we write the buffer in flash, if not a request is sent to resend the page.
  5. We continue till we arrive at the end of firmware with the packet END_TRANSACTION and the global integrity is checked. In case of success we send a TRANSACTION_OK packet, if not we have to do it again from the beginning.

SD CARD:

For SD Card we will use FatFS, a free open source FAT file system module which has an implementation on STM32 thanks to Martin THOMAS. I adapt it to our system. I delayed testing because transmitting a huge amount of data seemed more important, SD card coming in second.

Présentation des études de cas

Voici les présentations des études de cas :

Dans l’ensemble, ces présentations étaient d’une grande qualité !

MB Led : Avancées du week end

Suite au conseil d’Alexis nous avons modifié nos PSSC afin de les adapter au scénario dans lequel nous devrions concevoir la carte pour
les blocs nous-même (et non en comptant sur celle conçue par Alexis, toujours en attente de devis). Pour la conception de notre carte, nous nous
inspirons fortement des schémas du bloc GLip (ici et) en y ajoutant un connecteur pour carte SD, en modulant la puissance des tranceivers Irda utilisés (pour éviter les problèmes de trop grande portée rencontrés par l’équipe Glip), et en rendant l’intensité des leds bleus identique à celle des leds rouges et vertes.

Nous nous sommes renseignés sur le protocole à suivre pour initialiser, lire et écrire une carte SD/SDHC et pendant nos recherches nous avons
découvert une bibliothèque implémentant ces fonctions pour les microcontroleur stm32 via le bus SPI → http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/arm_memcards/.

Pour ce qui est de la recherche d’algorithmes répartis correspondant à notre cas nous somme tombés sur une thèse traitant de la
synchronisation des données pour le jeu multi-joueur/multi-machine ce qui est très proche de notre problématique, à savoir propager au
travers du réseau de bloc l’information sur l’état global du réseau (partie de jeu en cours, quel image est affiché dans l’animation à un
moment donné sur la matrice de bloc etc). Ce type d’algorithme a  la propriété de s’adapter facilement à l’arrivée/au départ de nouvelles
machine dans le réseau: http://tel.archives-ouvertes.fr/docs/00/54/18/49/PDF/TheseKHAN.pdf

Comme support de communication et afin de partager nos avancées intra-équipe nous utilisons un wiki (encore à l’état de brouillon) dont voici le lien : http://perso.telecom-paristech.fr/~bonny/mbled/

Attribution des présentations

Les présentations sont réparties de la manière suivante :

  • Git : Clément, Bertrand, Laurent, Vaibhav
  • Filtre de Kalman : Thibault, Caroline, Florian
  • PID / PWM / Pont en H : Siwar, Cédric LN, Samuel
  • Accès structuré (REST, COAP) et interopérabilité : Cédric H, Yoann, João Paulo
  • Contrôleur LQR : Thomas, Alain, Axel
  • Communication dans un système embarqué (IPv6, SD-card, USB) : Benjamain, Loïc, Theodoros, Guillaume