Wemos LOLIN C3 Pico con ESP32-C3

La Wemos LOLIN C3 Pico è una piccola scheda compatibile con gli standard WiFi 802.11 e Bluetooth LE, utilizza un chip RISC-V ESP32-C3. Può essere programmata direttamente con l’IDE di Arduino o tramite MicroPython.

LOLIN C3 Pico

Descrizione

La scheda Wemos LOLIN C3 Pico con ESP-32 appartiene alla serie delle schede C3 prodotte da Wemos LOLIN ed è un’evoluzione della C3 mini.
E’ poi un’evoluzione delle schede Wemos D1 mini il cui primo modello risale a 2015. A tal proposito vedere i precedenti articoli:

LOLIN C3 Pico raccolta

La scheda Wemos LOLIN C3 Pico è una piccola scheda, misura solo 25,4 × 25,4 mm, pari ad un 1″ quadrato. Basata sull’ESP32-C3 RISC-V, dispone di connettività WiFi a 2,4 GHz e Bluetooth Low Energy, alcuni I/O.
E’ dotata on-boar del supporto per batteria Li-Po, inclusi i circuiti di ricarica.
Sul PCB  sono  inoltre presenti  un LED RGB e un connettore I2C per collegare display o sensori.
La LOLIN C3 Pico con ESP-32-C3 offre 4MByte di memoria Flash, 11 pin digitali di I/O che supportano PWM, I2C e One-Wire (tranne D0) tutti funzionanti con una tensione massima di 3,3Vcc e 1 ingresso analogico (max 3,2Vcc).
Pagina originale del produttore C3 Pico — WEMOS documentation

LOLIN C3 Pico - viste del PCB

Specifiche tecniche

  • SoC – Espressif Systems Microcontrollore RISC-V (RV32IMC) single-core a 32 bit di Espressif Systems ESP32-C3FH4 fino a 160 MHz  (datasheet);
  • 400 KB di SRAM e 4 MB di Flash;
  • Connettività – WiFi 4 a 2,4 GHz e Bluetooth 5.0 LE (nel SoC);
  • Header di espansione: 2 connettori a 8 pin con un massimo di 12 GPIO;
  • ADC, I2C, SPI, UART (tensione I/O 3,3 V);
  • Porta LOLIN I2C;
  • USB – 1x USB di tipo C per alimentazione e programmazione a 5 V;
  • Connettore JST a 2 pin per batteria Li-Po e supporto per la ricarica da 500 mA;
  • Alimentazione elettrica: 5 V tramite porta USB-C o pin VIN, batteria tramite Connettore JST
  • Varie – Pulsante di ripristino e pulsante utente, LED RGB, led batteria in carica;
  • Dimensioni – 25,4 x 25,4 mm
  • Peso: 2,6 grammi

Schema elettrico

Scarica schema elettrico in PDFLOLIN C3 Pico - schema elettrico

Lo schema elettrico della scheda Wemos LOLIN C3 Pico è basato sul chip ESP32-C3 ed è suddiviso in vari blocchi, tra i principali troviamo : ESP32-C3 Core, Power, Battery.

ESP8266 Core

  • Processore singolo-core RISC-V a 32 bit, fino a 160 MHz ESP32-C3 (Datasheet).
  • Punteggio CoreMark®:
    1 core a 160 MHz: 407.22 CoreMark; 2.55 CoreMark/MHz
  • 384 KB ROM
  • 400 KB SRAM (16 KB per la cache)
  • 8 KB SRAM in RTC
  • Flash integrata (vedere dettagli nel Capitolo 1 Confronto Serie ESP32-C3)
  • Interfacce SPI, Dual SPI, Quad SPI, e QPI che permettono il collegamento a molteplici flash esterne
  • Accesso alla flash accelerato dalla cache
  • Supporta la Programmazione in-Circuit della flash (ICP)

LOLIN C3 Pico esp32-c3 - circuito core

Power

Per ridurre la tensione in ingresso da USB o batteria alla tensione di funzionamento della scheda di 3.3V. Viene utilizzato il chip ME6211c33 High Speed LDO Regulators, High PSRR, Low noise (Datasheet).

 

Circuito di carica batteria

Sulla scheda è anche presente il circuito che permette di caricare la batteria collegata, basata sul chip TP4054 (datasheet). Connettore della batteria: porta batteria PH-2.0 con ricarica da 500mA.

LOLIN C3 Pico esp32-c3 - circuito batteria

Nel circuito sono visibili due Jumper JP1 e JP2.

  • JP1 VBAT: Il ponticello, se cortocircuitato permette di monitorare la tensione della batteria collegata al modulo. Sul circuito è presente un partitore in modo da non superare la tensione di 3.2V massima per il pin IO3.
  • JP2 LED:  Il ponticello, se cortocircuitato permette di abilitare un led che mostra quando la batteria è in carica.

LOLIN C3 Pico - connettore batteria

Connettore batteria

Interfaccia I2C

L’ESP32-C3 non ha pin I2C dedicati. Tuttavia, è possibile implementare I2C basato su software (bit-banging) utilizzando qualsiasi pin GPIO disponibile. La scheda dispone di uno speciale connettore I2C JST SH, con passo di 1mm, per collegare display sensori.

  • SDA => IO8
  • SCL => IO10

Interfaccia SPI

