RuffRuff Apps RuffRuff Apps by Tsun

Tutto ciò che devi sapere su M5Stack Core2

Introduzione

Prima Riunione M5Stack Core2

Il M5Stack Core2 supporta più piattaforme di programmazione come Arduino, MicroPython, e M5Stack UIFlow, rendendolo versatile per vari progetti IoT, inclusi dispositivi per la casa intelligente, strumenti educativi e prototipazione rapida. Il suo design modulare consente una facile espansione con altri moduli M5Stack, migliorando la sua funzionalità per applicazioni diverse.

M5Stack Core2 ESP32 Kit di Sviluppo IoT V1.1

M5Stack Core2 Dev Kit V1.1

Visualizza prodotto

Caratteristiche e Capacità Chiave

Processore

Dual-core ESP32-D0WDQ6-V3, che funziona fino a 240MHz.

Memoria

  • Memoria flash da 16 MB
  • 8 MB di PSRAM

Connettività wireless

  • Wi-Fi 802.11 b/g/n
  • Bluetooth 4.2 BLE

Interfaccia utente

  • 6 pulsanti touch programmabili
  • Motore a vibrazione per feedback aptico

Sensori

  • IMU a 6 assi (MPU6886) per dati di accelerazione e giroscopio

Audio

  • Altoparlante integrato
  • Interfaccia audio digitale I2S

Gestione dell'alimentazione

  • AXP192 PMU per la gestione della batteria
  • Supporta la ricarica USB Type-C
  • Batteria LiPo integrata

RTC

  • Orologio in tempo reale per una misurazione precisa del tempo

Contenuto principale di questo articolo

L'obiettivo principale di questo articolo è fornire una panoramica completa del M5Stack Core2, un innovativo kit di sviluppo IoT basato sul microcontrollore ESP32. Miriamo a:
  • Informare i lettori sulle specifiche hardware, inclusa la potenza di elaborazione, la memoria, le opzioni di connettività e i sensori integrati.
  • Evidenzia caratteristiche uniche come l'interfaccia touch screen, il feedback aptico e il design modulare che consente l'espansione del progetto.
  • Guida gli utenti attraverso i vari ambienti di programmazione (Arduino, MicroPython, UIFlow) supportati da M5Stack Core2, offrendo indicazioni su quale potrebbe essere il migliore per diversi tipi di progetti.
  • Dimostrare potenziali applicazioni mostrando esempi reali in cui l'M5Stack Core2 può essere utilizzato, dagli strumenti educativi ai dispositivi per la casa intelligente.
  • Assistere nella presa di decisioni per hobbisti, educatori e professionisti che considerano questo dispositivo per i loro progetti IoT discutendo i suoi punti di forza, le limitazioni e come si confronta con altre piattaforme simili.
Alla fine di questo articolo, i lettori avranno una comprensione approfondita di ciò che offre l'M5Stack Core2, di come sfruttarne le capacità e se si adatta alle loro esigenze specifiche nel campo dello sviluppo IoT.

Cos'è M5Stack Core2?

Spiegazione dettagliata di M5Stack Core2

Il M5Stack Core2 è un kit di sviluppo IoT avanzato basato su ESP32, progettato sia per principianti che per sviluppatori esperti. Dispone di un processore dual-core ESP32-D0WDQ6-V3 che funziona fino a 240MHz, con funzionalità WiFi e Bluetooth integrate. Questo kit include 16MB di memoria Flash e 8MB di PSRAM per prestazioni migliorate.
I punti salienti del Core2 includono uno schermo touch capacitivo da 2 pollici che consente un'interazione utente intuitiva, pulsanti touch programmabili e un motore di vibrazione integrato per il feedback aptico. Dispone inoltre di un modulo RTC (Real-Time Clock) integrato per una misurazione precisa del tempo, e la gestione dell'alimentazione è affidata al chip AXP192, che controlla in modo efficiente il consumo della batteria. Altre caratteristiche includono un altoparlante, un'interfaccia audio digitale I2S per un'uscita sonora chiara e un sensore IMU a 6 assi sul retro per il rilevamento del movimento.

Gruppi applicabili

Hobbisti e appassionati del fai-da-te

Persone appassionate di elettronica, robotica e progetti IoT alla ricerca di una soluzione tutto-in-uno per sperimentare.

Educatori e Studenti

Insegnanti alla ricerca di strumenti coinvolgenti per insegnare programmazione, elettronica e concetti IoT, così come studenti che apprendono queste materie.

Sviluppatori IoT

Professionisti o appassionati che sviluppano soluzioni IoT e necessitano di una piattaforma compatta e potente con ampie opzioni di connettività.

Creatori e Spazi Hacker

Comunità o individui coinvolti in fiere dei maker, hackathon o spazi collaborativi dove la prototipazione rapida è essenziale.

Progettisti di prodotti

Coloro che prototipano nuovi dispositivi intelligenti o integrano l'IoT in prodotti esistenti, necessitando di una piattaforma versatile per lo sviluppo e il test.

Artisti e Installazioni Interattive

