Comment puis-je télécharger un firmware de fichier hexadécimal sur une carte cible sans utiliser l'IDE Arduino?

8

Existe-t-il un moyen pour moi de créer un programme d'installation qui exécute un script shell pour télécharger une mise à jour du firmware sur un Arduino qui n'implique pas l'utilisation de l'EDI? J'ai une chose que je fais qui a parfois besoin d'une mise à jour du firmware, et parfois les personnes qui appliqueraient la mise à jour du firmware ne pourraient pas appliquer la mise à jour depuis l'IDE. Je suppose que c'est quelque chose à voir avec avrdude, mais essayez comme je pourrais apprendre comment, je n'ai tout simplement pas eu de chance par moi-même.

Je peux gérer la partie "créer un programme d'installation qui exécute un script shell".

Steve Cooley
la source
L'intérêt pour un téléchargement USB du croquis / firmware? (par opposition à l'utilisation d'un ICSP)
boardbite

Réponses:

5

Je crois que cela pourrait être accompli à partir de la ligne de commande comme ci-dessous (et pourrait donc facilement être transformé en script). Ce n'est pas une réponse entièrement testée, et je la mettrai à jour au fur et à mesure des progrès, soit via mes tests ou la vérification d'autres personnes.

Obtenez d'abord avrdude (fichiers minimum: avrdude.conf, avrdude.exe et libusb0.dll).

Ensuite, à partir de la ligne de commande, exécutez quelque chose à l'effet de:

avrdude -U flash: w: [put-hex-file-path-here]: i -C avrdude.conf -v -p atmega328 -b 115200 -c stk500v2 -P [put-device-path-here]

morsure
la source
7

Si vous activez la sortie détaillée dans les préférences de l'EDI, vous pouvez voir la ligne de commande complète que l'IDE utilise pour exécuter avrdude.

La sortie détaillée vous permettra également de voir quel répertoire temporaire est utilisé pour le fichier hex, afin que vous puissiez le saisir.

baldengineer
la source
Cela répond à la question. Je crois que le questionneur était intéressé par la façon de télécharger ce fichier hexadécimal sur la carte (sans Arduino IDE et sans doute sans ICSP).
boardbite
Il fournit l'étape nécessaire pour obtenir la réponse complète. Une fois que vous voyez la ligne de commande utilisée par l'EDI et que vous avez le fichier hexadécimal, vous n'avez plus besoin de l'EDI. Je ne suis pas sûr de comprendre votre commentaire sur ICSP car avrdude ne nécessite pas de programmeur basé sur ICSP.
baldengineer
1
Je viens de noter que la sortie verbeuse IDE fournit en effet toutes les informations nécessaires; mon commentaire maintenant annulé! Et ma mention d'ICSP n'est pas liée à avrdude, mais plutôt au fait que c'est une façon courante de programmer des puces.
boardbite
3

Vous recherchez peut-être l' utilitaire inotool.


la source
Alternatives à Windows? Peut-être basé sur la ligne de commande?
boardbite
La page ne dit rien sur les fichiers hexadécimaux.
Elmue
3

Vous pouvez utiliser AX Loader, un logiciel open source disponible sur Sourceforge .

user24931
la source
Toute version Windows 32 bits de la même chose?
boardbite
Ce lien est mort. Je ne trouve que XLoader sur xloader.russemotto.com mais il n'y a pas de code source disponible.
Elmue