James Brown Releases the Latest Source Code for His Impressive, Dizzying "Multivox" 3D Displays
With 3D print files, a bill of material, and now source code available, there's nothing to stop you building your own Vortex voxel display.
Maker James Brown has published the latest version of the source code driving his impressive 3D volumetric displays β created by rapidly spinning HUB75 LED panels inside a protective glass sphere.
"This is the code I currently use to drive my volumetric displays," Brown writes of the permissively-licensed source code. "It supports two closely related devices which are configured in the src/driver/gadgets directory: Rotovox is a 400mm Orb featuring two 128Γ64 panels arranged vertically side by side; Vortex is a 300mm Orb featuring two 128Γ64 panels arranged horizontally, back to back. Rotovox has a higher vertical resolution and better horizontal density; Vortex is brighter and has a higher refresh rate."
Brown has been working on the display project for some considerable time, showcasing an early version in October 2023. Initial experiments with 3D-printed lenticular lenses and collimators gave way to a relatively simpler approach in which common HUB75 RGB LED matrices are spun at high speed under the control of a Raspberry Pi single-board computer β relying on the persistence of vision (PoV) effect to produce a stable, voxel-based 3D image viewable from any angle.
As the project has evolved, Brown has been releasing the details you'd need to build your own β providing you're happy putting your face near such rapidly-spinning electronics, even when enclosed in a glass globe designed for garden lighting. In March last year he released a bill of materials, and the 3D print files for Vortex are available on GitHub under an unspecified license.
Now, the latest version of the project's source code is available too. "There are two parts to this code," Brown explains. "The driver, which creates a voxel buffer in shared memory and scans its contents out in sync with rotation, and the client code which generates content and writes it into the voxel buffer. Both driver and client code are designed to run on the same device, a Raspberry Pi embedded in the hardware and spinning at several hundred RPM."
"There is a demo included in the Python directory which streams point clouds from a PC over Wi-Fi to the device," Brown continues, "but fundamentally it's designed as a self contained gadget, like an alternate timeline Vectrex. A Bluetooth gamepad is used to control the demos. I've been using an Xbox controller, and the input system is based on the default mapping for that."
The source code is now available on GitHub, under the permissive MIT license.