Cardputer ADV, bo o tym zestawie mowa, to drugi kieszonkowy komputer w ofercie M5Stack. Zestaw ten oparty jest o moduł, również produkowany przez M5Stack, o nazwie Stamp S3A, którego sercem jest układ ESP32-S3FN8 firmy Espressif. Firma M5Stack oferuje szereg innych zestawów, skierowanych głównie do użytkowników sieci Meshtastic, z tego też powodu można zakupić Cardputer z dodatkowym modułem (Cap, czyli „czapka”) LoRa 1262. Taki zestaw, z aktywną aplikacją Meshtastic przedstawia fotografia do tego artykułu.
Zakup, opis i specyfikacja
Jak wspomniano wyżej, Cardputer ADV jest napędzany układem ESP32-S3FN8. Jest to układ typu SoC ze zintegrowanym radiem 2,4 GHz dla łączności Wi-Fi i Bluetooth Low Energy. Sercem układu jest dwurdzeniowy mikroprocesor oparty o architekturę Xtensa® 32-bit LX7. Częstotliwość taktowania wynosi maksymalnie 240 MHz. Ten wariant układu ESP32-S3 ma też zintegrowaną pamięć flash o pojemności 8 MB. Teoretycznie układ ten wspiera też zewnętrzną pamięć flash oraz RAM do 1 GB, choć sam posiada tylko 512 kB pamięci SRAM. Moduł Stamp S3A nie zawiera jednak żadnej dodatkowej pamięci zewnętrznej. Sam Cardputer ADV dodaje przede wszystkim ekran IPS o przekątnej 1,18 cala, 65-przyciskową klawiaturę, dwa gniazda rozszerzeń, gniazdo kart microSD, oraz akumulator. Wewnątrz kryją się też układ IMU, mikrofon oraz wzmacniacz z głośnikiem oraz dioda podczerwieni. Producent nie pokusił się o instalację kompletnego modułu do zapomnianej już obecnie łączności IrDA, co mogłoby poszerzyć zastosowanie tego małego, kieszonkowego komputerka. Tak, Cardputer ADV można nazwać pełnoprawnym komputerem, gdyż pozwala na łatwe tworzenie i uruchamianie aplikacji, a nawet posiada kilka gier. Komputer w zestawie z modułem LoRa 1262 można zakupić na stronie AliExpress, i kosztuje w chwili pisania artykułu około 263 zł, z możliwością uzyskania zniżki 26 zł. Jest to uczciwa cena w zamian za możliwości i generalną użyteczność tego zestawu. Cardputer ADV bez modułu LoRa 1262 kosztuje około 175 zł.
Urządzenie jest relatywnie małe i faktycznie ma rozmiar karty kredytowej, choć nie jej grubość. Moduł LoRa nieco zwiększa jego wymiary, a sposób montażu z jednej strony jest mało wygodny przy trzymaniu urządzenia w kieszeni, z drugiej sprawia, iż wygodniej trzyma się je w ręku. Moduł LoRa 1262 można przykręcić do Cardputera ADV za pomocą dwóch wkrętów walcowych M2×6 mm. Wkrętów brak w zestawie. W zestawie brak też karty microSD, warto jednak się w nią zaopatrzyć. Klawiatura jest doprawdy mała i dość niewygodna – producent zdecydował się użyć mikroprzełączników tact i obciął dodatkowo koszty nie dodając żadnych gumek. Autor używał podobnej wielkości klawiatur, na przykład w smartfonach HTC (na przykład model S740), które to wykonane były z gumowej membrany przycisków i metalowych kopułek, czyniąc je znacznie wygodniejszymi bez znaczącego wzrostu kosztów produkcji. Klawiatura jest najsłabszą stroną tego komputera, szczególnie gdy trzeba korzystać z kombinacji klawiszy – jest to zwyczajnie niewygodne. Klik jest twardy, a klawisze nadzwyczaj małe i ciasno upakowane.
Domyślnie komputer przychodzi z zainstalowaną aplikacją demonstracyjną, która pozwala przetestować różne funkcje urządzenia. Domyślnie wybrane jest demo „Recorder”, które pozwala sprawdzić działanie mikrofonu, a także głośnika przez odtworzenie ostatnich dwóch sekund zarejestrowanego dźwięku. Innym, ciekawym demem jest Chat LoRa, który do przetestowania wymaga jednak dwóch zestawów Cardputer ADV z modułami LoRa 1262. Aplikacja demonstracyjna ma też na celu pokazanie możliwości SDK i biblioteki graficznej M5Stack UIFlow 2.0. Środowisko to dostępne jest w dwóch formach: aplikacji dla komputerów PC/Mac oraz w formie aplikacji na Cardputer ADV. Dostępna też jest wersja online do użycia w przeglądarce. UIFlow 2.0 pozwala tworzyć aplikacje w sposób wizualny, przez składanie ich z „klocków”, ale udostępnia też język MicroPython. Do instalacji aplikacji służy narzędzie M5Burner, które zawieera kolekcję oficjalnych i nieoficjalnych aplikacji dla różnych zestawów M5Stack. Najlepszą metodą jednak jest zainstalowanie aplikacji M5Launcher, która pozwala instalować aplikacje z karty microSD. Inne aplikacje wtedy pobiera się narzędziem M5Burner, znajdują się w katalogu /packages/firmware. Zaleca się pobierać jedną aplikację naraz, a następnie stworzenie jej kopii i zmianę nazwy kopii na nazwę aplikacji. Pobrane aplikacje umieszcza się na karcie microSD w głównym katalogu.
Pewną ciekawostką jest umieszczenie na spodzie urządzenia nalepki z opisem wewnętrznej budowy i struktury urządzenia, podobna „mapka” jest też na module LoRa 1262. W praktyce najistotniejsza informacją jest „pinologia” gniazd rozszerzeń. Warto dodać, iż M5Stack (i nie tylko) oferuje kompatybilne z nimi moduły czujników i innych rozszerzeń. Wbudowany akumulator ma pojemność 1750 mAh, a jego ładowanie odbywa się poprzez włączenie urządzenia i podłączenie kabla USB-C do gniazda w module Stamp S3A. Urządzenie można też zasilać przez czteropinowe złącze rozszerzeń z boku, po wcześniejszym przełączeniu kierunku pracy pinu +5 V tego złącza.
Praca z Cardputer ADV oraz aplikacje
Wspomniano już o kilku aplikacjach dla Cardputer ADV: Meshtastic, Demo, czy UIFlow 2.0. Ciekawą aplikacją jest WebRadio by WuSiU – proste radio internetowe Wi-Fi, dla którego listę stacji można zapisać na karcie microSD w prostym pliku tekstowym. Po skonfigurowaniu połączenia Wi-Fi aplikacja startuje od razu i pozwala wybrać stację z listy zapisanych adresów. Jakość dźwięku z wbudowanego głośnika jest adekwatna. Niestety, sygnał wyjściowy, również na wyjściu słuchawkowym, jest monofoniczny, i wynika to z konstrukcji urządzenia. Inny projekt radia internetowego opartego o moduł z ESP32, YoRadio, uzyskuje znacznie lepsza jakość dźwięku w stereo dzięki użyciu lepszych układów DAC do zastosowań audio. Cardputer ADV ma zamiast tego układ ES8311, budżetowy układ o przyzwoitych parametrach przeznaczony raczej do urządzeń IoT i zabawek, a nie dla sprzętu Hi-Fi. Wśród aplikacji dostępnych jest też kilka odtwarzaczy MP3/FLAC, ale wygląda na to, iż w chwili pisania artykułu nie ma ani jednej aplikacji audio wspierającej użycie zewnętrznych słuchawek Bluetooth, mimo iż układ ESP32-S3FN8 wspiera Bluetooth Low Energy w wersji 5.0. Wersja ta wspiera przesyłanie strumieni audio, ale dopiero wersja 5.2 dodaje pełne, standardowe wsparcie z użyciem kodeka LC3.
Największą grupę aplikacji stanowią narzędzia do testowania i łamania zabezpieczeń sieci Wi-Fi czy urządzeń Bluetooth. Niektóre wspierają dodatkowo moduły radiowe na pasma sub-GHz oparte o układ CC1101. Widać tu wyraźną inspirację narzędziem Flipper Zero, które potrafi zdziałać więcej dzięki lepszemu zestawowi peryferiów. Flipper Zero stał się popularny dzięki serii wiralowych filmów na platformach społecznościowych, które sugerowały (błędnie), iż można nim „hakować” wszystko bez żadnej wiedzy. W rzeczywistości jest to użyteczne narzędzie dla ludzi posiadających zaawansowaną wiedzę na temat zabezpieczeń. Na tym tle aplikacje „hakerskie” dla Cardputer ADV należy traktować raczej w kategorii ciekawostki, zresztą połowa z nich to skanery Wi-Fi, czyli narzędzia, które zastąpić może prosta aplikacja na smartfona.
Na platformę dostępnych jest tez kilkanaście gier i emulatorów, choć większość z nich wymaga zewnętrznego ekranu, gdyż dostępny w urządzeniu jest zwyczajnie za mały i ma złe proporcje dla emulacji takich systemów, jak na przykład GameBoy. Dodatkowo na rynku nie brakuje kieszonkowych konsolek emulujących systemy od automatów arcade i konsol z ostatnich trzech dekad XX wieku po systemy domowe i przenośne z początku XXI wieku. Jedyna kategoria, w której Cardputer ADV byłby dobrym wyborem są tekstowe gry RPG/eksploracyjne, jak na przykład Colossal Cave Adventure czy gry paragrafowe (Interactive Fiction – IF). Niestety, pod tym względem platforma nie ma zbyt wiele do zaoferowania, a szkoda. Nie ma ani jednego projektu stworzenia portu maszyny wirtualnej „Z-Machine” czy interpretera języka Inform. Jedyną metodą by zagrać na przykład w grę Zork na Cardputer ADV jest uruchomienie emulatora procesora Zilog Z80 z systemem CP/M i uruchomienie na nim oryginalnej wersji gry Zork od firmy Infocom, która to stworzyła Z-Machine w 1979 roku by móc portować swoje gry na różne platformy.