Firmware ESP32 et Arduino nano ?

Bonjour,

J'ai reçu une copie de Arduino nano, avec ch340, je crois (?), et le ESP32.

J'ai vue que pour l'ESP32 il existe plusieur firmware dont un pour le micro-python, je me demande si vous avez de la doc qui permettent de comprendre ce qu'il existe ?

Et comment cela fonctionne ?

Merci

Philippe

Je ne sais pas trop si cela correspond à ce que tu demandes, puisque c'est le premier lien qui vient dans google.
Mais la documentation de micro-python est je pense.
Et le portage d'Adafruit est ici

Merci, mais en faite il existe d'autre firmware et se qui me manque c'est l'explication le firmware micro-python, et la pour que ,quand en natif, on puisse faire tourner des programmes en python, (suposition), mais si il n'existait qu'un seul firmware, il eu été exclusif au donneur d'ordre de la fonderie, hors y en a plusieurs tant pour le chipset atmel que pour l'ESP32, et ma question porte sur çà !

Y en a t'il et comment savoir qui tourne mieux pour tel tache, ou tel autre ?

Philippe

Concernant MicroPython, le plus simple serait de poser tes questions sur le "Forum" MicroPython.

Concernant le portage de MicroPython sur différentes cibles, il y a plus de 150 cibles si je me souviens car pour un même microprocesseur il peut y avoir des environnements différents , par exemple, ESP32 avec ou sans SPIRAM, RP2040 avec ou sans Wifi, ....
Il n'y a pas vraiment de comparatif.

Toutes les variantes sont ici

Tu verras que pour chaque processeur qu'il y a des "sous-variantes" en fonction de l'architecture des cartes.

S'agissant d'un langage interprété, à la grosse on peut dire que plus le processeur est rapide et plus il y a de RAM plus l'ensemble sera performant.

Oui, c'est les liens que je t'ai indiqué.

Oui, au restriction près indiqué dans les liens que je tai indiqué.

Non, pas vraiment, ce dont tu parle est plutôt le langage machine reconnu par le µC.
le micro-python n'est pas fournis par le fondeur, ni pré-installé par celui-ci.
Il s'agit d'un programme comme un autre.

Si tu veux savoir si un interpréteur est installé sur une carte de développement, tu peux par exemple le connecter à ton PC, en général il envois des informations sur la liaison série.

Mais du coup est tu intéressé par le micro-python ou c'est le fait qu'il soit potentiellement installé sur une carte de développement qui te gêne ?

Bonsoir,

Merci à vous deux, vous ne m'avez pas compris, je sites micro-python en exemple et vous vous focalisaient dessus ...

Je cherche l'information du firmware, comment l'écrire le choisir ?

De c'est deux extrait il faut repondre comment choisir ou ecrire le firmware, et non m'expliquer la configuration et documentation de celui de micro-python !

j'ai apperçu chez Microship, une liste de datasheep du atmel 328P, je ne suis même pas sur que ma copie est conforme et c'est avec les firmware que je pense que l'on peut controler ?!

J'ai trouvé cette liste :slight_smile: * 131 Powerful Instructions

  • Most Single Clock Cycle Execution
  • 32 x 8 General Purpose Working Registers
  • Fully Static Operation
  • Up to 20 MIPS Throughput at 20 MHz
  • On-Chip 2-Cycle Multiplier
  • 32 KB of In-System Self-Programmable Flash program memory
  • 1 KB EEPROM
  • 2 KB Internal SRAM
  • Write/Erase Cycles: 10,000 Flash/100,000 EEPROM
  • Data retention: 20 years at 85°C
  • In-System Programming by On-chip Boot Program
  • True Read-While-Write Operation
  • Programming Lock for Software Security
  • Capacitive Touch Buttons, Sliders and Wheels
  • 24 Self-Cap Channels and 144 Mutual Cap Channels
  • Two 8-bit Timer/Counters with Separate Prescaler and Compare Mode
  • Three 16-bit Timer/Counters with Separate Prescaler, Compare Mode, and Capture Mode
  • Real Time Counter with Separate Oscillator
  • Ten PWM Channels
  • 8-channel 10-bit ADC in TQFP and QFN/MLF package
  • Two Programmable Serial USARTs
  • Two Master/Slave SPI Serial Interfaces
  • Two Byte-Oriented Two-Wire Serial Interfaces (Philips I2C Compatible)
  • Programmable Watchdog Timer with Separate On-chip Oscillator
  • On-Chip Analog Comparator
  • Interrupt and Wake-Up on Pin Change
  • Power-On Reset and Programmable Brown-Out Detection
  • Internal 8 MHz Calibrated Oscillator
  • External and Internal Interrupt Sources
  • Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down, Standby, and Extended Standby
  • Clock Failure Detection Mechanism and Switch to Internal 8 MHz RC Oscillator in case of Failure
  • Individual Serial Number to Represent a Unique ID
  • 27 Programmable I/O Lines
  • 32-pin TQFP and 32-pin QFN/MLF
  • 1.8-5.5V
  • -40°C to 105°C
  • 0-4 MHz @ 1.8 - 5.5V
  • 0-10 MHz @ 2.7 - 5.5.V
  • 0-20 MHz @ 4.5 - 5.5V
  • Active Mode: 0.24 mA
  • Power-Down Mode: 0.2 µA
  • Power-Save Mode: 1.3 µA (Including 32 kHz RTC)