Creativi che utilizzano la tecnologia per migliorare installazioni artistiche o esposizioni interattive con sensori, display e connettività.

Differenza tra M5Stack Core2 e M5Stack Core2 V1.1

Kit di sviluppo IoT M5Stack Core2 ESP32

M5Stack Core2 Kit di sviluppo

Visualizza prodotto
Caratteristica M5Stack Core2 M5Stack Core2 V1.1
Gestione dell'alimentazione Chip AXP192 AXP2101 + INA3221 (Aggiornato
Circuito integrato di potenza)
Colore Indicatore di Alimentazione Verde Blu
RTC (Orologio in tempo reale) Integrato, ma senza batteria dedicata
per RTC
Include una batteria dedicata per
RTC per mantenere l'ora quando
spento
Chip USB CH9102F Stesso, ma l'installazione del driver potrebbe
differire a causa della versione hardware
Progettazione generale Design classico Core2 Versione iterativa con la stessa
fattore di forma ma componenti interni aggiornati
Compatibilità Compatibile con M5GO Bottom per funzionalità aggiuntive Compatibilità con i moduli potrebbe
richiede la rimozione o l'uso di un specifico
Bottom2 per funzionalità completa
Ambiente di programmazione Supporta Arduino, MicroPython, UIFlow Stesso supporto, nessun cambiamento in
ambiente di programmazione
Schermo tattile Schermo touch capacitivo da 2 pollici Stesso, senza cambiamenti nello schermo
specifiche
Motore a vibrazione Incluso per il feedback aptico Incluso, nessun cambiamento
Memoria e processore ESP32-D0WDQ6-V3, 16MB Flash,
8 MB di PSRAM
Stesse specifiche

Hardware M5Stack Core2

Dimensione e risoluzione dello schermo M5Stack Core2

  • Dimensione dello schermo: 2 pollici
  • Risoluzione: 320 x 240 pixel

Processore, Memoria e Archiviazione M5Stack Core2

  • Processore: Dual-core ESP32-D0WDQ6-V3, funzionante fino a 240MHz.
  • Memoria:
      RAM: 8MB PSRAM (RAM Pseudo Statica)
  • Magazzinaggio:
      Memoria flash: 16 MB

Opzioni di connettività

  • WiFi: 802.11 b/g/n, che consente il networking wireless per progetti IoT.
  • Bluetooth: Versione 4.2 BLE (Bluetooth Low Energy), per comunicazioni wireless a bassa potenza e a corto raggio.

Sensori e Periferiche

Sensori

  • IMU a 6 assi (Unità di Misura Inerziale):
      Combina un accelerometro a 3 assi e un giroscopio a 3 assi per il rilevamento del movimento. Utilizza il sensore MPU6886, che fornisce dati per l'orientamento, l'accelerazione e la rotazione.
Questi sensori sono quelli principali integrati nel M5Stack Core2. Tuttavia, il design del dispositivo consente l'espansione tramite vari moduli M5Stack e porte GROVE, che possono aggiungere sensori aggiuntivi come:
Sensori di temperatura
Sensori di umidità
Sensori di luce
Sensori di prossimità
Sensori di pressione
Sensori di campo magnetico (bussola)
ecc.

Periferiche

  • Pulsanti Touch Programmabili:
      Lo schermo include tre pulsanti touch capacitivi, che possono essere programmati per varie funzioni o input utente.
  • Microfono:
      Un microfono integrato consente il rilevamento del suono o le funzionalità di comando vocale.
  • Oratore:
      Integrato per l'uscita audio, utile per allarmi, notifiche o riproduzione musicale.
  • Motore a vibrazione:
      Fornisce feedback aptico, migliorando l'interazione dell'utente in applicazioni come giochi o notifiche.
  • RTC (Orologio in tempo reale):
      Un modulo RTC integrato per tenere traccia del tempo, anche quando il dispositivo è spento, garantendo una misurazione accurata del tempo per la programmazione o operazioni basate sul tempo.
  • Circuito Integrato di Gestione dell'Energia (PMIC):
      Il chip AXP192 gestisce la distribuzione dell'energia, la ricarica della batteria e la regolazione della tensione, aspetti cruciali per mantenere l'efficienza e prolungare la durata della batteria.
  • Porta USB di tipo C:
      Per alimentazione, programmazione e comunicazione dati. Supporta USB OTG per collegare dispositivi esterni come tastiere o mouse in alcune configurazioni.
  • Slot per scheda MicroSD:
      Consente ulteriore spazio di archiviazione, ideale per registrare dati, aggiornare il firmware o memorizzare media.

Alimentazione e durata della batteria

Alimentazione elettrica

  • Tensione di ingresso: 5V tramite porta USB-C per la ricarica e l'alimentazione del dispositivo.
  • Gestione dell'alimentazione: l'alimentazione è gestita dal chip AXP192 nel Core2 originale, e dall'AXP2101 + INA3221 nel Core2 V1.1, consentendo un controllo efficiente del consumo energetico.
  • Ricarica della batteria: Supporta la ricarica tramite la porta USB-C, con la possibilità di opzioni di alimentazione esterna attraverso pin specifici se configurati correttamente.

