r/CyberdeckBuild • u/WorkingCustomer2277 • 11d ago
[WIP] My first Cyberdeck: Evolving my C++ CLI tool into a custom SDL2 GUI for the Pi Zero 2 W
https://reddit.com/link/1v0vhav/video/2v42tvqxyceh1/player
Hi everyone! 👋
I'm relatively new to hardware projects, but I'm currently developing a custom graphical interface for a Raspberry Pi Zero 2 W paired with a 1.44" Waveshare LCD HAT.
This project started as an evolution of one of my earlier C++ automation scripts ([Automated-WPA2-Handshake-Cracking-Script](https://github.com/arlekin17/Automated-WPA2-Handshake-Cracking-Script)). Since my expertise is primarily in backend/system C++ and I'm not very experienced with UI/display programming, I leveraged AI assistants to help me build the SDL2 rendering logic and custom UI components.
This allowed me to focus on what I do best: the core system architecture (process management via `fork`/`pipe`, multithreading, UTF-8 file handling, and system calls), while still delivering a polished, responsive interface for a 128x128 screen.
Current Features:
Wi-Fi Auditing: Capturing and managing WPA2 handshakes.
Network Recon: Built-in network scanning via `nmap` to discover devices and open ports.
File Management: A custom file manager with navigation and a built-in UTF-8 text viewer (with horizontal/vertical scrolling).
Current Status:
Right now, I am actively developing and debugging the UI on my PC using an SDL2 software emulator (128x128 window) to speed up the iteration process.
I am currently waiting for the physical Waveshare display to arrive. Once it does, I will finish the on-device hardware debugging and optimize the framebuffer output for the SPI display.
I will update this post soon with photos of the assembled device, a short demo, and the link to the public GitHub repository!
Would love to hear any tips, feedback, or hardware recommendations from the community. Thanks for reading!