Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Makerbot Sketch Lange wrong meta data in .makerbot output #19920

Open
dex4er opened this issue Nov 18, 2024 · 0 comments
Open

Makerbot Sketch Lange wrong meta data in .makerbot output #19920

dex4er opened this issue Nov 18, 2024 · 0 comments
Labels
Status: Triage This ticket requires input from someone of the Cura team Type: Bug The code does not produce the intended behavior.

Comments

@dex4er
Copy link

dex4er commented Nov 18, 2024

Cura Version

5.9.0-beta2

Operating System

MacOS 14.7.1

Printer

MakerBot Sketch Large

Reproduction steps

Save to disk as "Makerbot Sketch Printfile (*.makerbot)".

Import it to the digitalfactory or cloudprint or transfer it via USB.

Print.

Actual results

The printer shows the wrong temperature in the print description on the LCD panel in the details of the print.

Printer waits for incorrect temperature just before starting the new print (heating phase with progress bar before running actual GCODE).

Expected results

The correct temperature for the nozzle and the bed should be presented. The correct temperature should be waited for.

The reason is that makerbot's meta.json needs extra fields to be filled and the fields are now ignored by Cura.

The example script that fixes the *.makerbot files should explain what is really important in the meta.json file:

#!/usr/bin/env bash

file="$1"

if [[ -z "$file" ]]; then
  echo "Usage: $0 file.makerbot" 1>&2
  exit 1
fi

## Firmware does not like spaces in the filenames
newfile="$(echo "$file" | tr ' ' '_')"
if [[ $newfile != $file ]]; then
  mv -f "$file" "$newfile"
  file="$newfile"
fi

mkdir -p "$file.tmp"
pushd "$file.tmp" >/dev/null

unzip -q -o "../$file"

## Sets missing fields in meta.json
yq -i -oj -pj '
.miracle_config._bot=.bot_type | 
.miracle_config._extruders=.tool_types | 
.miracle_config._materials=.materials | 
.extruder_temperature='$(awk '$1 == "M104" {print substr($2, 2); exit}' print.gcode)' | 
.extruder_temperatures=['$(awk '$1 == "M104" && $2 != "S0" {print substr($2, 2);}' print.gcode | sed 's/\.0$//' | sort -u -n | xargs echo | tr ' ' ',')'] | 
.platform_temperature='$(awk '$1 ~ "M1[49]0" {print substr($2, 2); exit}' print.gcode) meta.json 

cp -f "../$file" "../$file~"
zip "../$file" meta.json

popd >/dev/null

rm -rf "$file.tmp"

Add your .zip and screenshots here ⬇️

@dex4er dex4er added Status: Triage This ticket requires input from someone of the Cura team Type: Bug The code does not produce the intended behavior. labels Nov 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Triage This ticket requires input from someone of the Cura team Type: Bug The code does not produce the intended behavior.
Projects
None yet
Development

No branches or pull requests

1 participant