Skip to content

Spectrum: fan speed, enclosure and drying for 72 filaments (new #767 fields) - #816

Merged
coffandro merged 1 commit into
OpenFilamentCollective:mainfrom
Makemo07:print-params-spectrum
Oct 31, 2026
Merged

coffandro merged 1 commit into
OpenFilamentCollective:mainfrom
Makemo07:print-params-spectrum

Conversation

@Makemo07

Copy link
Copy Markdown
Contributor

Summary

  • Updating existing data

Follow-up to #735 / #767: fills the new print-parameter fields for 72 Spectrum filaments: min_fan_speed 42, max_fan_speed 70, enclosure 58, dry_temperature 13, dry_time 13. Sources: the product pages of shop.spectrumfilaments.com ("Cooling fan", "Closed chamber") and Spectrum's technical data sheets (drying). Where a line has many colour pages, all of them were read; the number after the link says how many more.

Left out: enclosure for 14 technical materials (ABS GP450, PA6 variants, PC 275, PP …) — the shop says "recommended", the data sheet says a closed chamber is needed; fan speed for Thermatech PA and GreenyHT, where shop and data sheet give different values.

Filament fan min % fan max % enclosure dry °C dry h Source
spectrum/ABS/abs_fr_v0 0 25 recommended product page (+1)
spectrum/ABS/abs_gp450 0 25 datasheet (+7)
spectrum/ABS/abs_kevlar 0 25 not_needed datasheet (+1)
spectrum/ABS/abs_medical 0 25 datasheet (+1)
spectrum/ABS/smart_abs 0 25 datasheet (+10)
spectrum/ASA/asa 0 20 not_needed datasheet (+1)
spectrum/ASA/asa_275 0 20 datasheet (+49)
spectrum/ASA/asa_kevlar 0 25 not_needed datasheet (+2)
spectrum/ASA/asa_x_cf10 0 20 not_needed product page (+3)
spectrum/ASA/asa_x_gf10 0 20 not_needed product page (+3)
spectrum/ASA/cf_asa 0 20 required datasheet
spectrum/HIPS/hips 0 20 required datasheet
spectrum/HIPS/hips_x 0 20 recommended product page (+3)
spectrum/PA12/pa12_cf15 0 10 80 6 datasheet (+2)
spectrum/PA6/pa6_cf15 0 10 not_needed datasheet (+1)
spectrum/PA6/pa6_cs20_fr_v0 0 10 not_needed 80 12 datasheet (+1)
spectrum/PA6/pa6_gk10 0 10 80 12 datasheet (+1)
spectrum/PA6/pa6_low_warp 0 30 60 12 datasheet (+4)
spectrum/PA6/pa6_low_warp_cf15s 0 30 80 12 datasheet (+2)
spectrum/PA6/pa6_low_warp_gf30 0 30 80 12 datasheet (+4)
spectrum/PA6/pa6_neat_bk 0 10 80 12 datasheet (+1)
spectrum/PA6/pa6_neat_nt 0 10 80 12 datasheet (+1)
spectrum/PA6/thermatech_pa 0 85 6 datasheet (+2)
spectrum/PC/pc_275 0 20 120 5 datasheet (+15)
spectrum/PCTG/pctg_cf10 50 85 not_needed datasheet (+2)
spectrum/PCTG/pctg_gf10 50 85 not_needed datasheet (+2)
spectrum/PCTG/pctg_premium 75 100 not_needed datasheet (+32)
spectrum/PET/pet_cf15 0 30 not_needed datasheet (+1)
spectrum/PETG/petg_carbon 75 100 not_needed product page (+3)
spectrum/PETG/petg_fr_v0 75 100 not_needed product page (+2)
spectrum/PETG/petg_fx120 10 30 recommended product page (+5)
spectrum/PETG/petg_glitter 75 100 not_needed product page (+1)
spectrum/PETG/petg_glow_in_the_dark 75 100 not_needed product page (+3)
spectrum/PETG/petg_ht100 0 30 recommended product page (+13)
spectrum/PETG/petg_matt 75 100 not_needed product page (+9)
spectrum/PETG/petg_premium 75 100 not_needed product page (+81)
spectrum/PETG/petg_premium_high_speed 75 100 not_needed 60 4 datasheet (+15)
spectrum/PETG/ptfe 75 100 not_needed datasheet (+5)
spectrum/PETG/r_petg 75 100 not_needed datasheet (+12)
spectrum/PLA/aquaprint 0 50 not_needed datasheet (+1)
spectrum/PLA/flameguard_pla 100 not_needed datasheet (+8)
spectrum/PLA/greenyht not_needed datasheet (+5)
spectrum/PLA/greenypro 100 not_needed datasheet (+12)
spectrum/PLA/high_speed_pla 100 not_needed datasheet
spectrum/PLA/huracan_pla 100 not_needed datasheet (+14)
spectrum/PLA/lw_pla_ultrafoam 100 not_needed product page (+13)
spectrum/PLA/pastello_pla 100 not_needed datasheet (+23)
spectrum/PLA/pla_carbon 100 not_needed datasheet (+3)
spectrum/PLA/pla_crystal 100 not_needed datasheet (+7)
spectrum/PLA/pla_electrically_conductive 100 not_needed 50 6 datasheet (+1)
spectrum/PLA/pla_glitter 100 not_needed datasheet (+25)
spectrum/PLA/pla_glow_in_the_dark 100 not_needed datasheet (+4)
spectrum/PLA/pla_magic_silk 100 not_needed datasheet (+46)
spectrum/PLA/pla_matt 100 not_needed datasheet (+57)
spectrum/PLA/pla_metal 100 not_needed product page (+5)
spectrum/PLA/pla_nature 100 not_needed datasheet (+12)
spectrum/PLA/pla_premium 100 not_needed datasheet (+103)
spectrum/PLA/pla_premium_highspeed 100 not_needed product page (+51)
spectrum/PLA/pla_silk 100 not_needed datasheet (+33)
spectrum/PLA/pla_silk_rainbow 100 not_needed datasheet (+12)
spectrum/PLA/pla_thermoactive 100 not_needed datasheet (+2)
spectrum/PLA/pla_tough 100 not_needed datasheet (+4)
spectrum/PLA/r_pla 100 not_needed datasheet (+12)
spectrum/PLA/safeguard_pla 100 not_needed datasheet (+11)
spectrum/PLA/stone_age_pla 100 not_needed datasheet
spectrum/PLA/wood 100 not_needed datasheet (+8)
spectrum/PP/pp 0 35 datasheet (+1)
spectrum/PPS/pps_am230 0 10 required 90 3 datasheet (+1)
spectrum/TPU/s_flex_85a 100 not_needed product page (+13)
spectrum/TPU/s_flex_90a 100 not_needed product page (+15)
spectrum/TPU/s_flex_98a 100 not_needed product page (+15)
spectrum/TPU/s_flex_carbon 100 not_needed product page (+1)

How source values were mapped (same rules for every brand in this series):

  • Drying given as a range ("60–70 °C, 4–6 h"): dry_temperature = the lower temperature, max_dry_temperature =
    the upper one (only where the field was empty), dry_time = the upper number of hours.
  • Fan: only unambiguous values — "0–10 %" → 0 / 10, "OFF" → 0 / 0, "up to 100 %" → max_fan_speed 100 only;
    "ON" and similar left out.
  • Enclosure: "not necessary" → not_needed, "recommended…" → recommended, "yes / needed / heated chamber" →
    required.
  • A field where the sources for one filament disagree is left out; existing values are never changed; a
    dry_temperature above an existing max_dry_temperature is left out.

python -m ofd validate: all validations passed (no new warnings). Indentation of each file kept as it was.

🤖 Generated with Claude Code

https://claude.ai/code/session_01B8a6Te45fbpikDxHXroeG8

…ilamentCollective#767 fields)

Values from the manufacturers' product pages / technical data sheets, mapped as described in the PR.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01B8a6Te45fbpikDxHXroeG8
@github-actions

Copy link
Copy Markdown
Contributor

Automated review

Covers d7d727f.

Changed values: 0 of 196 proven

Value Source
data/spectrum/ABS/abs_fr_v0/filament.json /enclosure = "recommended" ❌ no proof was found
data/spectrum/ABS/abs_fr_v0/filament.json /max_fan_speed = 25 ❌ no proof was found
data/spectrum/ABS/abs_fr_v0/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ABS/abs_gp450/filament.json /max_fan_speed = 25 ❌ no proof was found
data/spectrum/ABS/abs_gp450/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ABS/abs_kevlar/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/ABS/abs_kevlar/filament.json /max_fan_speed = 25 ❌ no proof was found
data/spectrum/ABS/abs_kevlar/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ABS/abs_medical/filament.json /max_fan_speed = 25 ❌ no proof was found
data/spectrum/ABS/abs_medical/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ABS/smart_abs/filament.json /max_fan_speed = 25 ❌ no proof was found
data/spectrum/ABS/smart_abs/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ASA/asa/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/ASA/asa/filament.json /max_fan_speed = 20 ❌ no proof was found
data/spectrum/ASA/asa/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ASA/asa_275/filament.json /max_fan_speed = 20 ❌ no proof was found
data/spectrum/ASA/asa_275/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ASA/asa_kevlar/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/ASA/asa_kevlar/filament.json /max_fan_speed = 25 ❌ no proof was found
data/spectrum/ASA/asa_kevlar/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ASA/asa_x_cf10/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/ASA/asa_x_cf10/filament.json /max_fan_speed = 20 ❌ no proof was found
data/spectrum/ASA/asa_x_cf10/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ASA/asa_x_gf10/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/ASA/asa_x_gf10/filament.json /max_fan_speed = 20 ❌ no proof was found
data/spectrum/ASA/asa_x_gf10/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/ASA/cf_asa/filament.json /enclosure = "required" ❌ no proof was found
data/spectrum/ASA/cf_asa/filament.json /max_fan_speed = 20 ❌ no proof was found
data/spectrum/ASA/cf_asa/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/HIPS/hips/filament.json /enclosure = "required" ❌ no proof was found
data/spectrum/HIPS/hips/filament.json /max_fan_speed = 20 ❌ no proof was found
data/spectrum/HIPS/hips/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/HIPS/hips_x/filament.json /enclosure = "recommended" ❌ no proof was found
data/spectrum/HIPS/hips_x/filament.json /max_fan_speed = 20 ❌ no proof was found
data/spectrum/HIPS/hips_x/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA12/pa12_cf15/filament.json /dry_temperature = 80 ❌ no proof was found
data/spectrum/PA12/pa12_cf15/filament.json /dry_time = 6 ❌ no proof was found
data/spectrum/PA12/pa12_cf15/filament.json /max_fan_speed = 10 ❌ no proof was found
data/spectrum/PA12/pa12_cf15/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA6/pa6_cf15/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PA6/pa6_cf15/filament.json /max_fan_speed = 10 ❌ no proof was found
data/spectrum/PA6/pa6_cf15/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA6/pa6_cs20_fr_v0/filament.json /dry_temperature = 80 ❌ no proof was found
data/spectrum/PA6/pa6_cs20_fr_v0/filament.json /dry_time = 12 ❌ no proof was found
data/spectrum/PA6/pa6_cs20_fr_v0/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PA6/pa6_cs20_fr_v0/filament.json /max_fan_speed = 10 ❌ no proof was found
data/spectrum/PA6/pa6_cs20_fr_v0/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA6/pa6_gk10/filament.json /dry_temperature = 80 ❌ no proof was found
data/spectrum/PA6/pa6_gk10/filament.json /dry_time = 12 ❌ no proof was found
data/spectrum/PA6/pa6_gk10/filament.json /max_fan_speed = 10 ❌ no proof was found
data/spectrum/PA6/pa6_gk10/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp/filament.json /dry_temperature = 60 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp/filament.json /dry_time = 12 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp/filament.json /max_fan_speed = 30 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp_cf15s/filament.json /dry_temperature = 80 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp_cf15s/filament.json /dry_time = 12 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp_cf15s/filament.json /max_fan_speed = 30 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp_cf15s/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp_gf30/filament.json /dry_temperature = 80 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp_gf30/filament.json /dry_time = 12 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp_gf30/filament.json /max_fan_speed = 30 ❌ no proof was found
data/spectrum/PA6/pa6_low_warp_gf30/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA6/pa6_neat_bk/filament.json /dry_temperature = 80 ❌ no proof was found
data/spectrum/PA6/pa6_neat_bk/filament.json /dry_time = 12 ❌ no proof was found
data/spectrum/PA6/pa6_neat_bk/filament.json /max_fan_speed = 10 ❌ no proof was found
data/spectrum/PA6/pa6_neat_bk/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA6/pa6_neat_nt/filament.json /dry_temperature = 80 ❌ no proof was found
data/spectrum/PA6/pa6_neat_nt/filament.json /dry_time = 12 ❌ no proof was found
data/spectrum/PA6/pa6_neat_nt/filament.json /max_fan_speed = 10 ❌ no proof was found
data/spectrum/PA6/pa6_neat_nt/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PA6/thermatech_pa/filament.json /dry_temperature = 85 ❌ no proof was found
data/spectrum/PA6/thermatech_pa/filament.json /dry_time = 6 ❌ no proof was found
data/spectrum/PA6/thermatech_pa/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PC/pc_275/filament.json /dry_temperature = 120 ❌ no proof was found
data/spectrum/PC/pc_275/filament.json /dry_time = 5 ❌ no proof was found
data/spectrum/PC/pc_275/filament.json /max_fan_speed = 20 ❌ no proof was found
data/spectrum/PC/pc_275/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PCTG/pctg_cf10/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PCTG/pctg_cf10/filament.json /max_fan_speed = 85 ❌ no proof was found
data/spectrum/PCTG/pctg_cf10/filament.json /min_fan_speed = 50 ❌ no proof was found
data/spectrum/PCTG/pctg_gf10/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PCTG/pctg_gf10/filament.json /max_fan_speed = 85 ❌ no proof was found
data/spectrum/PCTG/pctg_gf10/filament.json /min_fan_speed = 50 ❌ no proof was found
data/spectrum/PCTG/pctg_premium/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PCTG/pctg_premium/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PCTG/pctg_premium/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PET/pet_cf15/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PET/pet_cf15/filament.json /max_fan_speed = 30 ❌ no proof was found
data/spectrum/PET/pet_cf15/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PETG/petg_carbon/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PETG/petg_carbon/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PETG/petg_carbon/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PETG/petg_fr_v0/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PETG/petg_fr_v0/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PETG/petg_fr_v0/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PETG/petg_fx120/filament.json /enclosure = "recommended" ❌ no proof was found
data/spectrum/PETG/petg_fx120/filament.json /max_fan_speed = 30 ❌ no proof was found
data/spectrum/PETG/petg_fx120/filament.json /min_fan_speed = 10 ❌ no proof was found
data/spectrum/PETG/petg_glitter/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PETG/petg_glitter/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PETG/petg_glitter/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PETG/petg_glow_in_the_dark/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PETG/petg_glow_in_the_dark/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PETG/petg_glow_in_the_dark/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PETG/petg_ht100/filament.json /enclosure = "recommended" ❌ no proof was found
data/spectrum/PETG/petg_ht100/filament.json /max_fan_speed = 30 ❌ no proof was found
data/spectrum/PETG/petg_ht100/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PETG/petg_matt/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PETG/petg_matt/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PETG/petg_matt/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PETG/petg_premium/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PETG/petg_premium/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PETG/petg_premium/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PETG/petg_premium_high_speed/filament.json /dry_temperature = 60 ❌ no proof was found
data/spectrum/PETG/petg_premium_high_speed/filament.json /dry_time = 4 ❌ no proof was found
data/spectrum/PETG/petg_premium_high_speed/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PETG/petg_premium_high_speed/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PETG/petg_premium_high_speed/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PETG/ptfe/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PETG/ptfe/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PETG/ptfe/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PETG/r_petg/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PETG/r_petg/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PETG/r_petg/filament.json /min_fan_speed = 75 ❌ no proof was found
data/spectrum/PLA/aquaprint/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/aquaprint/filament.json /max_fan_speed = 50 ❌ no proof was found
data/spectrum/PLA/aquaprint/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PLA/flameguard_pla/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/flameguard_pla/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/greenyht/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/greenypro/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/greenypro/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/high_speed_pla/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/high_speed_pla/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/huracan_pla/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/huracan_pla/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/lw_pla_ultrafoam/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/lw_pla_ultrafoam/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pastello_pla/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pastello_pla/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_carbon/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_carbon/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_crystal/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_crystal/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_electrically_conductive/filament.json /dry_temperature = 50 ❌ no proof was found
data/spectrum/PLA/pla_electrically_conductive/filament.json /dry_time = 6 ❌ no proof was found
data/spectrum/PLA/pla_electrically_conductive/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_electrically_conductive/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_glitter/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_glitter/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_glow_in_the_dark/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_glow_in_the_dark/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_magic_silk/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_magic_silk/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_matt/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_matt/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_metal/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_metal/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_nature/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_nature/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_premium/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_premium/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_premium_highspeed/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_premium_highspeed/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_silk/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_silk/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_silk_rainbow/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_silk_rainbow/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_thermoactive/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_thermoactive/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/pla_tough/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/pla_tough/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/r_pla/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/r_pla/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/safeguard_pla/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/safeguard_pla/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/stone_age_pla/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/stone_age_pla/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PLA/wood/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/PLA/wood/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/PP/pp/filament.json /max_fan_speed = 35 ❌ no proof was found
data/spectrum/PP/pp/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/PPS/pps_am230/filament.json /dry_temperature = 90 ❌ no proof was found
data/spectrum/PPS/pps_am230/filament.json /dry_time = 3 ❌ no proof was found
data/spectrum/PPS/pps_am230/filament.json /enclosure = "required" ❌ no proof was found
data/spectrum/PPS/pps_am230/filament.json /max_fan_speed = 10 ❌ no proof was found
data/spectrum/PPS/pps_am230/filament.json /min_fan_speed = 0 ❌ no proof was found
data/spectrum/TPU/s_flex_85a/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/TPU/s_flex_85a/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/TPU/s_flex_90a/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/TPU/s_flex_90a/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/TPU/s_flex_98a/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/TPU/s_flex_98a/filament.json /max_fan_speed = 100 ❌ no proof was found
data/spectrum/TPU/s_flex_carbon/filament.json /enclosure = "not_needed" ❌ no proof was found
data/spectrum/TPU/s_flex_carbon/filament.json /max_fan_speed = 100 ❌ no proof was found

Checks

No issues found by the automated checks.

AI review

Adds the #767 print-parameter fields (fan speed, enclosure, drying) to 72 Spectrum filaments, all as the body describes. I read the PA6 CF15 and PA12 CF15 datasheets: their fan, enclosure and drying values match the diff, but I could not check the other lines. One inconsistency between the body and the diff needs fixing before merge.

Inline on the diff: 2 findings.

claude-haiku-5-5 · $0.03 · reviewed d7d727f

Auto-merge

The Auto-merge check decides, not this comment. A PR auto-merges after an hour (add the hold label to stop it) only if every changed value is proven above, nothing contradicts the brand, the brand isn't claimed, no sustainability data is touched and every check is green. Anything else waits for a maintainer.

Checks ran on d7d727f · workflow run

Maintainers: ✅ LGTM & merge

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AI review: see the summary comment.

@coffandro coffandro left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Thanks for the contribution, it'll be up on SP and the dataset at about 00:00 Danish time.
Also sorry for the "radio chatter", we're working out the kinks on a new system :D

@coffandro
coffandro merged commit f162a2f into OpenFilamentCollective:main Oct 31, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants