Pages: [1]   Go Down
Author Topic: reaDIYboot: un bootloader Wi-Fi qui récupère les fichiers HEX sur Internet  (Read 713 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Jr. Member
**
Karma: 0
Posts: 84
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

C'est encore moi !

Dans ce post j'ai présenté la carte que j'utilise et j'ai mentionné un bootloader Wi-Fi qui exploite le module RN171.

Je viens de publier le code source (abondamment commenté) sur GitHub : voir ici.

Ce bootloader, baptisé reaDIYboot est capable de télécharger un fichier .hex, d'analyser son contenu et de l'écrire dans la mémoire Flash d'un ATmega1280.

Vu les ennuis rencontrés par certains bootloaders avec les programmes un peu lourds, j'ai fait attention à tester reaDIYboot avec des programmes de toutes tailles - y compris jusqu'à la taille maximale - et à vérifier le résultat en comparant un dump de la mémoire Flash avec le fichier hex d'origine.

Au niveau du débit, ça marche bien à 250 kbaud, à 500 kbaud ça ne marche plus - ça viendra peut-être un jour  smiley-lol

Ah oui et le protocole STK500 de base est implémenté aussi dans reaDIYboot, donc on peut toujours programmer la carte en la branchant en USB et en cliquant sur Upload dans l'IDE Arduino.

Si vous avez des questions ou des remarques, je suis toute ouïe !
Logged

Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 24
Posts: 3171
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Génial, Bravo.
Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

La Chaux-de-Fonds
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ce bootloader, baptisé reaDIYboot est capable de télécharger un fichier .hex, d'analyser son contenu et de l'écrire dans la mémoire Flash d'un ATmega1280.
Désolé Benvenuto, t'as l'air (et t'es pas le seul ici je pense) de bien, voir très bien maitriser toute cette technologie, mais il faut penser aussi qu'il a des débutants (comme moi) et que du coups, il serait bon aussi d'expliquer aussi de manière "simple".
Donc, j'aimerais savoir par exemple à quoi ça sert ou à quoi ça peut servir de "télécharger un fichier .hex, d'analyser son contenu et de l'écrire dans la mémoire Flash d'un ATmega1280." ?
Merci.
Logged

France
Offline Offline
God Member
*****
Karma: 4
Posts: 962
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour jplaville
on pourrait peut être dire les choses comme ça :
équippée de ce bootloader une carte peut recevoir son programme comme d'habitude par le port USB mais également aller chercher son programme sur un site distant (internet par WiFi)
ça ouvre tout un tas de possibilités comme la mise à jour automatique d'une application à chaque mise sous tension
Logged

La Chaux-de-Fonds
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour jplaville
on pourrait peut être dire les choses comme ça :
équippée de ce bootloader une carte peut recevoir son programme comme d'habitude par le port USB mais également aller chercher son programme sur un site distant (internet par WiFi)
ça ouvre tout un tas de possibilités comme la mise à jour automatique d'une application à chaque mise sous tension
Ok, pas mal en effet.
Et c'est possible aussi de de faire la mise à jour sans remettre la carte sous tension, car cela serait le top en matière de maintenance.
Je vais même pousser le bouchon plus loin (Maurice), le top serait de pouvoir publier sur un serveur le .ino et que la carte ce reprogramme automatiquement à chaque changements du fichier.
Mais c'est vrai que c'est déjà pas mal du tout.
Bravo.
Benvenuto, tu parles de ATmega1280, mais dans ton lien GitHub, ca parle de WiFly, tu peux faire la manip sur une Mega qui a aussi un ATmega1280 ou bien il faut la fameuse super nouvelle carte avec Wi-Fi/MP3/SD intégrés du post dont tu mets le lien ?
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 84
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

La fameuse carte que je mentionne n'est pas indispensable - un Arduino Mega connecté à un module Wi-Fi équivalent (Wifly RN131 ou Wifly RN171) fonctionnerait aussi bien.

D'ailleurs quand j'ai commencé à développer ce bootloader, je n'avais pas encore la carte avec tous les composants intégrés, j'utilisais un Seeeduino Mega et un shield avec un RN171.
Logged

La Chaux-de-Fonds
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok, super merci Benvenuto pour toutes ces précisions.
Et avec une carte ethernet à la place du wifi, ça le fait pas du coups si j'ai bien compris !?
Logged

Pages: [1]   Go Up
Jump to: