LasaurApp¶
LasaurApp is the official Lasersaur app. It has all the functionality to operate this kind of laser cutter:
- load vector files and send them to the Lasersaur;
- file support for SVG,
G-code(subset), DXF (subset); - GUI widget to move the laser head;
- pausing/continuing a job;
- firmware flashing;
- handy
G-codeprograms for the optics calibration process.
This app is written mostly in cross-platform, cross-browser Javascript and Python. This allows for very flexible setup. The backend can either run directly on the Lasersaur (Driveboard) or on the client computer. The frontend runs in a web browser either on the same client computer or on a tablet computer.
Architecture¶
The software system is comprised of three parts that reside each in its own directory:
/firmware- Contains the C language sources and the already compiled binaries of the
modified grbl
CNCcontroller software that is installed on theATmegachip that manages all the circuitry on theDriveBoard; /backend- Contains the Python language sources of the service that runs on the
BBB. It communicates on one side via a serial line to theATmegaand on the other side with the client that runs the GUI in the web browser; /frontend- Contains the HTML and JavaScript code used to run the GUI in the web
browser. It communicates with the
backendusing the HTTP protocol.
Overally the system can be represented in a simple graph as follows: