SKU: OT3345 Numéro d’article: OT3345 EAN: 8721244302812
Cette carte de développement ESP32-C3 combine une connectivité sans fil avec un écran OLED compact de 0,42 pouce. La carte est basée sur la puce fiable ESP32C3FN4/FH4 et dispose d’une antenne céramique intégrée pour le WiFi et le Bluetooth. Avec 4 Mo de mémoire flash et la programmation USB, elle est idéale pour divers projets IoT.
Grâce à sa faible consommation et à sa connectivité polyvalente, cette carte convient pour :
Cette carte IoT compacte est basée sur la puce ESP32-C3 (RISC-V) et dispose d’un écran OLED intégré de 0,42 pouce. Comme le brochage et le pilotage de l’écran diffèrent des modules ESP32 standard, vous trouverez ci-dessous les instructions spécifiques pour utiliser correctement la carte.
La documentation en ligne est souvent confuse. Utilisez les affectations de broches ci-dessous pour cette carte spécifique (style ABRobot) :
LOW = allumée, HIGH = éteinte).Pour programmer cette carte, sélectionnez les paramètres suivants dans l’IDE Arduino :
ESP32C3 Dev ModuleEnabled (essentiel pour voir Serial.print).DIO (par défaut).L’écran utilise un contrôleur SSD1306, mais sa résolution physique n’est que de 72x40 pixels. Le tampon interne est toutefois de 128x64. Vous devez appliquer un "offset" (décalage) pour rendre le texte visible.
Bibliothèque nécessaire : Installez la bibliothèque U8g2 (de olikraus) via le gestionnaire de bibliothèques Arduino.
Exemple de code :
#include
#include
// Initialisation pour ESP32-C3 avec I2C sur la broche 5 (SDA) et 6 (SCL)
// Nous utilisons le pilote standard 128x64, mais seulement une partie de l’écran.
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE, 6, 5);
// Paramètres pour l’écran de 0,42 pouce
int width = 72;
int height = 40;
// Les offsets sont nécessaires pour centrer la sortie dans le tampon 128x64
int xOffset = 30; // 30 fonctionne le mieux en pratique
int yOffset = 12; // (64 - 40) / 2 = 12
void setup(void) {
delay(1000); // Courte pause pour la stabilité
u8g2.begin();
u8g2.setContrast(255); // Luminosité maximale
u8g2.setBusClock(400000); // Vitesse I2C de 400 kHz
u8g2.setFont(u8g2_font_ncenB10_tr); // Choisissez une police lisible
}
void loop(void) {
u8g2.clearBuffer(); // Efface le tampon interne
// Dessine un cadre pour tester la zone visible
u8g2.drawFrame(xOffset, yOffset, width, height);
// Dessine du texte (tenez compte de xOffset et yOffset !)
u8g2.setCursor(xOffset + 5, yOffset + 25);
u8g2.print("ESP32-C3");
u8g2.sendBuffer(); // Envoie les données à l’écran
delay(1000);
}
Vous voulez tester les autres broches ? Utilisez cette boucle simple. Attention : la broche 8 commande aussi la LED intégrée.
// GPIO 8 est la LED intégrée (LOW = ALLUMÉE)
#define LED_PIN 8
void setup() {
pinMode(LED_PIN, OUTPUT);
}
void loop() {
digitalWrite(LED_PIN, LOW); // LED allumée
delay(500);
digitalWrite(LED_PIN, HIGH); // LED éteinte
delay(500);
}