Сhange the starting g-code for all system filament profiles

Change the starting g-code for all system filament profiles of the same type (v1.5.0.60)

The system profile settings path (the first launch of the studio after installation is required):

c:\Users\<WINDOWS USER NAME>\AppData\Roaming\BambuStudio\system\BBL\filament\

To change the starting g-code for all default profiles of the same type (for example, to print as profile Bambu PLA XXXXX with speed of the chamber cooler of 50%), do the following:

  • look for and edit the file fdm_filament_pla.json
  • at the end of the file there will be a basic g-code in which we change the fan speed to the one we need
  • for generic profile, change in Generic PLA @base.json
  • after change restart bambu studio if it was runnig
    "filament_start_gcode": [
            "; filament start gcode\n{if  (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer
            [current_extruder] >45)}M106 P3 S125\n{elsif(bed_temperature[current_extruder] >35)||
            (bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S125\n{endif}"
        ]

M106 P3 S125 - in this case S125 is 50% of the speed (value range S0 - S255). Subjectively, I see no reason to spin the chamber fan above 50% at all, since it does not greatly affect the temperature in the chamber. From user experience, it is worth turning it on even when printing ABS, harmful fumes are reduced, as a vacuum is created inside the chamber and air leaves it, mainly through a carbon filter.

Note 1: before updating the version, save these files just in case, bambu studio may overwrite them to default

Note 2: The end g-code is in fdm_filament_common.json, applies to all system profiles of all types of filament

Note 3: for example, Generic PLA and Generic PLA Silk are different types and each needs to change the g-code in the respective files

List of files where the chamber fan speed is set in the starting g-code:

For BBL X1C:

fdm_filament_pet.json
fdm_filament_pla.json
fdm_filament_pva.json
fdm_filament_tpu.json
Generic PETG @base.json
Generic PLA @0.2 nozzle.json
Generic PLA @base.json
Generic PLA Silk @base.json
Generic PLA-CF @base.json
Generic TPU.json
PolyLite PLA @BBL X1C.json
PolyTerra PLA @BBL X1C.json

For BBL P1P:

Generic PLA @BBL P1P 0.2 nozzle.json
Generic TPU @BBL P1P.json

Note: it’s not clear why this parameter is set for P1P

Hope this helps someone

Inrteresting idea, but won’t this get overwritten on the next Studio upgrade? Also, the changes won’t be synched to the cloud. I just keep my own filament profiles with the changes I want (I’ve also adjusted volumetric max).

Yes, you are right, but custom profile is not convenient because it is not in the list of AMS profiles and you have to additionally select a profile in the slicer itself before printing

I used this method only to reduce the speed of the chamber fan
For other changes in the print profile, it is better to make custom