Druid Firmware

From RepRap
Revision as of 23:49, 22 November 2022 by Danmas (talk | contribs)
Jump to: navigation, search
Crystal Clear action run.png
Druid Firmware

Release status: Beta

Druid Logo.png
Description
Dedicated Firmware that currently runs only on Flashforge CoreBoard (All revisions)
License
Author
Contributors
Based-on
Categories
CAD Models
External Link


Druid firmware is a dedicated 3D printer firmware that currently runs only on Flashforge CoreBoard (all Revisions).

Printer that uses this controller:

Flashforge: Dreamer, Dreamer NX and Inventor. Dremel: 3D20. Powerspec: Ultra 3D. Monoprice: Inventor 1.

The firmware is currently in it's Beta testing phase.


Currently supported Gcodes: (Partial list)

"G" Codes


G0,G1   - Coordinated Movement X Y Z E.
G2      - CW ARC.
G3      - CCW ARC.
G4      - Dwell S<seconds> or P<milliseconds> if both set (then S will be used, P will be omitted).
G5      - Cubic B-spline with XYZE destination and IJPQ offsets.
G6      - Direct stepping moves.
G20     - Set input units to inches.
G21     - Set input units to millimeters.
G27     - Park Nozzle.
G28     - Home one or more axes.
G90     - Use Absolute Coordinates.
G91     - Use Relative Coordinates.

"M" Codes


M0,M1   - Unconditional stop - Wait for user to press <CONTINUE> on the LCD.
M17     - Enable/Power all stepper motors.
M18,M84 - Disable all stepper motors, until next move.
M20     - List SD card. 
M21     - Mount SD card. 
M22     - Release SD card.
M75     - Start the print job timer.
M76     - Pause the print job timer.
M77     - Stop the print job timer.
M82     - Set Extruder(s) to Absolute (default).
M83     - Set Extruder(s) to Relative.
M85     - Set inactivity shutdown timer with parameter S<seconds>. 0=Disable (default).
M92     - Set steps_per_mm for one or more axes.
M104    - Set extruder target temperature.
M105    - Report current temperatures.
M106    - Set print fan speed.
M107    - Print fan off.
M115    - Report capabilities.
M117    - Display a message on the controller screen. 
M118    - Display a message in the host console.
M119    - Report endstops status.
M120    - Enable endstops detection.
M121    - Disable endstops detection.
M300    - Play beep sound S<frequency Hz> P<duration ms>
M301    - Set PID parameters P I and D.
M302    - Set the minimum extrude temperature, to avoid cold extrusion. S<temperature>.
M303    - PID autotune - sets the parameters needed to perform autotune, for a specific heater and temperature range (New).
M304    - Set bed PID parameters P I and D. 
M309    - Set chamber PID parameters P I and D. 
M400    - Finish all moves.
M410    - Abort all planned moves.
M412    - Enable / Disable Filament Runout Detection.
M500    - Write parameters in next flash subdivision. (Note 1)
M501    - Read parameters from current flash subdivision. ( Automatically done at every boot )
M502    - Revert all parameters to the default "factory settings" and store in next flash subdivision.
M503    - List the current settings (in memory).
M510    - Lock Printer 
M511    - Unlock Printer 
M512    - Set/Change/Remove Password 
M524    - Abort the current SD print job started with M24.
M575    - Change the serial baud rate.
M907    - Set motor current using axis codes.
M995    - Touch screen calibration.

"T" Codes


T0-T1   - Select an extruder(tool) by index: "T<n> F<units/min>"


Note 1. Because of the small size for parameter storage (512 bytes), a 128K flash memory sector is used as permanent storage. The sector can be partially written 256 times (512 bytes per backup) before requiring a complete sector wipe, to restart the same process again. (That was 1 write cycle). The flash memory maximum write cycles guaranteed for the STM32F407 MCU by ST Microelectronics are 10000, yielding a total of 2.56 million times parameters can be saved.