Batteria

  • Batteria Inclusa: Una batteria LiPo da 390mAh è integrata nel Core2, fornendo energia quando è scollegato da fonti esterne.
  • Estensione della batteria: Per una durata della batteria prolungata, gli utenti possono aggiungere moduli batteria esterni come il M5GO Bottom2 (che include una batteria aggiuntiva da 500mAh) o impilare più moduli batteria poiché sono parallellabili.

Durata della batteria

  • Durata d'uso: la durata della batteria varia significativamente in base all'uso.
      Modalità inattiva o a basso consumo: con lo schermo spento e in modalità a basso consumo, può durare per ore o addirittura giorni, a seconda di quanto frequentemente si riattiva o della profondità della modalità di sospensione utilizzata.
      Uso attivo: Con lo schermo acceso e programmi in esecuzione attiva, specialmente quelli che utilizzano WiFi o Bluetooth, la durata della batteria può variare da poche ore fino a circa 5-6 ore, a seconda di fattori come la luminosità dello schermo, l'uso dei sensori e il carico di elaborazione.
  • Modalità di sospensione: la modalità di sospensione profonda dell'ESP32 può estendere notevolmente la durata della batteria, potenzialmente per settimane o mesi se il dispositivo deve svegliarsi solo occasionalmente, ad esempio per la registrazione dei dati o controlli periodici del WiFi.
  • Miglioramenti: Gli utenti spesso segnalano che possono estendere la durata della batteria attraverso ottimizzazioni software, come l'oscuramento dello schermo, la riduzione delle frequenze di polling dei sensori o l'uso di strategie di gestione energetica efficienti come la modalità di sospensione profonda per i periodi di inattività.

Note aggiuntive

  • Indicatore di alimentazione: C'è un LED integrato (verde nell'originale, blu nella V1.1) che indica lo stato di alimentazione e può essere programmato per notifiche personalizzate.
  • Batteria RTC: Nel modello V1.1, c'è una piccola batteria aggiuntiva per l'RTC, che garantisce la misurazione del tempo anche quando la batteria principale è scarica o rimossa.

Software e Sviluppo

Linguaggi di programmazione supportati

  • C/C++ (usato con Arduino IDE)
  • Python (variante MicroPython per ESP32)
  • JavaScript (per alcune applicazioni web, non programmazione diretta del dispositivo ma può interagire tramite interfacce web o node-red).

Piattaforme di programmazione supportate

  • Arduino: Questa è una delle piattaforme più popolari per l'ESP32. L'IDE Arduino con supporto ESP32 ti permette di scrivere e caricare codice su M5Stack Core2 usando C/C++.
  • MicroPython: Un'implementazione di Python 3 per microcontrollori, MicroPython è particolarmente adatto a chi preferisce la sintassi di Python. Fornisce un REPL interattivo (Read-Eval-Print Loop) per il test immediato del codice, rendendolo particolarmente adatto all'uso educativo.
  • UIFlow: Questo è il linguaggio di programmazione visuale proprietario di M5Stack o un ambiente di programmazione basato su blocchi simile a Scratch o Blockly. È progettato per essere molto intuitivo, permettendoti di programmare il Core2 collegando blocchi che rappresentano funzioni di codice. UIFlow può generare codice MicroPython o Arduino in background, che può poi essere ulteriormente modificato o utilizzato direttamente.
Ognuno di questi ambienti offre vantaggi diversi:
  • Arduino offre un'esperienza di programmazione di microcontrollori più tradizionale con accesso a un vasto ecosistema di librerie.
  • MicroPython rende più facile per i principianti o gli appassionati di Python iniziare con la programmazione hardware, offrendo un'esperienza di codifica più leggibile e interattiva.
  • UIFlow è eccellente per la prototipazione rapida, l'istruzione o per chi potrebbe non avere una vasta esperienza di programmazione ma desidera creare dispositivi IoT funzionali.
Queste piattaforme non si escludono a vicenda; puoi iniziare con una e passare a un'altra o usarne una diversa per vari aspetti del tuo progetto, sfruttando le loro caratteristiche uniche per adattarsi alle tue esigenze di sviluppo.

Configurazione dell'ambiente di sviluppo

Installazione di Arduino IDE

Visita Arduino.cc e clicca su software, oppure puoi cliccare QUI.
Scarica Arduino IDE, installalo.

Installazione della Gestione della Scheda

L'URL del Board Manager viene utilizzato per indicizzare le informazioni della scheda di sviluppo per una piattaforma specifica. Nel menu dell'IDE Arduino, seleziona File -> Preferenze
 
M5Stack Core2-1
Copia l'URL di gestione schede M5Stack qui sotto nel campo URL aggiuntivi del Gestore schede, e salva.
 
M5Stack Core2-2
Nella barra laterale, seleziona Board Manager, cerca M5Stack, e clicca su Installa
M5Stack Core2-3

Selezionare la scheda di sviluppo

A seconda del prodotto utilizzato, selezionare la scheda di sviluppo corrispondente sotto Strumenti -> Scheda -> M5Stack -> {Product Name}.
M5Stack Core2-4

