Page 1 of 2

Baisc settings and calibration guide for your 3D printer

Posted: Sat Nov 28, 2015 5:25 pm
by Mark
Hello guys, here I'll introduce some basic settings in the firmware for newcomers in 3Dprinters, and you can get more details in the rerap wiki link at the end of this post.

Here we'll take GT2560 for example, and the parameters that need setting are as below, for those not mentioned just leave them as default.

#define BAUDRATE 250000

This parameter is for the baud rate of serial port. Note: a successful communication can be realized only when the Baud rate of upper computer is identical with that of Firmware. The Baud rate is not set in random. The common Baud rate are: 2400,9600,19200,38400,57600,115200,250000. The last three are frequently used for 3D Printer.

#define MOTHERBOARD 7

This parameter is set for board type. 3D Printer has many types of main board, and the settings of IOs are different, therefore, the parameter has to correspond to the type of your board, or it can’t operate normally. The parameter of GT2560 should be 7(single- nozzle). For other board, you can refer to the annotation on the board.(you can find it in the tab boards.h in your firmware)

#define TEMP_SENSOR_0 1
#define TEMP_SENSOR_BED 1

The two parameters are set for the type of temperature sensor respectively. They are the critical parameter to check if the sensor read temperature correctly. The printer can’t operate normally, even has potential risk (damage the device and even worse). You must modify depending on the temperature sensor you use.

#define EXTRUDE_MINTEMP 170

This parameter is set to avoid potential risks when the extruder operates before reaching the rated temperature. If you use other 3D Printer, such as printer to make Chocolates, 45℃ is appropriate, so that the parameter configured to a lower value(such as 40℃).

const bool X_ENDSTOPS_INVERTING = true;
const bool Y_ENDSTOPS_INVERTING = true;
const bool Z_ENDSTOPS_INVERTING = true.

The three parameters are set for the end stops of three axes. If the configuration is true, the end stop outputs 1 in default condition, and outputs 0 when triggered. That is to say, mechanical end stop should connect to the NO (normally open) contactor. If it is connected to the NC (normally closed), true should be changed to false.

#define INVERT_X_DIR false
#define INVERT_Y_DIR true

Mistakes are often made in the above two parameters. The parameters are different for different machinery. In principle, the origin should be at lower-left corner of the print platform (origin: [0, 0]), or at up-right corner (origin: [max, max]). Only in this way will the printing be correct, otherwise, the printing is the mirror image of one axis which is not what expected.

#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1

If the position of the origin is the minimum, the parameter is -1; if it is the maximum, the parameter is 1.

#define X_MAX_POS 205
#define X_MIN_POS 0
#define Y_MAX_POS 205
#define Y_MIN_POS 0
#define Z_MAX_POS 200
#define Z_MIN_POS 0

These parameters are crucial to the printing size. Fill in parameters by reference to the coordinate graphs. It is important to note that the origin is not the printing center and the real printing center usually lies at [(x.max - x.min)/2, (y.max -y.min/2)]. The coordinate of central will be used in the slice tool. The printing center’s coordinate must correspond to the parameter configuration, or it will print to the outside of the platform.

#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0}

The parameter means the homing speeds (mm/min). This parameter can be set as default if you use the x-axis and y-axis adopt synchronous belt drive and z-axis adopts screw drive.

#define DEFAULT_AXIS_STEPS_PER_UNIT {85.3333, 85.3333, 2560, 158.8308}

These parameters are crucial to the printing size. These parameters indicate the pulse the axis need when operating 1mm. they are corresponding to x, y, z axis and extruder respectively. In most cases these figure should be calculated by yourself, you can refer to: http://calculator.josefprusa.cz/#steppers.
So far, the commonest parameters have been configured and the printer can work now. In addition, if the 2004 LCD needs verifying, you should delete the “//” from “//#define REPRAP_DISCOUNT_SMART_CONTROLLER” to ensure the normal working.

For more details please come to Triffid Hunter's Calibration Guide:
http://reprap.org/wiki/Triffid_Hunter's ... tion_Guide
QQ截图20151128172412.jpg
QQ截图20151128172412.jpg (95.74 KiB) Viewed 80777 times

Re: Baisc settings and calibration guide for your 3D printer

Posted: Wed Jan 04, 2017 12:02 am
by pat51
hello
thanks for your parameters
I am new user of 3D and Arduino
Can you tell me where and How we can configure those values????
My problem is that when I start "auto home" X motor goes on bad side
Thanks for your answer
regards
Pat
And happy new year

Re: Baisc settings and calibration guide for your 3D printer

Posted: Thu Jan 05, 2017 10:44 am
by bang
Hi,
You mean your X motor has a wrong direction when Auto Home?
If so,check this:
The X endstop is on the left,so the motor should move to left to hit the X endstop.Therefore,your X motor has a wrong direction,you can modify it in the firmware:
1)Download the firmware for your printer and reflash the firmware again:
http://www.geeetech.com/forum/viewtopic ... 20&t=17046
2)Upload the firmware again after that by referring this post:
http://www.geeetech.com/forum/viewtopic ... 13&t=17181
If the direction is still wrong:
3)Refer to the following post to modify the wrong direction:
http://www.geeetech.com/forum/viewtopic ... 17&t=17037
Then repeat the step 2.

Re: Baisc settings and calibration guide for your 3D printer

Posted: Thu Jan 12, 2017 11:03 pm
by pat51
hello Bang
thanks for your your answer
Yes in auto home mode , X motor mouvement is wrong, opposite side
I understand how to use Arduino log then take firmware for my Prusa I3 Pro b
When I do the transfer I have error msg
"
c:\program files (x86)\arduino\hardware\tools\avr\avr\include\stdio.h:950:33: note: 'fpos_t' has a previous declaration here

__extension__ typedef long long fpos_t;



exit status 1
using typedef-name 'fpos_t' after 'struct'"



I have verify that usb cnx is Ok : check Ok
but I do not understand error msg what does it mean :-/

complete error msg :
Arduino : 1.8.1 (Windows 7), Carte : "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

In file included from sketch\Marlin.h:23:0,

from sketch\BlinkM.cpp:5:

sketch\pins.h:2956:0: warning: "X_MAX_PIN" redefined

#define X_MAX_PIN -1

^

sketch\pins.h:1363:0: note: this is the location of the previous definition

#define X_MAX_PIN 24

^

sketch\pins.h:2957:0: warning: "Y_MAX_PIN" redefined

#define Y_MAX_PIN -1

^

sketch\pins.h:1369:0: note: this is the location of the previous definition

#define Y_MAX_PIN 28

^

sketch\pins.h:2958:0: warning: "Z_MAX_PIN" redefined

#define Z_MAX_PIN -1

^

sketch\pins.h:1375:0: note: this is the location of the previous definition

#define Z_MAX_PIN 32

^

In file included from sketch\Marlin.h:23:0,

from sketch\ConfigurationStore.cpp:1:

sketch\pins.h:2956:0: warning: "X_MAX_PIN" redefined

#define X_MAX_PIN -1

^

sketch\pins.h:1363:0: note: this is the location of the previous definition

#define X_MAX_PIN 24

^

sketch\pins.h:2957:0: warning: "Y_MAX_PIN" redefined

#define Y_MAX_PIN -1

^

sketch\pins.h:1369:0: note: this is the location of the previous definition

#define Y_MAX_PIN 28

^

sketch\pins.h:2958:0: warning: "Z_MAX_PIN" redefined

#define Z_MAX_PIN -1

^

sketch\pins.h:1375:0: note: this is the location of the previous definition

#define Z_MAX_PIN 32

^

In file included from sketch\Marlin.h:23:0,

from sketch\thermistortables.h:4,

from sketch\Configuration.h:792,

from C:\Users\Jacques\Documents\Imprimante 3D\I3_pro_X\I3_pro_X\Marlin\Marlin.ino:33:

sketch\pins.h:2956:0: warning: "X_MAX_PIN" redefined

#define X_MAX_PIN -1

^

sketch\pins.h:1363:0: note: this is the location of the previous definition

#define X_MAX_PIN 24

^

sketch\pins.h:2957:0: warning: "Y_MAX_PIN" redefined

#define Y_MAX_PIN -1

^

sketch\pins.h:1369:0: note: this is the location of the previous definition

#define Y_MAX_PIN 28

^

sketch\pins.h:2958:0: warning: "Z_MAX_PIN" redefined

#define Z_MAX_PIN -1

^

sketch\pins.h:1375:0: note: this is the location of the previous definition

#define Z_MAX_PIN 32

^

In file included from sketch\Marlin.h:23:0,

from sketch\MarlinSerial.cpp:23:

sketch\pins.h:2956:0: warning: "X_MAX_PIN" redefined

#define X_MAX_PIN -1

^

sketch\pins.h:1363:0: note: this is the location of the previous definition

#define X_MAX_PIN 24

^

sketch\pins.h:2957:0: warning: "Y_MAX_PIN" redefined

#define Y_MAX_PIN -1

^

sketch\pins.h:1369:0: note: this is the location of the previous definition

#define Y_MAX_PIN 28

^

sketch\pins.h:2958:0: warning: "Z_MAX_PIN" redefined

#define Z_MAX_PIN -1

^

sketch\pins.h:1375:0: note: this is the location of the previous definition

#define Z_MAX_PIN 32

^

In file included from sketch\Marlin.h:23:0,

from sketch\Marlin_main.cpp:30:

sketch\pins.h:2956:0: warning: "X_MAX_PIN" redefined

#define X_MAX_PIN -1

^

sketch\pins.h:1363:0: note: this is the location of the previous definition

#define X_MAX_PIN 24

^

sketch\pins.h:2957:0: warning: "Y_MAX_PIN" redefined

#define Y_MAX_PIN -1

^

sketch\pins.h:1369:0: note: this is the location of the previous definition

#define Y_MAX_PIN 28

^

sketch\pins.h:2958:0: warning: "Z_MAX_PIN" redefined

#define Z_MAX_PIN -1

^

sketch\pins.h:1375:0: note: this is the location of the previous definition

#define Z_MAX_PIN 32

^

sketch\Marlin_main.cpp:2667:36: warning: invalid suffix on literal; C++11 requires a space between literal and string macro [-Wliteral-suffix]

LCD_MESSAGEPGM(MACHINE_NAME" "MSG_OFF".");

^

In file included from sketch\SdFile.h:27:0,

from sketch\cardreader.h:8,

from sketch\Marlin_main.cpp:44:

SdBaseFile.h:38: error: using typedef-name 'fpos_t' after 'struct'

struct fpos_t {

^

In file included from sketch\Marlin.h:10:0,

from sketch\Marlin_main.cpp:30:

c:\program files (x86)\arduino\hardware\tools\avr\avr\include\stdio.h:950:33: note: 'fpos_t' has a previous declaration here

__extension__ typedef long long fpos_t;

^

exit status 1
using typedef-name 'fpos_t' after 'struct'

Ce rapport pourrait être plus détaillé avec
l'option "Afficher les résultats détaillés de la compilation"
activée dans Fichier -> Préférences.
"

If someone can help me
thanks
Pat

Re: Baisc settings and calibration guide for your 3D printer

Posted: Thu Feb 23, 2017 7:56 pm
by PrinterHacker
I had similar problems. Use Geedtech firmware file. Use it without modifications. Do not use GitHub marlin file. It needs lot of tweeking and may not work.

Re: Baisc settings and calibration guide for your 3D printer

Posted: Mon Mar 20, 2017 8:53 pm
by nobbyyyy
I have the same problems, with the files from Geetech.
Ive downloaded the Marclin-PI3_Pro_3

Re: Baisc settings and calibration guide for your 3D printer

Posted: Tue Jun 20, 2017 12:55 am
by Naqaj
I'll add to the above:

The firmware for the Geeetech Rostock Mini G2 downloaded from here does produce the same compile error on more recent versions of Arduino.

When going back to the older version Arduino 1.6.8, the sketch does compile again, though still with some warnings.


It would be really nice if the firmware could be updated to a more current and bug-free version of Marlin. 1.1 especially brought some very nice improvements for delta printers, but the default version doesn't seem to work with the G2.

Re: Baisc settings and calibration guide for your 3D printer

Posted: Wed Jun 21, 2017 7:56 am
by arekoner
hi i have a geetech i3 pro b

i was a bit off one night and decided it was a good idea to play with firmware....
long story short most everything is fixed but printer attempts to print off of the bed , home centers correctly after inverting x
i think i may just have an issue regarding bed size and center of bed can anyone point me in the right direction where to look in arduino ide to find these points

Re: Baisc settings and calibration guide for your 3D printer

Posted: Wed Mar 07, 2018 1:46 am
by MADLABTEC
HELLO ALL I JUST WANT TO SHARE WITH YOU ALL IF YOU HAVE NOT FIXED THIS YET, BUT TO UPDATE THE FIRMWARE YOU'LL NEED TO USE (older version Arduino 1.0.1) TO CHECK OR UPDATE THE FIRMWARE IF YOU MAKE ANY CHANGES TO THE FIRMWARE BEFORE UPDATING THE FIRMWARE,YOU WILL NEED TO USE ANY ARDUINO NEWER THEN 1.6.0 VERSION NEWER TO EDITE AND SAVE THE FIRMWARE... I USE THE (version Arduino 1.6.9) FOR THE EDITING OF THE FIRMWARE AND I USE THE (older version Arduino 1.0.1) TO CHECK IF OKAY AND THEN UPLOAD IT. HOPE THIS HELPS YOU ALL AND OTHERS NEEDING HELP ... TOOK ME LONG DAYS AND PAINFUL HOURS TO GET THIS RIGHT ... SO SHARING IS CARING AND KNOWLEDGE IS POWER ... NOW TO GET IT TO PRINT LMAO GOOD LUCK ALL

Re: Baisc settings and calibration guide for your 3D printer

Posted: Wed Mar 07, 2018 11:08 am
by Admin
MADLABTEC wrote:
Wed Mar 07, 2018 1:46 am
HELLO ALL I JUST WANT TO SHARE WITH YOU ALL IF YOU HAVE NOT FIXED THIS YET, BUT TO UPDATE THE FIRMWARE YOU'LL NEED TO USE (older version Arduino 1.0.1) TO CHECK OR UPDATE THE FIRMWARE IF YOU MAKE ANY CHANGES TO THE FIRMWARE BEFORE UPDATING THE FIRMWARE,YOU WILL NEED TO USE ANY ARDUINO NEWER THEN 1.6.0 VERSION NEWER TO EDITE AND SAVE THE FIRMWARE... I USE THE (version Arduino 1.6.9) FOR THE EDITING OF THE FIRMWARE AND I USE THE (older version Arduino 1.0.1) TO CHECK IF OKAY AND THEN UPLOAD IT. HOPE THIS HELPS YOU ALL AND OTHERS NEEDING HELP ... TOOK ME LONG DAYS AND PAINFUL HOURS TO GET THIS RIGHT ... SO SHARING IS CARING AND KNOWLEDGE IS POWER ... NOW TO GET IT TO PRINT LMAO GOOD LUCK ALL
Thanks for sharing!