mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-05-19 01:07:30 +08:00

See issue Ultimaker/CuraEngine#240 The intent of this change it to allow token replacement in start/end gcode similar to the old Cura. Tokens are of the form {material_bed_temperature} where the name is any setting name that is passed to the engine. Control the backend's generation of temperature commands via new settings material_bed_temp_prepend and material_print_temp_prepend based on whether there are temperature tokens in the printer profile's start gcode. This change will generate the same temperature gcode as FffGcodeWriter at the head, if none of the temperature tokens are present in the machine profile. Otherwise, they're suppressed via the prepend settings. Also, set fdmprinter.json so that all that inherit from it default to having the gcode temperature prepend also wait for temperature. Profiles can override these settings: material_bed_temp_wait and material_print_temp_wait This PR intends to change both Cura and CuraEngine. However, it is safe to sequence with the Cura change first which will do token replacement (if present), but will fail to supress the temperature prepends.
Cura
This is the new, shiny frontend for Cura. daid/Cura is the old legacy Cura that everyone knows and loves/hates.
We re-worked the whole GUI code at Ultimaker, because the old code started to become a unmaintainable.
Logging Issues
Use this template to report issues. New issues that do not adhere to this template will take us a lot longer to handle and will therefore have a lower pirority.
For crashes and similar issues, please attach the following information:
- (On Windows) The log as produced by dxdiag (start -> run -> dxdiag -> save output)
- The Cura GUI log file, located at (Windows) $User/AppData/Local/cura/cura.log, (OSX) $User/.cura/cura.log, (Ubuntu) $USER/.local/share/cura
- The Cura Engine log, using Help -> Show Engine Log
Dependencies
- Uranium Cura is built on top of the Uranium framework.
- CuraEngine This will be needed at runtime to perform the actual slicing.
- PySerial Only required for USB printing support.
Configuring Cura
- Link your CuraEngine backend by inserting the following line in home/.config/cura/config.cfg : [backend] location = /[path_to_the..]/CuraEngine/build/CuraEngine
Build scripts
Please checkout cura-build
Third party plugins
Making profiles for other printers
There are two ways of doing it. You can either use the generator here or you can use this as a template.
- Change the machine ID to something unique
- Change the machine_name to your printer's name
- If you have a 3D model of your platform you can put it in resources/meshes and put its name under platform
- Set your machine's dimensions with machine_width, machine_depth, and machine_height
- If your printer's origin is in the center of the bed, set machine_center_is_zero to true.
- Set your print head dimensions with the machine_head_shape parameters
- Set the nozzle offset with machine_nozzle_offset_x_1 and machine_nozzle_offset_y1
- Set the start and end gcode in machine_start_gcode and machine_end_gcode
- If your printer has a heated bed, set visible to true under material_bed_temperature
Once you are done, put the profile you have made into resources/settings.
Description
Languages
Python
71.3%
QML
25.6%
GLSL
1.4%
Rich Text Format
0.9%
Jinja
0.5%
Other
0.1%