Guida rapida per M5Stack UIFlow 2.0 Web IDE

Cos'è M5Stack UIFlow
UIFlow2 è un IDE di programmazione grafica user-friendly che offre una spinta del programma wireless e cablata senza interruzioni, funzionalità di clic e esecuzione del programma, eliminando la necessità di compilazioni ripetute. Si integra perfettamente con oltre 100 periferiche hardware e sensori M5, consentendo un'aggiunta e un'espansione senza sforzo con un solo clic. Questa funzione consente la costruzione del prototipo del prodotto e accelera il processo di sviluppo, portando infine a una maggiore produttività ed efficienza. In questo tutorial, dimostreremo come caricare il firmware della versione UIFlow 2.x sul tuo dispositivo M5Stack e utilizzare l'IDE Web UIFlow per lo sviluppo secondario del prodotto.
Prima di programmare con UIFlow, ci sono alcuni passaggi preparatori da seguire:
  • Installa lo strumento di masterizzazione firmware M5Burner.
  • Usa M5Burner per caricare il firmware per il dispositivo corrispondente, accedi al tuo account e configura la connessione Wi-Fi per il dispositivo.
  • Apri la versione 2.0 di UIFlow Web IDE, seleziona l'opzione dispositivo online appropriata e clicca per connetterti.
  • Trascina e rilascia i blocchi per modificare il programma, e clicca sul pulsante Esegui per eseguire il debug del programma.
Informazioni aggiuntive:
M5Burner è uno strumento unificato per il flashing del firmware introdotto da M5Stack. Permette agli utenti di caricare facilmente il firmware UIFlow e scrivere informazioni di configurazione come le impostazioni Wi-Fi durante il processo di flashing.
Installa M5Burner
Account della Comunità M5Stack
Per accedere al software M5Burner e UIFlow 2.0/1.0, è necessario registrare un account della Community M5Stack. Si prega di notare che questo account può essere utilizzato anche per accedere alla pagina di login di M5Burner e UIFlow 2.0/1.0. Per registrarsi a un account della Community M5Stack, fare clic sul pulsante 'Register' nel software M5Burner, nel software UIFlow 2.0/1.0 o nella versione web.
Programmi di masterizzazione e esecuzione del firmware
Installazione del driver USB
Selezione della porta
Per collegare il dispositivo al computer, utilizzare un cavo USB. Quindi, fare clic sul pulsante Burn per il firmware pertinente in M5Burner. Successivamente, sarà necessario inserire le informazioni Wi-Fi e selezionare la porta del dispositivo corretta.
 M5Stack Core2-5
Masterizzazione del firmware
Collega il dispositivo al computer tramite un cavo USB, seleziona il pulsante Burn per il firmware corrispondente in M5Burner e inserisci la configurazione Wi-Fi a cui il dispositivo è preconnesso, inclusi Wi-Fi SSD e Password Wi-Fi, oltre ad altre configurazioni del dispositivo che devono essere aggiunte o modificate.
  
M5Stack Core2-11M5Stack Core2-7
Apri UIFlow
Clic https://uiflow2.m5stack.com, apri M5Stack UIFlow 2.0
Fai clic sulla barra del dispositivo nell'angolo in basso a destra, puoi trovare il tuo nuovo dispositivo in questo modo:
  
M5Stack Core2-8
M5Stack Core2-9
Ora puoi usare normalmente M5Stack UIFlow.

Librerie e SDK

Biblioteche


Kit di sviluppo software


Come collegare M5Stack a Arduino IDE

Collega il tuo M5Stack Core2 e il tuo computer.
Apri Arduino IDE, clicca su strumenti-Scheda-M5Stack-M5Core2
 
M5Stack Core2-13
Scegli la porta giusta, cambia la tua velocità di upload a 1500000
 
M5Stack Core2-14

Esempi di programmazione di base

Clicca su File-Esempi-M5Core2, puoi trovare gli esempi di programmazione di base.
Quando hai finito di verificare, puoi caricare il codice nel tuo M5Stack Core2.
 
M5Stack Core2-15

Disimballaggio e installazione

Cosa c'è nella scatola

  • 1x Core2 V1.1
  • 1x USB di tipo C (20 cm)
  • 1x CHIAVE ESAGONALE
M5Stack Core2-16
La parte posteriore del M5Stack Core2 presenta i seguenti componenti chiave:
  • Basato su ESP32 con Wi-Fi integrato
    • 16M Flash e 8M PSRAM
  • Altoparlante integrato, indicatore di alimentazione, motore a vibrazione, RTC, amplificatore I2S, pulsante di accensione.
  • Slot per scheda TF (fino a 16GB)
  • Batteria al litio integrata con chip di gestione dell'alimentazione
  • Scheda piccola indipendente con IMU a 6 assi e microfono PDM
  • Presa e pin M-Bus

M5Stack Core2-17

Una volta aperto il coperchio posteriore etichettato con «Core2» sul lato sinistro, troverai il chip MIC (SPM1423), il chip IMU (MPU6886, che include un giroscopio a 3 assi e un accelerometro a 3 assi), e i pin per le connessioni.
 

M5Stack Core2-18

Firmware di fabbrica M5Stack Core2

La pagina Firmware di Fabbrica del M5Stack Core2 offre una panoramica completa delle capacità del dispositivo. Visualizza informazioni chiave come il chip MPU6886, l'orologio in tempo reale, il livello della batteria e varie opzioni di impostazione. La pagina include anche funzionalità come l'accensione/spegnimento, lo stato della connessione Wi-Fi e una funzione timer. Inoltre, consente la visualizzazione di immagini e musica memorizzate sulla scheda SD e fornisce una rappresentazione visiva del livello del volume attuale. Questa pagina funge da interfaccia intuitiva per gestire le funzioni essenziali del dispositivo e monitorarne le prestazioni.
 

M5Stack Core2-19

Test della Funzione di Sistema

Il sistema supporta il test di connessione I/O, il test del motore intelligente, il test del buzzer e il test della funzionalità dello schermo TFT. Questi test aiutano a garantire che tutti i componenti funzionino correttamente, permettendo agli utenti di verificare le caratteristiche e le funzionalità chiave del dispositivo.

  

M5Stack Core2-20

Supporta Wi-Fi

Nella pagina Wi-Fi, il M5Stack Core2 mostra le reti Wi-Fi disponibili nelle vicinanze, ordinate per forza del segnale. Gli utenti possono facilmente visualizzare e selezionare la rete migliore per la connessione, garantendo una qualità del segnale e una stabilità ottimali. Questa funzione consente al dispositivo di connettersi rapidamente a una rete, fornendo un supporto affidabile per le applicazioni IoT e le operazioni remote.
 

M5Stack Core2-21

Esempi M5Stack Core2

Progetti UIFlow

Oggi uso il M5Stack 8ENCODER e il M5Stack Core2 per mostrarti come usare M5Stack UIFlow

Collegare

Prima di tutto, collega M5Stack Core2 e il computer con un cavo Type-C, e collega M5Stack Core2 e 8ENCODER con un cavo Grove

Poiché l'unità 8ENCODER ha 8 canali, abbiamo 9 etichette sullo schermo del M5Stack Core2 come questa:
 

M5Stack Core2-22

Aggiungi unità

Successivamente, aggiungi un'unità, trova 8Encoder e scegli il Bus su I2C
 

M5Stack Core2-23

Impostare

Inizializza I2C SCL a 33, SDA a 32, frequenza a 100K
Inizializza l'indirizzo I2C encoder8_0 a 0x41
 

M5Stack Core2-24

Ciclo continuo

Impostazione del valore del canale 8Encoder M5Stack
 

M5Stack Core2-25

Impostazione colore LED RGB canale 8Encoder M5Stack
 
M5Stack Core2-26
Facciamo un prototipo di una serratura a combinazione con suoneria
  
M5Stack Core2-28
Se il valore del canale 1 = valore del canale 2, il valore del canale 3 = valore del canale 4
Etichetta8 testo 'Destra', e il cicalino forte ci ricorda
Altrimenti, testo label8 'Sbagliato', buzzer silenzioso
Carichiamo il codice e scopriamo cosa succederà
 
M5Stack Core-29M5Stack Core2-30
E possiamo gestire una logica più complessa. Divertiti con il tuo M5Stack Core2.

Progetti Fai-da-Te Interessanti per M5Stack Core2


M5Stack Core2 e Home Assistant

Integrazione con Home Assistant

Poiché M5Stack Core2 utilizza un chip ESP32, possiamo usare ESPHome per collegare M5Stack e Home Assistant.
 
M5Stack Core2-31
M5Stack Core2-32

Configurazione di M5Stack Core2 come controller per l'automazione domestica

Installa ESPHome in Home Assistant

  • Se non è già installato, vai su Impostazioni di Home Assistant > Componenti aggiuntivi > Negozio componenti aggiuntivi.
  • Cerca 'ESPHome' e installalo. Una volta installato, avvia il componente aggiuntivo.

Crea un Nuovo Dispositivo in ESPHome

  • Dopo che il componente aggiuntivo ESPHome è in esecuzione, vai alla pagina ESPHome nella tua istanza di Home Assistant.
  • Fai clic su Nuovo dispositivo in basso a destra, quindi Continua.
  • Assegna un nome al tuo dispositivo, ad esempio, 'm5stack-core2', e seleziona ESP32 come piattaforma, quindi scegli M5Stack Core o M5Stack Core2 se elencati (la denominazione esatta potrebbe variare in base alla versione di ESPHome).

Configura ESPHome per M5Stack Core2

  • Ecco un esempio di configurazione YAML che potresti usare per l'M5Stack Core2:
esphome:
  nome: m5stack-core2
  piattaforma: ESP32
  scheda: m5stack-core-esp32

Wifi:
  ssid: "Your_WiFi_SSID"
  password: "Your_WiFi_Password"

# Abilita hotspot di fallback (portale captive) nel caso in cui la connessione wifi fallisca
applicazione:
  ssid: "M5Stack-Core2 Hotspot di riserva"
  password: "Your_AP_Password"

