Projects
Collection of projects I've built:
- NES Emulator
- ePaper Live Bus Times Dashboard
NES Emulator
A Nintendo Entertainment System (NES) emulator built from scratch using modern C++, Vulkan, SDL2, and ImGui.
Technical Features
- Modern C++
- Vulkan Graphics API: High-performance, low-overhead graphics rendering
- SDL2: Cross platform windowing and input handling
- ImGui: Immediate mode GUI for debugging and settings
- GLSL Shaders: Optional CRT filter
- Memory Mapper Support: Supports mappers 0-4 and 7, covering a wide range of NES games
Cross Platform Compatibility
Works seamlessly across:
- macOS
- Windows
- Linux
Screenshots
ePaper Live Bus Times Dashboard
A low power ESP32 ePaper display that shows real time bus departures at a glance.
Technical Features
- Completely Wireless
- Rechargable using the built in USB-C port
- Battery is swappable via a standard JST styled connector
- Fetches Data over WiFi
- ePaper Display only uses power when being refreshed
- Display + ESP32 is programmed using ESPHome and C++
- The Bus information is fetched from the TFI API using a BunJS script
- Data is sent to a local Home Assistant Server via MQTT and then propagated from there
Bill of Materials
| Component | Specification | Price | Features |
|---|---|---|---|
| Microcontroller | Seeed Studio Xiao ESP32-C3 | €4 | Compact, WiFi, Low Power, Built-in Battery Charging |
| Display | WeAct Studio 4.2" ePaper | €15 | 400x300px, Low Power |
| Battery | 8BitDo 1000mAh LiPo Pack | €4 | Robust and Cheap |
Total Cost: €23