Arduino Opta (micro automate, STM32H747)
⚡ L’essentiel en 60 secondes
- mcu — ST STM32H747XI (board definition says STM32H747XIH6, Zephyr board doc) — dual core: Arm Cortex-M7 @ up to 480 MHz + Cortex-M4 @ up to 240 MHz, 2 MB flash (read-while-write), 1 MB RAM. ST device pages: STM32H747XI product, datasheet PDF, reference manual RM0399.
- storage — 2 MB internal flash + 16 MB QSPI flash (shared between firmware use and data logging).
- security — ATECC608B crypto co-processor (16 protected key/cert slots, secure boot support, unique 72-bit serial).
- i_o_screw_terminals_industrial_24_v_world — - 8 multi-function inputs I1…I8 (mapped A0…A7 / PIN_A0…): - Digital mode: 0–24 VDC, VIL ≤ 4.46 V, VIH ≥ 6.6 V, input impedance 8.9 kΩ, 1.12 mA @ 10 V, max frequency 4.5 kHz; overvoltage + reverse-polarity protected. - Analog mode: 0–10 VDC, 12–16-bit user-configurable resolution, LSB 166 µV, accuracy ±5 % (repeatability ±2 %), 10 µs acquisition cycle. - 4 relay outputs OUTPUT1…4 (mapped D0…D3 / RELAY1…RELAY4), Normally-Open SPST, 10 A / 250 VAC (max 400 VAC), 15 A peak (≤10 % duty, ≤0.5 s), rated load AC1 2500 VA / AC15 500 VA, DC1 breaking capacity 10/4/0.3/0.12 A at 24/30/110/220 V, minimum switching load 300 mW (5 V/5 mA), operate/release 6/4 ms, bounce 3 ms NO; mechanical life 10 M operations, electrical life 10 k operations at 10 A resistive. No internal short-circuit protection — external fuse required. Max unshielded output line 100 m. - 4 user LEDs (+1 extra on WiFi), user programmable button, pinhole reset.
- connectivity — 10/100BASE-T Ethernet (all variants, RMII PHY, IEEE 802.3/802.3u, MDIX); RS-485 half-duplex (RS485 & WiFi); Wi-Fi 2.4 GHz 802.11 b/g/n + Bluetooth LE on WiFi (BLE 5.1 in hardware, 4.2 in current firmware); USB-C (host or device, programming/data logging only — cannot power the relay outputs); proprietary expansion port (up to 5 snap-on modules).
- power — 12–24 VDC supply (permissible 10.2–27.6 V), consumption 0.6–2.0 W @12 V / 0.6–2.2 W @24 V. Terminals: 0.5–6 mm² wire, 0.80 Nm torque. Functional-earth terminal provided for fieldbus noise immunity.
- Sur cette fiche : 9 tutoriels · 10 codes
Le cœur de la carte repose sur un microcontrôleur STMicroelectronics STM32H747XI, une puce double cœur très puissante pour ce type d’application. Elle intègre un cœur Arm Cortex-M7 cadencé jusqu’à 480 MHz et un cœur Cortex-M4 jusqu’à 240 MHz. Cette architecture permet une séparation des tâches efficace : le cœur M7 peut gérer la logique de commande principale tandis que le cœur M4 peut servir de coprocesseur pour des tâches spécifiques ou la gestion des communications. La mémoire est généreuse avec 2 Mo de flash interne et 1 Mo de RAM, complétés par 16 Mo de flash QSPI externe, utile pour le stockage de données ou de journaux d’événements. Un aspect crucial pour l’industrie est la sécurité ; l’Opta intègre une puce cryptographique ATECC608B qui gère les clés de sécurité et les certificats, permettant des mises à jour logicielles sécurisées à distance et une authentification robuste, essentielle pour protéger les installations critiques contre les cyberattaques.
Les entrées et sorties (E/S) de l’Opta sont conçues pour le monde industriel 24 Volts, s’éloignant des niveaux de tension 3,3 V ou 5 V habituels des cartes Arduino standard. La carte dispose de huit entrées multifonctions capables de lire des signaux numériques de 0 à 24 VDC directement, sans nécessiter de cartes d’adaptation de signal. Ces entrées sont protégées contre les inversions de polarité et les surtensions. Elles peuvent également fonctionner en mode analogique pour lire des capteurs 0-10 V avec une résolution configurable jusqu’à 16 bits, offrant une grande précision pour la mesure de variables comme la température ou la pression. En sortie, l’Opta propose quatre relais à contact sec (Normally-Open) capables de commuter jusqu’à 10 A sous 250 VAC. Cela permet de commander directement des contacteurs, des vannes ou des moteurs de puissance modérée. Cependant, il est impératif de prévoir une protection externe par fusible, car les relais internes ne disposent pas de protection contre les courts-circuits. La durée de vie électrique des relais est limitée à 10 000 cycles à pleine charge, ce qui impose une conception soignée des cycles de commutation pour les applications à haute fréquence.
La connectivité est l’un des points forts de cette gamme. Toutes les variantes disposent d’un port Ethernet 10/100 Mbits/s, permettant l’utilisation du protocole Modbus TCP, un standard industriel pour l’échange de données entre automates. Les modèles RS485 et WiFi ajoutent un port série RS-485 en mode demi-duplex, idéal pour le réseau Modbus RTU, bien qu’il faille ajouter des résistances de terminaison externes aux extrémités de la ligne pour garantir la fiabilité des communications. La variante WiFi ajoute la connectivité sans fil 802.11 b/g/n sur la bande 2,4 GHz et le Bluetooth Low Energy (BLE). Il faut noter une nuance technique : si le matériel supporte le BLE 5.1, le firmware actuel limite la compatibilité au BLE 4.2. Un port USB-C est présent pour la programmation et le transfert de données, mais il ne peut pas alimenter les relais ; l’alimentation principale doit être fournie via les borniers à vis, acceptant une tension de 12 à 24 VDC.
Sur le plan logiciel, l’Opta offre une double approche. Elle peut être programmée avec l’environnement Arduino classique (via le cœur « Arduino Mbed OS Opta Boards » ou le nouveau cœur « ArduinoCore-zephyr »), utilisant les bibliothèques Ethernet, RS485 et Modbus. Pour les ingénieurs familiers avec l’automatisme industriel, Arduino propose également le « Arduino PLC IDE », une application dédiée permettant de programmer la carte dans les cinq langages normalisés IEC 61131-3 (Ladder, FBD, ST, SFC, IL). Cette flexibilité permet de faire coexister des scripts Arduino simples et des programmes d’automate complexes sur le même matériel. Des modules d’extension snap-on peuvent être ajoutés pour augmenter le nombre d’entrées/sorties, jusqu’à cinq modules par carte. Enfin, la carte est certifiée pour l’usage industriel (cULus, ENEC, CE, UKCA) et dispose d’un mode d’horloge temps réel (RTC) qui conserve l’heure pendant environ dix jours sans alimentation, facilitant la synchronisation des données avec les serveurs NTP via Ethernet ou WiFi.

