Moduł Adafruit ESP32-S3 Feather z komunikacją WiFi i BLE
Układy z serii ESP32 to bardzo popularny wybór w projektach IoT, zarówno tych amatorskich, jak i profesjonalnych. Dzieje się tak ze względu na niskie ceny układów, stosunkowo dużą moc obliczeniową, wbudowaną komunikację Wi-Fi i Bluetooth, a także zgodność z wieloma popularnymi platformami programistycznymi. Popularność sprawiła, że ESP32 jest dostępnych jest wiele wariantów modułu, a także wiele płytek demonstracyjnych umożliwiających realizację własnych projektów.
W niniejszym artykule zaprezentuję jedną z tych płytek, które pojawiły się na rynku stosunkowo niedawno. Jest to moduł ESP32-S3 Feather z oferty firmy Adafruit. Jego główną częścią jest mikrokontroler ESP32-S3, który jest aktualnie flagowym produktem firmy Espressif. Zawiera on dwa 32-bitowe rdzenie Xtensa LX7, które mogą pracować z taktowaniem do 240 MHz, a także wbudowaną pamięć SRAM o pojemności 512 KB. Zawiera także dodatkowy rdzeń RISC-V ULP o bardzo niskim poborze mocy. Tradycyjnie układ oferuje komunikację Wi-Fi w standardach 802.11b/g/n oraz Bluetooth 5 (tylko w wersji LE). ESP32-S3 natywnie obsługuje również komunikację USB i zawiera szeroki zestaw peryferiów, m.in. interfejsy SPI, I2C, I2S, UART, TWAI, wyjście PWM, przetwornik ADC, obsługę kart SD/MMC i wiele innych.
ESP32-S3 zawiera wbudowane funkcje bezpieczeństwa, takie jak szyfrowanie pamięci oparte o AES-XTS, bezpieczne uruchamianie oparte o RSA, drugie izolowane środowisko, cyfrowy podpis, a także moduł HMAC. Są to możliwości oferowane zwykle przez zewnętrzne układy sprzętowe, co pozwala zastąpić je przez funkcje samego mikrokontrolera. Dodatkowo ESP32-S3 ma specjalne instrukcje wektorowe, które znacząco ułatwiają obliczenia w sieciach neuronowych oraz przetwarzanie sygnałów, co pozwala na stosowanie technik sztucznej inteligencji.
Rys. 1. Schemat blokowy układu ESP32-S3
Pozostałe elementy płytki ESP32-S3 Feather
Pozostałe wyposażenie płytki standardowo dla serii Feather jest mocno uproszczone. Do programowania i zasilania płytki służy gniazdo USB typu C. Tak jak zazwyczaj w płytkach Feather, tu także obecne jest gniazdo na baterię LiPo, oczywiście z możliwością ładowania z USB. Stan akumulatora jest monitorowany za pomocą układu LC709203 połączonego z mikrokontrolerem za pomocą I2C. Na płytce mamy także diodę RGB NeoPixel oraz złącze w standardzie STEMMA QT kompatybilnym z Qwiic, który pozwala na łatwe dołączenie czujnika do interfejsu I2C.
Płytki dostępne są w dwóch wersjach: z pamięcią Flash 4 MB i pamięcią PSRAM 2 MB, a także drugą z pamięcią Flash 8 MB bez pamięci PSRAM. Tradycyjnie mamy też do czynienia z dwurzędowym złączem rozszerzeń, na który wyprowadzono większość interfejsów ESP32-S3. Poniżej można zobaczyć rozkład wyprowadzeń oraz opisy elementów modułu.
Rys. 3. Rozkład wyprowadzeń modułu Feather ESP32-S3
Programowanie modułu
Podobnie jak wszystkie układy ESP32, Espressif udostępnia framework ESP-IDF. Jest to zestaw narzędzi, bibliotek, interfejsów API i innych narzędzi niezbędnych do programowania tych układów. Wprowadzenie do używania pakietu oraz pełna dokumentacja znajduje się na stronie https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/index.html.
Adafruit zapewnia także wsparcie dla płytki na platformie Arduino – dostępna już w zestawie ESP32 w Menedżerze płytek. Moduł jest także zgodny ze środowiskiem CircuitPython – czyli wersji języka Python dla mikrokontrolerów. Warto zaznaczyć, że nie jest to środowisko zalecane dla wersji bez pamięci PSRAM.
Tradycyjnie Adafruit udostępnia także obszerną dokumentację zawierającą m.in. wyczerpujący opis wszystkich elementów płytki, opis instalacji bibliotek, przykłady aplikacji w CircuitPython oraz wiele innych informacji cennych podczas pracy z płytką.
Podsumowanie
Moduł ESP32-S3 Feather to płytka prototypowa z układem ESP32-S3. To flagowy mikrokontroler z bardzo popularnej serii ESP32 firmy Espressif, obsługującej Wi-Fi oraz BLE. Dzięki opisywanemu produktowi można łatwo i tanio rozpocząć pracę, zbudować projekt czy też prototyp urządzenia opartego na tej platformie. Dzięki szerokim możliwościom podłączania układów można w znaczący sposób rozszerzyć możliwości płytki i zbudować właściwie dowolny projekt oparty o ESP32.
Płytka Adfafruit ESP32-S3 Feather jest dostępna w ofercie sklepu internetowego Kamami.pl