Tijdens het zoeken naar een geschikte terminal emulator stuitte ik op een ESP32 controller met PS/2 aansluitingen voor keyboard en muis en een VGA scherm. Aangezien de prijs laag was (ongeveer 13 euro op AliExpress) heb ik er een besteld om de mogelijkheden ervan te onderzoeken.
De TTGO VGA32 v1.2 van LilyGo |
Hardware
De afmetingen van deze microcontroller zijn slechts 67 bij 32mm en 17mm hoog (afgerond en exclusief het uitstekende deel van de VGA connector).
De kern wordt gevormd door een ESP32 dual core processor op 240MHz met een voedingsspanning van 3.3 V. Deze controller bevat onder andere 4MB flash geheugen en maar liefst 520KB SRAM.
Op de printplaat is ook Bluetooth en Wi-Fi aanwezig en een TP4054 IC voor het laden van een oplaadbare Li-ion/Li-Po batterij. Links op de foto zien we de VGA connector en rechts de PS/2 aansluitingen voor de keyboard en muis. Aan de bovenkant zien we net boven de processor een aansluiting voor een Wi-Fi antenne en een tweepolige Molex Picoblade connector voor de batterij. Aan de voorkant links zit een 3.5mm jackplug voor de audio, een aansluiting voor een speaker en een micro usb aansluiting voor de 5V voedingspanning en het uploaden van software.
Inmiddels (december 2021) zijn er 3 versie's uitgebracht: 1.1, 1.2 en 1.4. De plaatsing van de connectoren verschilt onderling.
vlnr: versie 1.1, 1.2 en 1.4 |
Ten opzichte van de eerste versie (1.1 april 2019), beschikt versie 1.2 (juni 2019) over een een 3.5 mm audio jackplug en connector voor de speaker uitgang. De micro USB aansluiting is iets lager geplaatst en de Reset en "IO36" drukknopjes zijn allebei aan de rechterkant gezet. In versie 1.4 (april 2020) is een Micro SD kaartlezer toegevoegd en zijn de drukknopjes weer aan weerszijden van de print geplaatst, alhoewel lager dan bij versie 1.1
Er zijn diverse ontwerpen voor een bijbehorend 3D geprint kastje beschikbaar, let dus goed op dat het 3D ontwerp past bij de juiste versie van de module.
Bijbehorende 3D geprinte kastjes (v1.2) met dank aan collega PJ. Het laatste ontwerp (1.4) is nu ook beschikbaar op Thingiverse. |
Software
De TTGO VGA32 controller is net zo te programmeren als andere microcontrollers door bijvoorbeeld gebruik te maken van de Arduino IDE of PlatformIO software.
Voor de TTGO VGA32 kan de zogenaamde FabGL library worden gebruikt, ontwikkeld door Fabrizio Di Vittorio. Deze bibliotheek kan via "Reference > Libraries" worden toegevoegd aan de Arduino IDE en bevat ondersteuning voor ontwikkeling van een Grafische User Interface en een "Sound en Game Engine". Volg de volledige installatie instructie hiervoor op Youtube.
Toepassingen
Na installatie van de software bibliotheek zijn er een groot aantal kant en klare voorbeelden beschikbaar, zoals:
- Een ANSI/VT terminal emulator (waar ik naar op zoek was).
- Emulatie van computers zoals de Altair 8800 en de VIC-20.
- Emulatie van de spelklassieker Space invaders
Al met al blijkt de LilyGo TTGO VGA32 een zeer krachtige microcontroller te zijn voor weinig geld, waarvoor al veel software is ontwikkeld.
Geen opmerkingen:
Een reactie posten