philippe

De rien, mais non on ne se focalise sur le micro-python.

Je me suis peut être mal exprimer, mais il n'y a pas de firmware.
Ce que tu appels un firmware est un programme, que tu peux écrire dans différents langage, a ma connaissance C/C++ ou assembleur, mais il existe peut être d'autre compilateur.

Si on prend autre chose que le micro-python, je programme mes ESP8266 en Lua.
Ce programme(ou firmware si tu veux), permet d'exécuter des scripts, mais il est écrit en C++.
Donc ce programme permet d'interpréter du code Lua et de donner accès au différentes fonctionnalité dont tu parle.
Mais en fait les fondeurs fournissent une API(en C++) qui permet d'accéder au ressource du µC, Microship appel ça IPE, je crois.

Arduino fournis une surcouche à cet API.

Personnellement je ne comprends pas bien ce que tu cherche exactement.
Si tu veux écrire des programmes pour un µC sans carte de développement, il faut utiliser un compilateur et l'API fournis avec dédié à ce µC.

Bonsoir @philippe-007

si tu comptes développer tes programmes avec un IDE Arduino , oublies les firmwares à préinstaller
l'IDE s'occupe de tout , et envoie dans la puce à chaque flashage tout le nécessaire

si tu comptes développer des programmes en MicroPython ou CircuitPython (sur une carte compatible) prépares la carte en y flashant le firmware adapté

Bonjour,

Je te confirme qu'il y a un firmware spécifique pour les copies de Arduino nano, source Faclab Val d'Oise !

Donc comment detecter le firmware necessaires, et comme personne n'en a parlé, je suppose que cela vous ai étrangé ?

Philippe

Salut.
Tu as l'air un peu largué.
Qu'est ce qu'un firmware ? C'est simplement un logiciel (micro-logiciel) qui tourne sur un harware embarqué.
Si tu écris ton propre logiciel en C ou C++, c'est un firmware.
Si tu adoptes MicroPython ou CircuitPython, tu utilises le firmware de quelqu'un d'autre.
Il y en a d'autres : firmware AT, FirmATA, Marlin, etc.
Et même dans ton PC il y a un firmware.

Si tu disais ce que tu compte faire exactement, on avancerait certainement plus facilement.

1 Like

comme l'indique @hbachetti, il peut y avoir un programme installé dans un certain but sur ton appareil.
@hbachetti pourra mieux tu renseigner que moi, Arduino par contre utilise un firmware appelé bootloader, je crois sur la nano?

Ils ne t'ont pas dit comment détecter le firmware nécessaire?
Firmware nécessaire à quoi d'ailleurs ?

Je pense que @philippe-007 fait une confusion entre :

  • bootloader : logiciel dans un endroit spécial de la mémoire qui permet de charger un programme utilisateur en utilisant la liaison série.
  • Programme utilisateur (appelé aussi firmware ) qui peut se charger de deux façons :
    a) soit sans bootloader en utilisant le mode ISP et un programmeur spécialisé (tinyUSB ou USBasp)
    b) soit en utilisant la liaison par l'USB si un "bootloader" a été préalablement installé.

Note : un bootloader ne peut être chargé qu'avec le mode ISP.
---------------------------------------------------------------------------------------------------------

@philippe-007
Le mode ISP est le mode temporaire de quelques pins juste après un reset.
Le connecteur ISP est constitué des 6 broches en extrémité opposée à la prise USB.

Le mode ISP est très rarement utilisé, c'est pourquoi le connecteur n'est généralement pas câblé (image de droite).

Capture_20240410_205951

Avec un microprocesseur avr (c'est particulier aux Microchip/avr) il y a deux opérations à faire sur un micro qui sort des chaines de fabrication.

  1. Modifier des mémoires "système" pour le sortir du mode test de fabrication
  2. y enregistrer un bootloader.

Quand tu achètes une carte Nano ces deux opérations sont déjà faites, il n'y a rien à faire.
Le vendeur te vend une carte prête à l'emploi.

Il n'y a que les professionnels et seulement ceux qui ont des besoins très spéciaux, qui modifient ces réglages.
Pour les utilisateurs normaux il n'y a rien à faire puisque tout a déjà été fait.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.