modification of marlin-deltabot firmware
April 06, 2016 07:52AM
i am making a college project in which i want to use a delta type printer, in which i have replaced the extruder part of delta printer and i am using it as a bed for my project.
since i have no heating bed, extruder, fan, temperature sensors, so i want to eliminate these components from the open source marlin-deltabot firmware. All i want to use is the frame of delta printer with all three motors working so that i can move my bed in all the axis. please tell me how to modify the marlin and what changes should i make.

Thank you
Re: modification of marlin-deltabot firmware
April 06, 2016 08:21AM


open the source code up and press the delete button?



why can't you just leave it be?

Edited 1 time(s). Last edit at 04/06/2016 08:21AM by Qdeathstar.
Re: modification of marlin-deltabot firmware
April 06, 2016 10:07AM
If you need to ask how to modify it then just do not modify it at all. The point is that there is no simple answer to your question. You need to identify the code which controls the temperature sensors and the heating elements and delete it. You need to roughly understand the code around and modify it so that the deleted parts do not brake the rest.

It does not matter that the code has functionality (i.e. the temperature management) which you are not going to use. Just leave it there.
Re: modification of marlin-deltabot firmware
April 06, 2016 11:49AM
I tried to modify the firmware but it is showing following errors while compiling.

Arduino: 1.6.5 (Windows 7), Board: "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

