Armored Turtle Automated Filament Control (AFC) Buffer¶
This file describes the AFC_buffer
module, part of the Armored Turtle Automated Filament Control (AFC) project.
Overview¶
The AFC_buffer
module is responsible for handling the buffer, currently supported buffers are
TurtleNeck and TurtleNeck 2.0/Pro.
The Turtleneck buffer involves two sensors (advance and trailing).
The buffer adjusts rotation distance for active Box Turtle extruder(lane) based on sensor inputs and can either compress or expand to manage filament feeding properly.
Basic Functionality¶
The AFC buffer is designed to work with two extruder filament control systems. The primary extruder is at the print head(s) and the second is in the AFC unit. While the 2 extruders are synced they will never be perfect. This is where a buffer comes in. The buffer is used to make up for any inconsistencies in the sync between the 2 stepper motors.
TurtleNeck Style buffer¶
Two sensor TurtleNeck-style buffers are used to modulate the rotation distance of the secondary extruder. The buffer's expansion or compression increases or decreases the rotation distance.
-
If the
trailing
sensor is triggered, this means that the buffer is compressed, the AFC will decrease rotation distance in order to move the filament quicker to the primary extruder. -
If the
advance
sensor is triggered, this means that the buffer is expanded, the AFC will increase rotation distance in order to slow the filament moving to the primary extruder.
Turtleneck 1.0¶
TurtleNeck 2.0¶
Configuration¶
Required AFC Configuration Options¶
In AFC_Hardware.cfg
, buffer
must be defined.
Example under AFC_extruder
:
Required AFC Hardware Configuration Options¶
In your AFC hardware configuration file, ensure you include the following options:
TurtleNeck Style buffer¶
advance_pin
: Pin for the advance sensor.trailing_pin
: Pin for the trailing sensor.
Optional for more fine-tuning:
multiplier_high
: Factor to move more filament through the secondary extruder.multiplier_low
: Factor to move less filament through the secondary extruder.
TurtleNeck 2.0 LED Indicator Configuration¶
Add to AFC_hardware.cfg
file:
[AFC_led Buffer_Indicator]
pin: TN:PD3
chain_count: 1
color_order: GRBW
initial_RED: 0.0
initial_GREEN: 0.0
initial_BLUE: 0.0
initial_WHITE: 0.0
Optional AFC.cfg LED settings¶
Example Configs¶
[AFC_buffer TN]
advance_pin: # set advance pin
trailing_pin: # set trailing pin
multiplier_high: 1.05 # default 1.05, factor to feed more filament
multiplier_low: 0.95 # default 0.95, factor to feed less filament
velocity: 100
[AFC_buffer TN2]
advance_pin: !turtleneck:ADVANCE
trailing_pin: !turtleneck:TRAILING
multiplier_high: 1.05 # default 1.05, factor to feed more filament
multiplier_low: 0.95 # default 0.95, factor to feed less filament
led_index: Buffer_Indicator:1
velocity: 100
Off-Nominal Buffer Configurations¶
Buffers can also be set per Unit/Stepper. If multiple lanes use the same buffer for one Unit then the buffer can just
be added to Unit config (AFC_BoxTurtle
, AFC_NightOwl
, etc.). If a buffer is inputted into the AFC_Stepper
config then this will override whatever is set at the Unit level.
Example¶
Setting buffer for a single unit
Overriding buffer at stepper:AFC buffer commands¶
QUERY BUFFER¶
The QUERY_BUFFER
command reports the current state of the buffer and, if applicable, the rotation distance
of the AFC stepper motor.
Example usage:
QUERY_BUFFER BUFFER=Turtleneck
Example outputs:
Turtleneck: Trailing
- buffer is moving from the Advance trigger to the Trailing.Turtleneck: Advancing
- buffer is moving from the Trailing trigger to the Advance.
SET_ROTATION_FACTOR¶
For TurtleNeck Style Buffers
This command allows the adjustment of rotation distance of the current AFC stepper motor by applying a factor. Factors greater than 1 will increase the rate filament is fed to the primary extruder, factors less than 1 but greater than 0 will decrease the rate filament to the primary extruder.
Example Usage:
SET_ROTATION_FACTOR BUFFER=TN FACTOR=1.1
SET_BUFFER_MULTIPLIER¶
For TurtleNeck Style Buffers
SET_BUFFER_MULTIPLIER
used to live adjust the high and low multipliers for the buffer
- To change multiplier_high
: SET_BUFFER_MULTIPLIER BUFFER=TN MULTIPLIER=HIGH FACTOR=1.2
- To change multiplier_low
: SET_BUFFER_MULTIPLIER BUFFER=TN MULTIPLIER=HIGH FACTOR=0.8
Note
Buffer config section must be updated for values to be saved