registratore:
API:
ordine:

sensore:
  - piattaforma: axp192
    indirizzo: 0x34
    i2c_id: bus_a
    update_interval: 30s
    livello_batteria:
      name: "Livello Batteria M5Stack Core2"

# Esempio di utilizzo dello schermo (se supportato nella tua versione di ESPHome)
display:
  - piattaforma: ili9341
    modello: M5STACK_CORE2
    cs_pin: GPIO5
    dc_pin: GPIO15
    reset_pin: GPIO33
    backlight_pin: GPIO32
    lambda: |-
      it.print(0, 0, id(my_text_sensor).state.c_str());

# Se vuoi usare pulsanti o altre funzionalità
pulsante:
  - piattaforma: gpio
    nome: "Pulsante A"
    spillo: 
      numero: GPIO39
      invertito: vero
    ID: button_a
  
✔ Copiato!
Nota: La configurazione esatta per il display potrebbe non essere completamente supportata o potrebbe richiedere una configurazione aggiuntiva, poiché sono state menzionate limitazioni nel supporto dello schermo del Core2 in ESPHome. Potrebbe essere necessario cercare contributi della comunità o librerie esterne per una funzionalità completa.

Compila e carica il firmware

  • Fai clic su Installa nell'interfaccia ESPHome per compilare la configurazione YAML in firmware e caricarla sul M5Stack Core2. Assicurati che il tuo dispositivo sia in modalità flashing (spesso tenendo premuto il pulsante di accensione o il pulsante di reset durante l'avvio).

Integrarsi con Home Assistant

  • Una volta che il dispositivo si connette al tuo WiFi, Home Assistant dovrebbe scoprirlo automaticamente se stai utilizzando l'API nativa. In caso contrario, puoi aggiungerlo manualmente in Configurazione > Integrazioni > Aggiungi Integrazione, cercando 'ESPHome' e inserendo il nome host o l'IP del dispositivo.

Risoluzione dei problemi e funzionalità aggiuntive

  • Se il display non funziona o altri componenti come sensori o pulsanti non vengono riconosciuti, potrebbe essere necessario consultare i forum della community o GitHub per aggiornamenti o configurazioni personalizzate. Ci sono discussioni sulla necessità di aggiungere manualmente il supporto per alcuni componenti del Core2 come il chip di gestione dell'alimentazione (AXP192) o lo schermo.

Gestione della batteria

L'M5Stack Core2 ha un sistema di gestione dell'alimentazione integrato; assicurati di configurarlo correttamente per il monitoraggio della batteria e le funzionalità di risparmio energetico.

Componenti personalizzati

Per le funzionalità non supportate nativamente, potrebbe essere necessario creare o utilizzare componenti personalizzati o considerare alternative come OpenHASP per il controllo del display.
Ricorda, il supporto ESPHome per M5Stack Core2, specialmente per quanto riguarda il display, potrebbe evolversi, quindi mantenere aggiornati ESPHome e Home Assistant potrebbe aiutare con la compatibilità e la disponibilità delle funzionalità.

Risoluzione dei problemi e FAQ

Problemi comuni e soluzioni

D1: Che cosa è il specifiche di M5Stack Core2?
Risposta 1:
Il M5Stack Core2 è una scheda di sviluppo ESP32 ricca di funzionalità progettata per applicazioni IoT e embedded, alimentata dal MCU ESP32 D0WDQ6-V3 dual-core con 16MB Flash e 8MB PSRAM. Dispone di un touchscreen capacitivo da 2,0 pollici, connettività Wi-Fi e una batteria ricaricabile da 390mAh gestita dal chip di alimentazione AXP192, garantendo un controllo efficiente dell'energia. Caratteristiche aggiuntive come un interfaccia USB Type-C, slot per scheda TF, modulo RTC integrato, motore a vibrazione, interfaccia audio digitale I2S e pulsanti touch capacitivi programmabili rendono il M5Stack Core2 una scelta ideale per sviluppatori che lavorano su dispositivi intelligenti, automazione domestica e progetti di elettronica interattiva.

Q2: Qual è la risoluzione del display M5Stack Core2?
A2:
Il M5Stack Core2 dispone di un touchscreen capacitivo da 2,0 pollici con una risoluzione di 320x240 pixel.

D3: Che cosa è il velocità in baud tasso di M5Stack Core2?
A3:
Il baud rate predefinito per il M5Stack Core2 è solitamente impostato a 115200 bps per la comunicazione seriale. Tuttavia, può essere regolato nel codice su altri valori a seconda delle esigenze del tuo progetto.

Q4: Perché la mia scheda di memoria non viene letta su M5Stack Core2 e come posso risolvere il problema?
A4:
Per migliorare la capacità di lettura della scheda di memoria sul M5Stack Core2, puoi utilizzare il seguente codice per configurare i pin GPIO e migliorare l'interfaccia di memoria:
per (auto gpio : (const uint8_t[]){18, 19, 23}) {
   *(volatile uint32_t*)(GPIO_PIN_MUX_REG[gpio]) |= FUN_DRV_M;
   gpio_pulldown_dis((gpio_num_t)gpio);
   gpio_pullup_en((gpio_num_t)gpio);
}
  
