peng-zhihui/HoloCubic logo

peng-zhihui/HoloCubic

Free

带网络功能的伪全息透明显示桌面站

FreeFree tier
Type
Open Source

About peng-zhihui/HoloCubic

HoloCubic is an open-source hardware project by peng-zhihui that creates a multifunctional pseudo-holographic transparent display desktop station. It uses a beam splitter to achieve a floating image effect, driven by an ESP32PICO-D4 microcontroller with WiFi and Bluetooth connectivity. The device features a 1.3-inch 240x240 ST7789 TFT display, an LVGL-based graphical user interface, an MPU6050 accelerometer/gyroscope for gesture-based input (simulating encoder knob actions), an ambient light sensor (in the Naive version), a microSD card slot for storage, and two RGB LEDs. The firmware is developed in the Arduino framework, and the project includes a Visual Studio LVGL simulator and a Python/binary image conversion tool for creating .bin resources. Example applications such as weather display and subscriber counter are provided. The total BOM cost is estimated under 50 yuan. Hardware design files, firmware source code, 3D models for multiple case designs (including a limited-edition Ironman version), and documentation are all available in the repository.

Key Features

Pseudo-holographic display using a 25.4mm beam splitter
ESP32PICO-D4 microcontroller with integrated WiFi and Bluetooth
1.3-inch 240x240 ST7789 TFT display driven via SPI
LVGL GUI library for a rich graphical interface
MPU6050 accelerometer/gyroscope as a virtual input device (simulates encoder knob)
Ambient light sensor (Naive version) for auto-brightness adjustment
MicroSD card slot for image resources and data storage
Two RGB LEDs for visual feedback and decoration
Arduino-based firmware with easy-to-modify application framework
Visual Studio LVGL simulator for rapid UI development

Pros & Cons

Pros
  • Open-source full stack (hardware, firmware, software, 3D models) allows complete customization
  • Low cost to build (around 50 yuan for components)
  • Easy to assemble with through-hole and SMD parts
  • Active community with 6.7k stars and 1.3k forks on GitHub
  • Well-documented build guide and setup instructions
  • Includes a Windows simulator for testing LVGL interfaces without recompiling firmware
  • Supports SD card for storing multiple images, enabling local content expansion
  • Multiple enclosure options suit different skill levels and budgets
Cons
  • Not a true holographic display; relies on a beam splitter and a 2D screen for a pseudo effect
  • Requires manual assembly, soldering, and component sourcing (not a ready-to-use product)
  • Beam splitter and OCA glue may be difficult to source and costly (beam splitter ~80 yuan)
  • Firmware code described by the author as 'dirty' and may need cleanup for production use
  • Limited English documentation; most instructions are in Chinese
  • Case machining for premium versions (e.g., Ironman CNC) can exceed 1000 yuan in cost

Best For

Desktop decoration with dynamic pseudo-holographic animationsReal-time weather display using WiFi-based weather APISocial media subscriber/fan count monitor (e.g., Bilibili)IoT gadget for displaying notifications, clock, or calendarLearning platform for ESP32, LVGL, and embedded system designCustom smart display for home automation data (e.g., temperature, humidity)Portable interactive mini display for tech enthusiasts and makers

FAQ

What components are needed to build HoloCubic?
The core hardware includes an ESP32PICO-D4 module, a 1.3-inch ST7789 240x240 display, an MPU6050 IMU, a microSD card slot, two RGB LEDs, and a 25.4mm beam splitter. Additional passive components are listed in the BOM, totaling under 50 yuan for the PCBA.
What is the beam splitter and where can I get it?
The beam splitter is a 25.4mm x 25.4mm x 25.4mm cube that reflects the display image to create a pseudo-holographic effect. It can be purchased from online retailers like Taobao for around 80 yuan. The project recommends using OCA glue (optical clear adhesive) for mounting.
How do I program the firmware?
The firmware is built using the Arduino framework. Install the ESP32 board support package and the libraries provided in the Firmware/Libraries folder. You can use Arduino IDE, Visual Studio with Visual Micro, or PlatformIO. You must modify the SPI.cpp file to change the default MISO pin from 12 to 26 to avoid boot issues.
Is there a way to test the UI without uploading to the device?
Yes, a Visual Studio LVGL simulator is included in the Software folder. You can develop and preview the UI on a PC, then copy the code to the Arduino firmware for deployment.
How do I convert images for the display?
Use the provided Python script or the pre-compiled 'holo转换器.exe' to convert images to .bin files (Indexed 4 colors). Drag and drop multiple images onto the exe. The .bin files should be placed on a microSD card and accessed using paths like 'S:/dir/icon.bin'.
Can I add custom applications to HoloCubic?
Yes, the repository provides a template firmware with basic apps (weather, subscriber count). You can extend it by adding new LVGL screens and logic. The core framework handles WiFi, display, and input.