Per il collegamento SPI , Master e Slave sono collegati da tre fili di dati, solitamente chiamati MISO (Master In, Slave Out), MOSI (Master Out, Slave In) e M-CLK.

  • M-CLK => IO1
  • MISO => IO0
  • MOSI => IO4
  • (SPI Bus SS (CS) è IO5

 

LED RGB

Sulla scheda è presente un piccolo led RGB tipo WS2812B pilotato dal IO7

LOLIN C3 Pico esp32-c3

Pinout Completo

PINFunzioneESP-32 C3
1EN
EN /resetCHIP_EN
23IO-MISO, (battery)GPIO3
32IO-SCKGPIO2
41ADC-1GPIO1
50ADC-0GPIO0
64IO-MOSIGPIO4
75IO-SSGPIO5
83V3.3V3.3V
1TXTXDGPIO20
2RXRXDGPIO21
310IO-SCLGPIO10
48IO-SDAGPIO8
57RGB-LEDGPIO7
66IO-SSGPIO6
7GNDGroundGND
8VVIN (BAT o VBUS)
Ourpcb

LOLIN C3 Pico esp32-c3 - pin

Dove trovare il modulo

Il modulo Wemos LOLIN C3 Pico, con ESP-32-C3 può essere acquistato direttamente dal produttore LOLIN Official Store presso AliExpress.

LOLIN C3 Pico esp32-c3 - blister

LOLIN C3 Pico esp32-c3 - kit

La scheda Wemos LOLIN C3 Pico viene fornita con due connettori maschi da saldare a vostra cura. Vi permetterà di utilizzare diversi piccoli shield che si innestano sull’unità principale e permettono di ampliare notevolmente le capacità di connessione con il mondo esterno.
Tra l’altro la piedinatura è simile ai moduli Wemos D1 mini, per cui molti si potranno utilizzare anche con questa scheda.LOLIN C3 Pico esp32-c3 - confronto

Gestione del modulo da parte dell’IDE

Installazione del pacchetto EPS32

Per prima cosa abbiamo bisogno del pacchetto ESP32 nell’IDE di Arduino. Quindi si dovrà aprire l’IDE di Arduino e andare su File -> Preferenze.

Immettere il seguente indirizzo nelle impostazioni predefinite: https://dl/package_esp32_dev_index.json
Confermare poi con OK .

LOLIN C3 Pico esp32-c3

Ora si vai su Strumenti -> Gestore  schede e cercare “ESP32

Una volta installato il pacchetto, i modelli ESP32 saranno disponibili nell’IDE di Arduino.

Come caricare uno  Sketch con  l’IDE Arduino

Impostazione corretta della scheda

Per caricare il proprio sketch occorre  selezionare la scheda giusta per Wemos LOLIN C3 Pico selezioneremo nel gruppo esp32 la LOLIN C3 Mini

NOTE

Nelle impostazioni della scheda presenti nella cartella relativa alla scheda “lolin_c3_mini” (file pins_arduino.h) sono visibili le impostazioni dei pin della scheda. Sotto le impostazioni presenti

Come è riportato è presente anche l’impostazione del BUILTIN_LED, collegato al pin 7. Il led in questione è di tipo RGB, per cui il normale sketch “blink” non funzionerà.
Sotto la versione modificata che permette il lampeggio del led RGB di colore Rosso.

Mettere la scheda in modalità Device Firmware Upgrade (DFU)

Prima di poter caricare il proprio sketch occorre mettere il Wemos LOLIN C3 Pico mini in modalità Aggiornamento Firmware (DFU). Questo deve essere fatto  prima di ogni caricamento di sketch

  • Tenere premuto il pulsante 9
  • Premere il pulsante RST
  • Rilasciare il pulsante 9 quando si sente il segnale di connessione USB

Nel caso la procedura non andasse a buon fine occorrerà ripetere la procedura. Se l’operazione è andata a buon fine potrebbe essere necessario premere il pulsante di reset (RST) per far partire il programma.

Test di prova per riconoscimento Reti Wi-Fi

Per verificare che scheda Wemos LOLIN C3 Pico riconosca le reti Wi-Fi presenti si potrà ricorrere al programma disponibile nell’IDE e che si trova File -> Esempi -> ESP32 -> WiFiScan, sotto un’esempio di output.

Test del modulo

Gestione display RGB

Verificheremo la gestione del display RGB tipo WS2812B pilotato dal GPIO7 presente sulla scheda Wemos LOLIN C3 Pico. 

Visualizzazione sui display OLED

Per il test si è utilizzata la scheda Wemos LOLIN C3 Pico collegato al Display OLED Shield V2.1.0

Materiale utilizzato

Per il collegamento tra la scheda Wemos LOLIN C3 Pico e il modulo Display OLED Shield V2.1.0 si è utilizzata una dual base già utilizzata per gli altri moduli Shield, questa risulta compatibile anche con la nuova scheda.

LOLIN C3 Pico esp32-c3

Scheda Wemos LOLIN C3 Pico

Schema dei collegamenti

LOLIN C3 Pico esp32-c3 - schema collegamento display

Foto del display OLED gestito Wemos LOLIN C3 Pico

LOLIN C3 Pico - test display

Programma utilizzato

Sotto è riportato il codice utilizzato, per quanto riguarda le librerie di gestione del display, vedere l’articolo OLED Shield V2.1.0 – Wemos D1 mini.
Il programma si limita a scrivere un messaggio sul display

Utilizzi del Wemos LOLIN C3 Pico con ESP32-C3

Gestione di un display 135×240 con interfaccia SPI a 4 fili.

Wemos D1 mini – Raccolta Shield disponibili

Per la scheda Wemos D1 mini  e C3 Pico sono disponibili vari shield che appartengono a varie categorie: Display & Interactive Shield, Environment, Power, Control, Others.
Per l’elenco vedere articolo Wemos D1 mini – Raccolta Shield disponibili

Wemos D1 mini shield