Schéma de brochage (pinout)

| Attr | Specs | vérifié |
|---|---|---|
mcu | ST STM32H747XI (board definition says STM32H747XIH6, Zephyr board doc) — dual core: Arm Cortex-M7 @ up to 480 MHz + Cortex-M4 @ up to 240 MHz, 2 MB flash (read-while-write), 1 MB RAM. ST device pages: STM32H747XI product, datasheet PDF, reference manual RM0399. | ✔ |
storage | 2 MB internal flash + 16 MB QSPI flash (shared between firmware use and data logging). | ? non vérifié |
security | ATECC608B crypto co-processor (16 protected key/cert slots, secure boot support, unique 72-bit serial). | ? non vérifié |
i_o_screw_terminals_industrial_24_v_world | - 8 multi-function inputs I1…I8 (mapped A0…A7 / PIN_A0…): - Digital mode: 0–24 VDC, VIL ≤ 4.46 V, VIH ≥ 6.6 V, input impedance 8.9 kΩ, 1.12 mA @ 10 V, max frequency 4.5 kHz; overvoltage + reverse-polarity protected. - Analog mode: 0–10 VDC, 12–16-bit user-configurable resolution, LSB 166 µV, accuracy ±5 % (repeatability ±2 %), 10 µs acquisition cycle. - 4 relay outputs OUTPUT1…4 (mapped D0…D3 / RELAY1…RELAY4), Normally-Open SPST, 10 A / 250 VAC (max 400 VAC), 15 A peak (≤10 % duty, ≤0.5 s), rated load AC1 2500 VA / AC15 500 VA, DC1 breaking capacity 10/4/0.3/0.12 A at 24/30/110/220 V, minimum switching load 300 mW (5 V/5 mA), operate/release 6/4 ms, bounce 3 ms NO; mechanical life 10 M operations, electrical life 10 k operations at 10 A resistive. No internal short-circuit protection — external fuse required. Max unshielded output line 100 m. - 4 user LEDs (+1 extra on WiFi), user programmable button, pinhole reset. | ? non vérifié |
connectivity | 10/100BASE-T Ethernet (all variants, RMII PHY, IEEE 802.3/802.3u, MDIX); RS-485 half-duplex (RS485 & WiFi); Wi-Fi 2.4 GHz 802.11 b/g/n + Bluetooth LE on WiFi (BLE 5.1 in hardware, 4.2 in current firmware); USB-C (host or device, programming/data logging only — cannot power the relay outputs); proprietary expansion port (up to 5 snap-on modules). | ? non vérifié |
power | 12–24 VDC supply (permissible 10.2–27.6 V), consumption 0.6–2.0 W @12 V / 0.6–2.2 W @24 V. Terminals: 0.5–6 mm² wire, 0.80 Nm torque. Functional-earth terminal provided for fieldbus noise immunity. | ? non vérifié |
environment_reliability | −20…+50 °C, IP20, pollution degree 2 (IEC 61010), MTBF 766 205 h (MIL-HDBK-217F @25 °C). RTC keeps time ~10 days without power (NTP sync via Ethernet, or Wi-Fi on AFX00002). | ? non vérifié |
certifications | cULus, ENEC, FCC, CE, CB, UKCA. | ? non vérifié |
can_note | the STM32H747 silicon integrates FDCAN controllers (listed in the Zephyr board feature table), but no CAN/CAN FD transceiver or terminals are documented on the Opta board. > | ? non vérifié |
- Fabricant : Arduino (gamme Arduino « Pro » / industrielle), co-conçu en partenariat avec Finder®, le fabricant italien de relais et d'automatismes industriels (arduino.cc/pro/hardware-arduino-opta).
- Année / statut : lancé le 2023-01-09 (releaseDate: 2023-01-09 dans les métadonnées officielles de la documentation, product.md de docs-content) ; toujours actif et vendu sur la boutique officielle au 2026-10-13.
- Variantes officielles (actuelles, d'après la fiche technique collective AFX00001-AFX00002-AFX00003) : | Variante | SKU | RS-485 | Wi-Fi / BLE | Prix boutique (EUR, 2026-10-13) | |---|---|---|---|---| | Opta Lite | AFX00003 | — | — | 156.00 | | Opta RS485 | AFX00001 | half-duplex | — | 171.00 | | Opta WiFi | AFX00002 | half-duplex | 802.11 b/g/n 2.4 GHz + BLE | 206.00 | Prix relevés sur l'API de recherche de la boutique officielle (store.arduino.cc/products/opta-lite, opta-rs485, opta-wifi).
- Prix de lancement : >
- ⚠️ À propos des noms « Opta Line / Opta Plastic » dans boards.json : > e que Lite/RS485/WiFi + modules d'extension), ni nulle part dans l'arborescence du dépôt arduino/docs-content. La fiche technique classe explicitement le boîtier IP20 (coffret plastique sur rail DIN), et non métal IP40. La vraie distinction produit est celle des trois variantes de connectivité (Lite / RS485 / WiFi), qui partagent toutes le même module de base équipé de relais. La documentation amont de la carte Zephyr mentionne en outre un nom « Opta Advanced » pour le modèle avec la LED du bouton utilisateur supplémentaire (Zephyr board doc), qui est très probablement la variante WiFi. Considérer « Line vs Plastic » comme une fausse attribution.
+ Points forts
- Seule carte Arduino qui soit un micro automate certifié : étage d'alimentation conçu par Finder, 4 relais 10 A, certifications cULus/ENEC/CB, montage sur rail DIN — sketch Arduino et IEC 61131-3 sur le même appareil (store page).
- E/S industrielles 24 V : les entrées acceptent 0–24 V en direct (pas de cartes de conditionnement de signal) ; analogique 0–10 V avec lecture suréchantillonnée jusqu'à 16 bits.
- Fieldbus d'origine : Modbus TCP (Ethernet) et Modbus RTU (RS-485), plus un exemple officiel de serveur OPC UA (user manual, OPC UA section).
- Racine de confiance matérielle : élément sécurisé ATECC608B, conformité aux certificats X.509, mises à jour OTA sécurisées, évaluations régulières de cybersécurité (page boutique/produit).
- Modules d'extension à encliqueter (jusqu'à 5, auto-détectés sur le port d'extension propriétaire) : Ext D1608E (16 entrées / 8 relais 6 A, 146 €), Ext D1608S (156 €), Ext A0602 (6 entrées analogiques / 2 sorties / 4 PWM, 237 €) — store search 2026-10-13.
- Répartition double cœur : le M7 exécute l'automate/le sketch, le M4 disponible comme coprocesseur Zephyr (Zephyr board doc).
- Journalisation de données / mise à jour de programme par clé USB via le mode hôte USB-C ; RTC avec conservation ~10 jours ; borne functional-earth pour des communications fieldbus stables.
− Points faibles
- Conflit d'interruptions I1/I4 : "interrupts in terminals I1 (A0) and I4 (A3) cannot be used simultaneously" — au maximum 7 des 8 entrées peuvent porter des interruptions (user manual, Interrupts).
- Pas de résistances de terminaison RS-485 : "Arduino Opta does not have internal terminator resistors" ; elles doivent être ajoutées externement selon la spécification Modbus (fiche technique collective, section Modbus RTU). La polarité A/B peut aussi devoir être inversée si les communications sont instables.
- L'USB-C n'est pas une alimentation pour l'automate : il alimente seulement le processeur pour la programmation/journalisation de données ; les relais et les E/S exigent l'alimentation 12–24 VDC sur bornier (fiche technique, section USB-C).
- Usure des relais au courant nominal : la durabilité électrique n'est que de 10 k cycles à 10 A résistif (10 M mécaniques) — les charges inductives (AC15 500 VA) et l'absence de fusibles externes sont les pièges de panne classiques (fiche technique, Relay Outputs).
- Retard firmware BLE : le matériel prend en charge BLE 5.1, le firmware seulement 4.2 (fiche technique, Communication table). Le Wi-Fi est 2.4 GHz uniquement.
- Turbulences de migration du core : le core livré est encore arduino:mbed_opta (product.md) alors qu'Arduino migre toutes les cartes mbed vers ArduinoCore-zephyr ; le core Zephyr a des aspérités connues documentées dans son README : échecs de chargement llext "undefined symbol", manque de mémoire au chargement de sketch, sketches qui ne démarrent pas sans surveiller l'UART ou utiliser le mode Debug + commande sketch dans le shell Zephyr (README, Troubleshooting).
- Plafond de fonctionnement 50 °C — les vraies armoires de contrôle avec relais en charge élevée peuvent le dépasser ; prévoir un derating en conséquence (fiche technique, Ratings).
- Confusion de nommage dans les catalogues tiers : comme noté sous Identity, les noms « Opta Line / Opta Plastic » et les affirmations « IP40 » circulent mais ne sont étayés par la documentation propre d'Arduino (IP20, trois variantes de connectivité).
- Retour d'expérience expert expert — expert-arduino
- Retour après quelques semaines sur l'Opta. La certification micro-PLC est reelle, ca change tout par rapport a un MKR classique. Les entrées 24V directes sont super pratiques, plus besoin de cartes conditionneuses. Par contre attention : le USB-C ne fait pas tourner les relais, il faut absolument l… — expert-arduino
- Merci pour le retour. Je debute et je suis un peu perdu avec le noyau. Tu parles de la migration vers Zephyr ? Actuellement je suis sous arduino:mbed_opta et j'ai peur de casser mes scripts en mettant à jour. Est-ce que la doc officielle est claire sur la compatibilite future ? Et pour le BLE, j'ai… — hobb-iste-77
- Pour le BLE, si tu fais du simple capteur/tempo, la difference 4.2/5.1 est souvent invisible, sauf si tu as besoin de longue portee spécifique. Le vrai piege c'est la duree de vie des relais : 10k cycles a 10A resistif. Si tu commutes des charges inductives (moteurs, vannes) sans protection externe… — maker-indus
Retours et projets de la communauté
- Opta sill not connecting to plc ide forum.arduino.cc
- Arduino PLC IDE Freezes when Connecting to Opta forum.arduino.cc
- Arduino Opta OTA error during upload forum.arduino.cc
- datasheet.md en GitHub datasheet
- full-pinout.pdf pdf
- AFX00001-AFX00002-AFX00003-schematics.pdf schematic
- step.zip other
- step.zip other
- Conflit d'interruptions I1/I4 : "interrupts in terminals I1 (A0) and I4 (A3) cannot be used simultaneously" — au maximum 7 des 8 entrées peuvent porter des interruptions (user manual, Interrupts).
- Pas de résistances de terminaison RS-485 : "Arduino Opta does not have internal terminator resistors" ; elles doivent être ajoutées externement selon la spécification Modbus (fiche technique collective, section Modbus RTU). La polarité A/B peut aussi devoir être inversée si les communications sont instables.
- L'USB-C n'est pas une alimentation pour l'automate : il alimente seulement le processeur pour la programmation/journalisation de données ; les relais et les E/S exigent l'alimentation 12–24 VDC sur bornier (fiche technique, section USB-C).
- Usure des relais au courant nominal : la durabilité électrique n'est que de 10 k cycles à 10 A résistif (10 M mécaniques) — les charges inductives (AC15 500 VA) et l'absence de fusibles externes sont les pièges de panne classiques (fiche technique, Relay Outputs).
- Retard firmware BLE : le matériel prend en charge BLE 5.1, le firmware seulement 4.2 (fiche technique, Communication table). Le Wi-Fi est 2.4 GHz uniquement.
- Turbulences de migration du core : le core livré est encore arduino:mbed_opta (product.md) alors qu'Arduino migre toutes les cartes mbed vers ArduinoCore-zephyr ; le core Zephyr a des aspérités connues documentées dans son README : échecs de chargement llext "undefined symbol", manque de mémoire au chargement de sketch, sketches qui ne démarrent pas sans surveiller l'UART ou utiliser le mode Debug + commande sketch dans le shell Zephyr (README, Troubleshooting).
- Plafond de fonctionnement 50 °C — les vraies armoires de contrôle avec relais en charge élevée peuvent le dépasser ; prévoir un derating en conséquence (fiche technique, Ratings).
- Confusion de nommage dans les catalogues tiers : comme noté sous Identity, les noms « Opta Line / Opta Plastic » et les affirmations « IP40 » circulent mais ne sont étayés par la documentation propre d'Arduino (IP20, trois variantes de connectivité).
- Premier sketch : faire clignoter une LED sur Arduino Opta debutant Schéma : IMG-opta-plc-debutant-1-opta-clignotement-led.svg — Arduino Opta vue de face avec les 4 LED utilisateur surlignées et le câble USB-C de programmation branché
- Lire une entrée numérique 24 V (capteur de proximité) debutant Schéma : IMG-opta-plc-debutant-2-opta-entree-numerique-24v.svg — capteur de proximité trois fils alimenté en 24 V dont la sortie est raccordée à la borne I1 de l'Opta avec le schéma de câblage PNP
- Commander une charge 230 V avec un relais de sortie debutant Schéma : IMG-opta-plc-debutant-3-opta-sortie-relais.svg — sortie OUTPUT1 de l'Opta en contact NO commandant un contacteur de moteur 230 V protégé par un fusible externe avec le schéma de puissance
- Server Modbus TCP : exposer les relais sur Ethernet intermediaire Schéma : IMG-opta-plc-intermediaire-1-opta-modbus-tcp.svg — Opta connectée au port Ethernet servant des coils Modbus TCP sur le port 502 à un superviseur SCADA sur le réseau industriel
- Lire un capteur analogique 0–10 V sur les entrées Opta intermediaire Schéma : IMG-opta-plc-intermediaire-2-opta-entree-analogique.svg — transmetteur de pression 0-10 V alimenté en 24 V dont la sortie analogique est raccordée à la borne I1 de l'Opta avec le diviseur interne 12 bits
- Remonter des données machine en MQTT via Ethernet intermediaire Schéma : IMG-opta-plc-intermediaire-3-opta-mqtt-industriel.svg — Opta publiant sur un broker MQTT les états de ses entrées vers un serveur de supervision et un dashboard dans le cloud via le réseau Ethernet
- Exploiter le double cœur : M7 pour le PLC, M4 en coprocesseur avance Schéma : IMG-opta-plc-avance-1-opta-double-coeur-rpc.svg — architecture interne du STM32H747 de l'Opta avec le cœur M7 exécutant le sketch et le cœur M4 en coprocesseur Zephyr reliés par mémoire partagée
- Watchdog et conception faille-sûre en environnement industriel avance Schéma : IMG-opta-plc-avance-2-opta-watchdog-surete.svg — chronogramme d'un watchdog matériel redémarrant l'Opta après un blocage du sketch avec bascule des relais en état sûr contact ouvert
- Mises à jour sécurisées et élément de sécurité ATECC608B avance Schéma : IMG-opta-plc-avance-3-opta-ota-securite.svg — chaîne de confiance d'une mise à jour OTA sur l'Opta du serveur cloud au bootloader en passant par la vérification de signature par l'ATECC608B
Bibliothèque de code — exemples écrits pour cette carte
relais_securise.inoArduinoentrees_numeriques.inoArduinoanalogique_0_10v.inoArduinomodbus_tcp_esclave.inoArduinomodbus_rtu_maitre.inoArduinomqtt_telemetrie.inoArduinoweb_relais.inoArduinoarret_urgence.inoArduinocycle_machine.inoArduinosortie_analogique.inoArduino
Exemples et dépôts trouvés en ligne
- FinderCZ/plcide-modbusRTU github.com
- FinderCZ/ide-modbusRTU github.com
- bsatrom/opta-energy-management-with-blues github.com