Universal G-Code Sender is a Java based, cross platform G-Code sender, compatible with GRBL, TinyG, g2core and Smoothieware.
Online documentation and releases: http://winder.github.io/ugs_website/
Discussion forum: https://groups.google.com/forum/#!forum/universal-gcode-sender
Technical details:
- JSSC or JSerialComm for serial communication
- JogAmp for OpenGL
- Built with Netbeans Platform
- Developed with NetBeans 8.0.2 or later
Below you will find the latest release of UGS.
For older releases please visit the releases page.
UGS Platform
The next generation, feature packed variant based on the Netbeans Platform.
Unpack and start the program bin/ugsplatform
Latest release (v2.0.8) | Previous release (v2.0.7) | Nightly build |
---|---|---|
Windows | Windows | Windows |
Mac OSX | Mac OSX | Mac OSX |
Linux | Linux | Linux |
RaspberryPI | RaspberryPI | RaspberryPI |
All platforms | All platforms | All platforms |
UGS Classic
A clean and lightweight variant of UGS (requires Java).
Unpack and start the program by double clicking the jar file. On some platforms you may need to run the included start script.
Latest release (v2.0.8) | Previous release (v2.0.7) | Nightly build |
---|---|---|
All platforms | All platforms | All platforms |
UGS Platform main window
Customizable panel layout
Menu actions with customizable keybindings
Menu with plugins
One of many plugins
Basic gcode editor
UGS Classic main window
UGS Classic with visualizer
For development the Maven build tool is used.
UGS Classic:
mvn install
mvn exec:java -Dexec.mainClass="com.willwinder.universalgcodesender.MainWindow" -pl ugs-core
UGS Platform:
mvn install
mvn nbm:run-platform -pl ugs-platform/application
mvn test
mvn install
mvn package -pl ugs-core
mvn package assembly:assembly
If you are more used to IntelliJ, you can also build, run and debug it there.
Before you start you need to change a setting for handling imports in Maven since we are using jgitver
, read more about it here.
- Run
mvn nbm:run-platform -pl ugs-platform/application
once via terminal to build everything - Import the Source,
File
->New
->Project from existing Sources
- Setup a new "Run Configuration",
Java Application
, with following settings:- Main Class:
org.netbeans.Main
- VM Options:
-Dnetbeans.user=$ProjectFileDir$/ugs-platform/application/target/userdir -Dnetbeans.home=$ProjectFileDir$/ugs-platform/application/target/ugsplatform/platform -Dnetbeans.logger.console=true -Dnetbeans.indexing.noFileRefresh=true -Dnetbeans.dirs="$ProjectFileDir$/ugs-platform/application/target/ugsplatform/ugsplatform:$ProjectFileDir$/ugs-platform/application/target/ugsplatform/platform:$ProjectFileDir$/ugs-platform/application/target/ugsplatform/ide:$ProjectFileDir$/ugs-platform/application/target/ugsplatform/extra:$ProjectFileDir$/ugs-platform/application/target/ugsplatform/java"
- Program arguments:
--branding ugsplatform
- Working dir:
$ProjectFileDir$
- Use classpath of module:
ugs-platform-app
- Main Class:
- There is a runConfiguration in the repository, which should be available after importing the project