Alumina is an integrated CAD/CAM, physics simulation, and motion control solution written entirely in Rust. It is intended to control laser and plasma cutters, 3D printers, CNC routers and mills, and lathes. There are two parts to Alumina: the firmware which targets the esp32c3 microcontroller, sets up a Wifi AP called "Alumina", serves the Alumina UI via HTTP, responds to commands from the Alumina UI via HTTP, and performs motion planning and step generation. The UI targets WebAssembly, draws geometry using WebGLand egui, and manipulates geometry using csgrs. Both parts fit in the onboard flash of the esp32c3.
cargo install trunk wasm-opt wasm-tools
trunk serve --open --release
- implement picking for lines and vertices
- https://github.com/JeroenGar/jagua-rs for bin packing
- generate toolpaths from slices
- send toolpaths to firmware
- implement SD card support
- create oscope 2D plot on Diagnostic tab
- read last graph node instead of first