KiCad design files for Hexastorm, an open-hardware laser direct imager (LDI). An ESP32-S3 handles communication and motion control, while an iCE40 UP5K FPGA generates synchronized laser pulses for the rotating polygon prism.
The design files are organized into two parts:
PCBs forming the scanhead assembly (see hexastorm_design for complete CAD):
- Prism Drive: PCBs to spin the optical prism using either an external BLDC motor or an experimental PCB stator motor.
- Laser Control: Diode driver and photodiode sync circuit.
- Maxwell Dock: Receiver PCB with kinematic ball mounts and magnet sockets.
Single-board controller for 3-axis motion and laser timing. Intended for desktop CNC frames (such as the CNC 3018 Pro, for which it is a drop-in replacement):
- MCU: ESP32-S3 (N32R8V) with 8MB Octal PSRAM for line buffers.
- FPGA: Lattice iCE40 UP5K for laser pulse timing synced to the prism photodiode index.
- Camera: 24-pin FPC connector for an OV2640 camera module.
- Motion: Sockets for 3x stepper drivers (TMC2209) for X, Y, and Z axes.
- Laser: Header for one laser scanhead.
- Power: 24V input with onboard 12V buck regulator for the laser module and cooling fan.
- USB: USB-C for data and flashing.
- Blog & Build Logs: Hackaday.io project
- BOM & Costing: Generated with KiCost (see developer.md)
- CAD Files: hexastorm_design
- Optical Simulation: opticaldesign
- Exposure Verification: High-resolution optical scanning and exposure have been validated in hardware (see demonstration video).
- Base Board: Fabricated, tested, and verified functional (ESP32-S3, iCE40 UP5K FPGA, stepper drivers, and power regulation).
- Laser Module: Scanhead structure, optics, diode driver, and kinematic docking are verified. The integrated PCB stator motor concept is proven, though the latest stator board revision has not yet been tested.