Marlin_main.cpp:853: error: expected primary-expression before ';' token
XYZ_CONSTS_FROM_CONFIG(float, base_min_pos, MIN_POS);
^
Marlin_main.cpp:854: error: expected primary-expression before ';' token
XYZ_CONSTS_FROM_CONFIG(float, base_max_pos, MAX_POS);
^
Marlin_main.cpp:855: error: expected primary-expression before ';' token
XYZ_CONSTS_FROM_CONFIG(float, base_home_pos, HOME_POS);
^
Marlin_main.cpp:856: error: expected primary-expression before ';' token
XYZ_CONSTS_FROM_CONFIG(float, max_length, MAX_LENGTH);
^
Marlin_main.cpp:857: error: expected primary-expression before ';' token
XYZ_CONSTS_FROM_CONFIG(float, home_retract_mm, HOME_RETRACT_MM);
^
Marlin_main.cpp:858: error: expected primary-expression before ';' token
XYZ_CONSTS_FROM_CONFIG(signed char, home_dir, HOME_DIR);
^
Marlin_main.cpp: In function 'void axis_is_at_home(int)':
Marlin_main.cpp:967: error: 'base_home_pos' was not declared in this scope
current_position[axis] = base_home_pos(axis) + add_homing[axis];
^
Marlin_main.cpp:968: error: 'base_min_pos' was not declared in this scope
min_pos[axis] = base_min_pos(axis) + add_homing[axis];
^
Marlin_main.cpp:969: error: 'base_max_pos' was not declared in this scope
max_pos[axis] = base_max_pos(axis) + add_homing[axis];
^
Marlin_main.cpp: In function 'void homeaxis(int)':
Marlin_main.cpp:1283: error: 'home_dir' was not declared in this scope
int axis_home_dir = home_dir(axis);
^
Marlin_main.cpp:1310: error: 'max_length' was not declared in this scope
destination[axis] = 1.5 * max_length(axis) * axis_home_dir;
^
Marlin_main.cpp:1318: error: 'home_retract_mm' was not declared in this scope
destination[axis] = -home_retract_mm(axis) * axis_home_dir;
^
In file included from Marlin.h:22:0,
from Marlin_main.cpp:30:
Marlin_main.cpp: In function 'void process_commands()':
Configuration.h:360: error: 'Z' was not declared in this scope
#define Z_MAX_POS Z-Probe Repeatability test
^
Configuration.h:365:24: note: in expansion of macro 'Z_MAX_POS'
#define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS)
^
Marlin_main.cpp:1565:37: note: in expansion of macro 'Z_MAX_LENGTH'
destination[X_AXIS] = 3 * Z_MAX_LENGTH;
^
Configuration.h:360: error: 'Probe' was not declared in this scope
#define Z_MAX_POS Z-Probe Repeatability test
^
Configuration.h:365:24: note: in expansion of macro 'Z_MAX_POS'
#define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS)
^
Marlin_main.cpp:1565:37: note: in expansion of macro 'Z_MAX_LENGTH'
destination[X_AXIS] = 3 * Z_MAX_LENGTH;
^
Configuration.h:360: error: expected ')' before 'Repeatability'
#define Z_MAX_POS Z-Probe Repeatability test
^
Configuration.h:365:24: note: in expansion of macro 'Z_MAX_POS'
#define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS)
^
Marlin_main.cpp:1565:37: note: in expansion of macro 'Z_MAX_LENGTH'
destination[X_AXIS] = 3 * Z_MAX_LENGTH;
^
Configuration.h:360: error: expected ')' before 'Repeatability'
#define Z_MAX_POS Z-Probe Repeatability test
^
Configuration.h:365:24: note: in expansion of macro 'Z_MAX_POS'
#define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS)
^
Marlin_main.cpp:1566:37: note: in expansion of macro 'Z_MAX_LENGTH'
destination[Y_AXIS] = 3 * Z_MAX_LENGTH;
^
Configuration.h:360: error: expected ')' before 'Repeatability'
#define Z_MAX_POS Z-Probe Repeatability test
^
Configuration.h:365:24: note: in expansion of macro 'Z_MAX_POS'
#define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS)
^
Marlin_main.cpp:1567:37: note: in expansion of macro 'Z_MAX_LENGTH'
destination[Z_AXIS] = 3 * Z_MAX_LENGTH;
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:146: error: 'E_ENABLE_ON' was not declared in this scope
#define enable_e0() WRITE(E0_ENABLE_PIN, E_ENABLE_ON)
^
fastio.h:32:36: note: in definition of macro '_WRITE_C'
#define _WRITE_C(IO, v) do { if (v) { \
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:146:23: note: in expansion of macro 'WRITE'
#define enable_e0() WRITE(E0_ENABLE_PIN, E_ENABLE_ON)
^
Marlin_main.cpp:2077:9: note: in expansion of macro 'enable_e0'
enable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:146: error: 'E_ENABLE_ON' was not declared in this scope
#define enable_e0() WRITE(E0_ENABLE_PIN, E_ENABLE_ON)
^
fastio.h:30:36: note: in definition of macro '_WRITE_NC'
#define _WRITE_NC(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0)
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:146:23: note: in expansion of macro 'WRITE'
#define enable_e0() WRITE(E0_ENABLE_PIN, E_ENABLE_ON)
^
Marlin_main.cpp:2077:9: note: in expansion of macro 'enable_e0'
enable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:32:36: note: in definition of macro '_WRITE_C'
#define _WRITE_C(IO, v) do { if (v) { \
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:2787:9: note: in expansion of macro 'disable_e0'
disable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:30:36: note: in definition of macro '_WRITE_NC'
#define _WRITE_NC(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0)
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:2787:9: note: in expansion of macro 'disable_e0'
disable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:32:36: note: in definition of macro '_WRITE_C'
#define _WRITE_C(IO, v) do { if (v) { \
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:2824:11: note: in expansion of macro 'disable_e0'
disable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:30:36: note: in definition of macro '_WRITE_NC'
#define _WRITE_NC(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0)
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:2824:11: note: in expansion of macro 'disable_e0'
disable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:32:36: note: in definition of macro '_WRITE_C'
#define _WRITE_C(IO, v) do { if (v) { \
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:2837:15: note: in expansion of macro 'disable_e0'
disable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:30:36: note: in definition of macro '_WRITE_NC'
#define _WRITE_NC(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0)
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:2837:15: note: in expansion of macro 'disable_e0'
disable_e0();
^
Marlin_main.cpp: In function 'void clamp_to_software_endstops(float*)':
Marlin_main.cpp:4107: error: 'max_software_endstops' was not declared in this scope
if (max_software_endstops) {
^
Marlin_main.cpp: In function 'void adjust_delta(float*)':
Marlin_main.cpp:4154: error: 'AUTO_BED_LEVELING_GRID_POINTS' was not declared in this scope
int half = (AUTO_BED_LEVELING_GRID_POINTS - 1) / 2;
^
In file included from Marlin.h:30:0,
from Marlin_main.cpp:30:
Marlin_main.cpp:4155: error: 'AUTO_BED_LEVELING_GRID_X' was not declared in this scope
float grid_x = max(0.001-half, min(half-0.001, cartesian[X_AXIS] / AUTO_BED_LEVELING_GRID_X));
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:85:24: note: in definition of macro 'max'
#define max(a,b) ((a)>(b)?(a)sad smileyb))
^
Marlin_main.cpp:4155:34: note: in expansion of macro 'min'
float grid_x = max(0.001-half, min(half-0.001, cartesian[X_AXIS] / AUTO_BED_LEVELING_GRID_X));
^
Marlin_main.cpp:4156: error: 'AUTO_BED_LEVELING_GRID_Y' was not declared in this scope
float grid_y = max(0.001-half, min(half-0.001, cartesian[Y_AXIS] / AUTO_BED_LEVELING_GRID_Y));
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:85:24: note: in definition of macro 'max'
#define max(a,b) ((a)>(b)?(a)sad smileyb))
^
Marlin_main.cpp:4156:34: note: in expansion of macro 'min'
float grid_y = max(0.001-half, min(half-0.001, cartesian[Y_AXIS] / AUTO_BED_LEVELING_GRID_Y));
^
Marlin_main.cpp:4161: error: 'bed_level' was not declared in this scope
float z1 = bed_level[floor_x+half][floor_y+half];
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin_main.cpp: In function 'void manage_inactivity()':
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:32:36: note: in definition of macro '_WRITE_C'
#define _WRITE_C(IO, v) do { if (v) { \
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:4521:9: note: in expansion of macro 'disable_e0'
disable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:30:36: note: in definition of macro '_WRITE_NC'
#define _WRITE_NC(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0)
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:4521:9: note: in expansion of macro 'disable_e0'
disable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin_main.cpp: In function 'void kill()':
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:32:36: note: in definition of macro '_WRITE_C'
#define _WRITE_C(IO, v) do { if (v) { \
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:4586:3: note: in expansion of macro 'disable_e0'
disable_e0();
^
In file included from Marlin.h:21:0,
from Marlin_main.cpp:30:
Marlin.h:147: error: 'E_ENABLE_ON' was not declared in this scope
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
fastio.h:30:36: note: in definition of macro '_WRITE_NC'
#define _WRITE_NC(IO, v) do { if (v) {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); } else {DIO ## IO ## _WPORT &= ~MASK(DIO ## IO ## _PIN); }; } while (0)
^
fastio.h:68:23: note: in expansion of macro '_WRITE'
#define WRITE(IO, v) _WRITE(IO, v)
^
Marlin.h:147:24: note: in expansion of macro 'WRITE'
#define disable_e0() WRITE(E0_ENABLE_PIN,!E_ENABLE_ON)
^
Marlin_main.cpp:4586:3: note: in expansion of macro 'disable_e0'
disable_e0();
^
expected primary-expression before ';' token

This report would have more information with
"Show verbose output during compilation"
enabled in File > Preferences.
Re: modification of marlin-deltabot firmware
April 06, 2016 01:04PM
You could try asking in the marlin forum but the devs there are busy with the latest version. Can you find some code for a delta pick and place bot? Is the extra code really a problem, just use the kinematics and leave the heater and extruder unused in your gcode.

Edited 1 time(s). Last edit at 04/06/2016 03:52PM by DjDemonD.
Sorry, only registered users may post in this forum.

Click here to login