« Esp32_oscilloscope » de Bojan Jurca est un croquis Arduino open source qui peut transformer une carte ESP32 en un oscilloscope Web fonctionnant via WiFi.
Nous avions également écrit sur le projet Scoppy visant à transformer le Raspberry Pi Pico W en un oscilloscope à 2 canaux, mais il n’y a aucune raison pour que le microcontrôleur plus puissant de la série ESP32 ne puisse pas être utilisé dans le même but, et le projet Esp32_oscilloscope de Bojan fait exactement cela et fonctionne avec les cartes ESP32, ESP32-S2, ESP32-S3 et ESP32-C3 en utilisant l’interface I2S pour un échantillonnage rapide des données.

Le projet a été initialement conçu pour démontrer les capacités multitâches du microcontrôleur ESP32 avec Arduino, mais il a évolué vers un micrologiciel d’oscilloscope ESP32. Il fonctionne à la fois avec des signaux de sortie/PWM et d’entrée, des signaux numériques (0 ou 1) et analogiques (0 à 4095), et l’interface Web affiche jusqu’à 736 échantillons par écran bien que le taux d’échantillonnage puisse ne pas être complètement constant à tout moment.
Pour l’installer sur votre carte, vous devrez charger le projet dans l’IDE Arduino et définir les informations d’identification de votre routeur ainsi que le nom d’hôte :
// si ces #définitions sont manquantes, STAtion ne sera pas configurée #define DEFAULT_STA_SSID « YOUR_STA_SSID » // <- remplacer par vos informations #define DEFAULT_STA_PASSWORD "YOUR_STA_PASSWORD" // <- remplacer par vos informations // définir le nom qu'Esp32 utilisera comme nom d'hôte #define HOSTNAME "MyEsp32Oscilloscope" // <- remplacer par vos informations, max 32 octets
|
// si ces #définitions manquent, STAtion ne sera pas configurée #define DEFAULT_STA_SSID « YOUR_STA_SSID » // <- remplacer par vos informations #define DEFAULT_STA_PASSWORD « YOUR_STA_PASSWORD » // <- remplacer par vos informations // définit le nom qu’Esp32 utilisera comme nom d’hôte #define HOSTNAME « MyEsp32Oscilloscope » // <- remplacer par vos informations, max 32 octets |
Le programme s’appuie sur le système de fichiers FAT, vous devrez donc sélectionner l’un des schémas de partition FATFS dans Outils->Schéma de partition->… sauf si la carte ESP32 ne dispose pas de flash externe, auquel cas vous devrez commenter le
#définir FILE_SYSTEM FILE_SYSTEM_FAT
|
#définir FILE_SYSTEM FILE_SYSTEM_FAT |
…pour que le firmware utilise progmem pour stocker le fichier oscilloscope.html. Vous pouvez maintenant créer le programme et le flasher sur votre tableau. Vous devrez également télécharger quelques fichiers dans le répertoire /var/www/html (android-192-osc.png, apple-180-osc.png, oscilloscope.html) via FTP, et vous devriez pouvoir accéder l’oscilloscope avec l’URL « http://your-esp32-ip/oscilloscope.html » ou « http://esp32-hostname/oscilloscope.html » depuis votre navigateur Web.
Si vous manquez de temps et/ou n’avez pas de carte ESP32 sous la main, Bojan propose également une démo sur http://jurca.dyn.ts.si/oscilloscope.html, comme indiqué dans la capture d’écran ci-dessus. Les détails complets du projet Esp32_Oscilloscope sont disponibles sur GitHub. Ce n’est pas la première fois que nous abordons un projet qui affiche l’état des broches GPIO ESP32 dans un navigateur Web, car GPIOViewer fait exactement cela mais sert un cas d’utilisation différent.
Retrouvez l’histoire de Raspberry Pi dans cette vidéo :

-
Arduino Nano ESP32 with headers [ABX00083] - Carte compacte avec microcontrôleur ESP32, WiFi et Bluetooth intégrés, idéale pour projets IoT, automatisation et applications connectées avec Arduino IDE.
-
ELEGOO 2PCS ESP32 Carte de développement Type-C, 2,4 GHz WiFi + Bluetooth Dual Core Microcontrôleur pour Arduino, Support MicroPython, NodeMCU, AP/STA/AP+STA, Puce CP2102