✔ Copiato!

M5Stack Core2-33
Questo codice configura i pin GPIO specificati (18, 19, 23) abilitando le necessarie resistenze di pull-up e regolando la forza di pilotaggio, il che può aiutare a migliorare le prestazioni di lettura della scheda di memoria.

Q5: Come rileviamo il livello di potenza di core2?
A5:
Per rilevare il livello di carica del M5Stack Core2, puoi utilizzare il seguente codice che sfrutta l'API Core2 per recuperare la tensione della batteria:
#include 

impostazione nulla() {
  M5.inizio();
}

ciclo vuoto() {
  Serial.printf("Tensione della batteria: %f\n", M5.Axp.GetBatVoltage());
  ritardo(500);
}
  
✔ Copiato!

Questo codice legge la tensione della batteria e la stampa sul monitor seriale ogni 500 millisecondi. Assicurati di fare riferimento alla documentazione M5Core2 API per funzioni e configurazioni più dettagliate relative alla gestione dell'alimentazione.

Q6: Come posso visualizzare immagini su M5Stack Core2 usando il linguaggio C?
A6:
Per visualizzare un'immagine JPG da 320x240 pixel chiamata logo.jpg su M5Stack Core2, segui questi passaggi:
  1. Crea l'immagine: Prepara un'immagine JPG da 320x240 pixel chiamata logo.jpg.
  2. Converti l'immagine: Scarica i file sorgente, decomprimili e apri la cartella. Esegui lo script .\conver.ps1 nel terminale per convertire l'immagine in un formato binario compatibile con Core2.
  3. Sostituisci i dati dell'immagine: Dopo la conversione, prendi i dati binari risultanti e sostituisci il contenuto nell'array del file sorgente fornito.
  4. Carica il programma: Apri il file drawImageData_core2_Pure.ino e inserisci i dati binari convertiti nell'array. Carica il programma su M5Stack Core2.
M5Stack Core2-34
M5Stack Core2-35
M5Stack Core2-36
Una volta caricato il programma, l'immagine verrà visualizzata sullo schermo come mostrato nell'esempio.
Assicurati di fare riferimento alla documentazione ufficiale per ulteriori istruzioni sulla gestione delle immagini e dei loro formati binari.


Suggerimenti e trucchi per usare M5Stack Core2

Suggerimenti generali

Gestione della batteria
Usa il chip AXP192 per la gestione dell'alimentazione. Monitora i livelli della batteria tramite la libreria M5Stack Core2 o le configurazioni ESPHome per gestire il consumo energetico in modo efficiente.
Aggiornamenti del firmware
Controlla regolarmente e aggiorna il firmware del tuo M5Stack Core2 per beneficiare di nuove funzionalità, miglioramenti delle prestazioni e patch di sicurezza. Usa lo strumento M5Burner per questo.
Logo personalizzato dello stivale
Personalizza il tuo dispositivo impostando un logo di avvio personalizzato utilizzando lo strumento M5Burner. Questo può rendere il tuo dispositivo unico o riflettere il tema di un progetto.

Utilizzo dell'hardware

Luminosità dello schermo
Regola la luminosità dello schermo programmaticamente utilizzando il chip AXP192 per risparmiare batteria. Abbassa la luminosità per operazioni meno critiche o quando il dispositivo è in modalità standby.
Utilizzo del touchscreen
Per progetti più interattivi, sfrutta le capacità del touchscreen. Usa la classe M5.Touch per il rilevamento del tocco. Ricorda, lo schermo supporta il multi-touch, che può essere utilizzato per interfacce utente più complesse.
Sensore IMU (Unità di Misura Inerziale)
L'MPU6886 integrato può essere utilizzato per il rilevamento del movimento, il controllo gestuale o la stabilizzazione delle applicazioni della fotocamera. Considera le sue implicazioni sulla durata della batteria se usato continuamente.
Scheda MicroSD
Utilizza lo slot microSD per la registrazione dei dati, l'archiviazione di file più grandi o l'espansione della memoria per applicazioni che necessitano di più spazio rispetto a quello fornito dalla memoria flash interna.

Suggerimenti software

IDE Arduino
Quando si utilizza Arduino IDE, assicurarsi di installare il pacchetto di supporto per la scheda M5Stack Core2 dal gestore librerie M5Stack per un supporto hardware completo.
Integrazione ESPHome
Se si integra con Home Assistant tramite ESPHome, utilizzare le configurazioni di esempio ma essere pronti a qualche aggiustamento, specialmente per componenti come lo schermo o la gestione dell'alimentazione.
Modalità di risparmio energetico
Implementa la modalità di deep sleep per progetti alimentati a batteria. L'M5Stack Core2 può riattivarsi da vari trigger come il tocco, la pressione di un pulsante o un timer.
Bluetooth e Wi-Fi
L'ESP32 supporta sia Bluetooth che WiFi. Usa il Bluetooth per comunicazioni a bassa potenza e a corto raggio o il WiFi per esigenze di rete più robuste, ma gestisci attentamente il loro consumo energetico.

Idee di progetto

Controllore Casa Intelligente
Trasforma il Core2 in un controller smart home portatile con interfacce touch per controllare luci, clima, ecc.
Tecnologia indossabile
Usa l'IMU per i fitness tracker o i controller VR, sfruttando i sensori integrati per l'analisi del movimento.
Strumenti educativi
Crea dispositivi di apprendimento interattivi per scopi educativi, dove gli studenti possono interagire con i dati visivamente.

Risoluzione dei problemi

Metodi di ripristino
Se il tuo dispositivo si blocca, ricorda che c'è un pulsante di reset sul retro e anche un metodo di reset del pulsante di accensione tenendolo premuto per circa 10 secondi.
Debug
Usa l'output seriale per il debug. Connettiti tramite USB e utilizza strumenti come l'Arduino Serial Monitor o un emulatore di terminale per un feedback in tempo reale dal tuo codice.
Risorse della comunità
La community di M5Stack è piuttosto attiva; forum, GitHub e gruppi sui social media sono ottimi luoghi per risolvere problemi e trovare ispirazione.

Conclusione

Caratteristiche principali e vantaggi della recensione M5Stack Core2 V1.1

Caratteristiche principali

Schermo Touch Capacitivo da 2,0 Pollici
Presenta un display IPS LCD 320x240 con tre pulsanti virtuali programmabili tramite mappatura della zona calda (FT6336U, indirizzo I2C 0x38), consentendo un'interazione uomo-macchina personalizzabile.
Capacità sensoriali e di feedback migliorate
Motore a vibrazione integrato per feedback aptico e avvisi.
IMU a 6 assi (MPU6886) per il rilevamento del movimento e un microfono PDM per l'ingresso audio.
Altoparlante integrato con amplificatore I2S (NS4168) per un'uscita audio di alta qualità.
Gestione dell'Energia e del Tempo
Il chip di gestione dell'alimentazione AXP2101 (abbinato a INA3221) ottimizza il consumo energetico, con un indicatore di alimentazione blu per lo stato o funzioni personalizzate.
L'Orologio in Tempo Reale (RTC, BM8563) con una batteria di backup dedicata garantisce una temporizzazione precisa anche quando è spento.
Batteria al litio da 500mAh per funzionamento portatile.
Connettività e Archiviazione
ESP32-D0WDQ6-V3 con processore dual-core da 240MHz, Wi-Fi, 16MB Flash e 8MB PSRAM.
Slot per scheda MicroSD (fino a 16GB) per memoria espandibile.
USB Type-C, porte GROVE (I2C, UART, GPIO) e presa M-Bus per l'espandibilità.
Flessibilità di sviluppo
Compatibile con più piattaforme: UIFlow, MicroPython, Arduino, .NET nanoFramework e Zephyr RTOS.
Include controlli fisici come i pulsanti di accensione e reset, oltre a un chip CH9102F USB-seriale per una programmazione affidabile.
Hardware aggiuntivo
LED indicatore di alimentazione blu, motore a vibrazione e un design compatto (54 x 54 x 16,5 mm) con una custodia in plastica.
Intervallo di temperatura operativa da 0°C a 60°C, adatto a vari ambienti.
Benefici
  • Versatilità: Ideale per controller terminali IoT, progetti fai-da-te, educazione STEM e dispositivi per la casa intelligente grazie al suo ricco set di funzionalità e alla sua espandibilità.
  • Interazione User-Friendly: Il touchscreen e i pulsanti virtuali, combinati con il feedback aptico, creano un'interfaccia intuitiva per applicazioni diverse.
  • Prestazioni Affidabili: L'RTC con batteria di backup e l'efficiente AXP2101 garantiscono un funzionamento costante, anche in scenari portatili o a basso consumo energetico.
  • Scalabilità: Ampie opzioni di connettività (Wi-Fi, I2C, UART) e compatibilità con i moduli M5Stack (con considerazioni per la compatibilità di base) consentono espansioni su misura.
  • Facile per gli sviluppatori: il supporto multipiattaforma e un ecosistema robusto (librerie come M5Unified) semplificano lo sviluppo, mentre lo slot MicroSD e le capacità audio aumentano il potenziale del progetto.
Note pratiche
  • Richiede la rimozione della base della batteria quando si impilano moduli M5; si consiglia M5GO Bottom2 per mantenere la piena funzionalità.
  • Il motore a vibrazione potrebbe interferire con le basi della serie M5 Base, quindi evitare di impilarle con queste.
  • La non linearità del tocco ai bordi può essere risolta con aggiornamenti firmware tramite M5Tool.
Il M5Stack Core2 V1.1 si distingue come una piattaforma compatta e ricca di funzionalità che bilancia potenza, interattività e flessibilità, rendendola una scelta eccellente per hobbisti, educatori e sviluppatori.

Risorse Aggiuntive

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati con *

Iscriviti alla nostra newsletter

Ricevi le ultime informazioni sui nostri prodotti e offerte speciali.