Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
MarlinKimbra
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
machinery
MarlinKimbra
Commits
da44d760
Commit
da44d760
authored
9 years ago
by
MagoKimbra
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix Dondolo and upgrade Nextion
parent
e5a79858
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
234 additions
and
37 deletions
+234
-37
Configuration_Feature.h
MarlinKimbra/Configuration_Feature.h
+1
-1
Marlin_main.cpp
MarlinKimbra/Marlin_main.cpp
+1
-0
NexSlider.cpp
MarlinKimbra/NexSlider.cpp
+28
-1
NexSlider.h
MarlinKimbra/NexSlider.h
+21
-1
marlinkimbra_v0_5_3.HMI
MarlinKimbra/nextion/marlinkimbra_v0_5_3.HMI
+0
-0
marlinkimbra_v0_5_3.tft
MarlinKimbra/nextion/marlinkimbra_v0_5_3.tft
+0
-0
stepper.cpp
MarlinKimbra/stepper.cpp
+28
-26
stepper.h
MarlinKimbra/stepper.h
+3
-0
ultralcd.cpp
MarlinKimbra/ultralcd.cpp
+151
-8
ultralcd.h
MarlinKimbra/ultralcd.h
+1
-0
No files found.
MarlinKimbra/Configuration_Feature.h
View file @
da44d760
...
...
@@ -582,7 +582,7 @@
// Define nr servo for endstop -1 not define. Servo index start 0
#define X_ENDSTOP_SERVO_NR -1
#define Y_ENDSTOP_SERVO_NR -1
#define Z_ENDSTOP_SERVO_NR
0
#define Z_ENDSTOP_SERVO_NR
-1
#define X_ENDSTOP_SERVO_ANGLES {0,0} // X Axis Extend and Retract angles
#define Y_ENDSTOP_SERVO_ANGLES {0,0} // Y Axis Extend and Retract angles
#define Z_ENDSTOP_SERVO_ANGLES {90,0} // Z Axis Extend and Retract angles
...
...
This diff is collapsed.
Click to expand it.
MarlinKimbra/Marlin_main.cpp
View file @
da44d760
...
...
@@ -6991,6 +6991,7 @@ inline void gcode_T(uint8_t tmp_extruder) {
delay
(
DONDOLO_SERVO_DELAY
);
servo
[
DONDOLO_SERVO_INDEX
].
detach
();
}
set_stepper_direction
(
true
);
ECHO_LMV
(
DB
,
MSG_ACTIVE_DRIVER
,
active_driver
);
ECHO_LMV
(
DB
,
MSG_ACTIVE_EXTRUDER
,
active_extruder
);
#else
...
...
This diff is collapsed.
Click to expand it.
MarlinKimbra/NexSlider.cpp
View file @
da44d760
...
...
@@ -32,7 +32,7 @@ bool NexSlider::setValue(uint32_t number)
{
char
buf
[
10
]
=
{
0
};
String
cmd
;
utoa
(
number
,
buf
,
10
);
cmd
+=
getObjName
();
cmd
+=
".val="
;
...
...
@@ -42,3 +42,30 @@ bool NexSlider::setValue(uint32_t number)
return
recvRetCommandFinished
();
}
bool
NexSlider
::
setMaxValue
(
uint32_t
number
)
{
char
buf
[
10
]
=
{
0
};
String
cmd
;
utoa
(
number
,
buf
,
10
);
cmd
+=
getObjName
();
cmd
+=
".maxval="
;
cmd
+=
buf
;
sendCommand
(
cmd
.
c_str
());
return
recvRetCommandFinished
();
}
bool
NexSlider
::
setHigValue
(
uint32_t
number
)
{
char
buf
[
10
]
=
{
0
};
String
cmd
;
utoa
(
number
,
buf
,
10
);
cmd
+=
getObjName
();
cmd
+=
".hig="
;
cmd
+=
buf
;
sendCommand
(
cmd
.
c_str
());
return
recvRetCommandFinished
();
}
This diff is collapsed.
Click to expand it.
MarlinKimbra/NexSlider.h
View file @
da44d760
...
...
@@ -44,7 +44,7 @@ public: /* methods */
* @retval false - failed.
*/
bool
getValue
(
uint32_t
*
number
);
/**
* Set the value of slider.
*
...
...
@@ -54,6 +54,26 @@ public: /* methods */
* @retval false - failed.
*/
bool
setValue
(
uint32_t
number
);
/**
* Set the maxvalue of slider.
*
* @param number - the value of slider.
*
* @retval true - success.
* @retval false - failed.
*/
bool
setMaxValue
(
uint32_t
number
);
/**
* Set the hig of slider.
*
* @param number - the value of slider.
*
* @retval true - success.
* @retval false - failed.
*/
bool
setHigValue
(
uint32_t
number
);
};
/**
* @}
...
...
This diff is collapsed.
Click to expand it.
MarlinKimbra/nextion/marlinkimbra_v0_5_
1
.HMI
→
MarlinKimbra/nextion/marlinkimbra_v0_5_
3
.HMI
View file @
da44d760
No preview for this file type
This diff is collapsed.
Click to expand it.
MarlinKimbra/nextion/marlinkimbra_v0_5_
1
.tft
→
MarlinKimbra/nextion/marlinkimbra_v0_5_
3
.tft
View file @
da44d760
No preview for this file type
This diff is collapsed.
Click to expand it.
MarlinKimbra/stepper.cpp
View file @
da44d760
...
...
@@ -539,35 +539,37 @@ FORCE_INLINE unsigned short calc_timer(unsigned short step_rate) {
* X_AXIS=A_AXIS and Y_AXIS=B_AXIS for COREXY
* X_AXIS=A_AXIS and Z_AXIS=C_AXIS for COREXZ
*/
void
set_stepper_direction
()
{
void
set_stepper_direction
(
bool
onlye
)
{
if
(
TEST
(
out_bits
,
X_AXIS
))
{
// A_AXIS
X_APPLY_DIR
(
INVERT_X_DIR
,
0
);
count_direction
[
X_AXIS
]
=
-
1
;
}
else
{
X_APPLY_DIR
(
!
INVERT_X_DIR
,
0
);
count_direction
[
X_AXIS
]
=
1
;
}
if
(
!
onlye
)
{
if
(
TEST
(
out_bits
,
X_AXIS
))
{
// A_AXIS
X_APPLY_DIR
(
INVERT_X_DIR
,
0
);
count_direction
[
X_AXIS
]
=
-
1
;
}
else
{
X_APPLY_DIR
(
!
INVERT_X_DIR
,
0
);
count_direction
[
X_AXIS
]
=
1
;
}
if
(
TEST
(
out_bits
,
Y_AXIS
))
{
// B_AXIS
Y_APPLY_DIR
(
INVERT_Y_DIR
,
0
);
count_direction
[
Y_AXIS
]
=
-
1
;
}
else
{
Y_APPLY_DIR
(
!
INVERT_Y_DIR
,
0
);
count_direction
[
Y_AXIS
]
=
1
;
}
if
(
TEST
(
out_bits
,
Z_AXIS
))
{
// C_AXIS
Z_APPLY_DIR
(
INVERT_Z_DIR
,
0
);
count_direction
[
Z_AXIS
]
=
-
1
;
}
else
{
Z_APPLY_DIR
(
!
INVERT_Z_DIR
,
0
);
count_direction
[
Z_AXIS
]
=
1
;
if
(
TEST
(
out_bits
,
Y_AXIS
))
{
// B_AXIS
Y_APPLY_DIR
(
INVERT_Y_DIR
,
0
);
count_direction
[
Y_AXIS
]
=
-
1
;
}
else
{
Y_APPLY_DIR
(
!
INVERT_Y_DIR
,
0
);
count_direction
[
Y_AXIS
]
=
1
;
}
if
(
TEST
(
out_bits
,
Z_AXIS
))
{
// C_AXIS
Z_APPLY_DIR
(
INVERT_Z_DIR
,
0
);
count_direction
[
Z_AXIS
]
=
-
1
;
}
else
{
Z_APPLY_DIR
(
!
INVERT_Z_DIR
,
0
);
count_direction
[
Z_AXIS
]
=
1
;
}
}
#if DISABLED(ADVANCE) && ENABLED(DONDOLO)
if
(
TEST
(
out_bits
,
E_AXIS
))
{
if
(
active_extruder
==
0
)
{
...
...
This diff is collapsed.
Click to expand it.
MarlinKimbra/stepper.h
View file @
da44d760
...
...
@@ -69,6 +69,9 @@ void st_init();
// Block until all buffered steps are executed
void
st_synchronize
();
// Set the stepper direction of each axis
void
set_stepper_direction
(
bool
onlye
=
false
);
// Set current position in steps
void
st_set_position
(
const
long
&
x
,
const
long
&
y
,
const
long
&
z
,
const
long
&
e
);
void
st_set_e_position
(
const
long
&
e
);
...
...
This diff is collapsed.
Click to expand it.
MarlinKimbra/ultralcd.cpp
View file @
da44d760
...
...
@@ -2392,9 +2392,11 @@ char *ftostr52(const float &x) {
#include "ultralcd.h"
#include "Nextion.h"
bool
NextionON
=
false
;
bool
PageInfo
=
false
;
char
buffer
[
100
]
=
{
0
};
const
float
MaxWave
=
0.2
;
bool
NextionON
=
false
;
bool
PageInfo
=
false
;
char
buffer
[
100
]
=
{
0
};
int
slidermaxval
=
20
;
char
lcd_status_message
[
30
]
=
WELCOME_MSG
;
// worst case is kana with up to 3*LCD_WIDTH+1
uint8_t
lcd_status_message_level
=
0
;
...
...
@@ -2402,6 +2404,9 @@ uint8_t lcd_status_message_level = 0;
NexPage
page0
=
NexPage
(
0
,
0
,
"start"
);
NexPage
page1
=
NexPage
(
1
,
0
,
"info"
);
NexPage
page2
=
NexPage
(
2
,
0
,
"settemp"
);
NexPage
page3
=
NexPage
(
3
,
0
,
"menu"
);
NexPage
page4
=
NexPage
(
4
,
0
,
"sdcard"
);
NexPage
page5
=
NexPage
(
5
,
0
,
"setup"
);
// Text
NexText
Hotend0
=
NexText
(
1
,
1
,
"t0"
);
...
...
@@ -2412,6 +2417,12 @@ NexText LedStatus = NexText(1, 7, "t4");
NexText
LedCoord
=
NexText
(
1
,
8
,
"t5"
);
NexText
set0
=
NexText
(
2
,
2
,
"set0"
);
NexText
set1
=
NexText
(
2
,
15
,
"set1"
);
NexText
sdrow0
=
NexText
(
4
,
3
,
"t1"
);
NexText
sdrow1
=
NexText
(
4
,
4
,
"t2"
);
NexText
sdrow2
=
NexText
(
4
,
5
,
"t3"
);
NexText
sdrow3
=
NexText
(
4
,
6
,
"t4"
);
NexText
sdrow4
=
NexText
(
4
,
7
,
"t5"
);
NexText
sdrow5
=
NexText
(
4
,
8
,
"t6"
);
// Picture
NexPicture
Menu
=
NexPicture
(
1
,
10
,
"p0"
);
...
...
@@ -2421,11 +2432,22 @@ NexPicture Hend0 = NexPicture(1, 13, "p3");
NexPicture
Hend1
=
NexPicture
(
1
,
14
,
"p4"
);
NexPicture
Hend2
=
NexPicture
(
1
,
15
,
"p5"
);
NexPicture
Fanpic
=
NexPicture
(
1
,
19
,
"p6"
);
NexPicture
Folder0
=
NexPicture
(
4
,
9
,
"p0"
);
NexPicture
Folder1
=
NexPicture
(
4
,
10
,
"p1"
);
NexPicture
Folder2
=
NexPicture
(
4
,
11
,
"p2"
);
NexPicture
Folder3
=
NexPicture
(
4
,
12
,
"p3"
);
NexPicture
Folder4
=
NexPicture
(
4
,
13
,
"p4"
);
NexPicture
Folder5
=
NexPicture
(
4
,
14
,
"p5"
);
// Progress Bar
// Slider
NexSlider
sdlist
=
NexSlider
(
4
,
1
,
"h0"
);
// Wafeform
NexWaveform
Graph0
=
NexWaveform
(
1
,
9
,
"s0"
);
NexWaveform
Graph0
=
NexWaveform
(
1
,
9
,
"s0"
);
NexWaveform
Graph1
=
NexWaveform
(
1
,
24
,
"s1"
);
NexWaveform
Graph2
=
NexWaveform
(
1
,
25
,
"s2"
);
// Touch area
NexHotspot
hot0
=
NexHotspot
(
1
,
14
,
"hot0"
);
...
...
@@ -2452,6 +2474,7 @@ NexTouch *nex_listen_list[] =
&
m11
,
&
tup
,
&
tdown
,
&
sdlist
,
NULL
};
...
...
@@ -2480,6 +2503,114 @@ void setpageInfo() {
lcd_setstatus
(
lcd_status_message
);
}
void
setrowsdcard
(
uint32_t
number
=
0
)
{
uint16_t
fileCnt
=
card
.
getnrfilenames
();
uint32_t
ii
=
0
;
ECHO_EMV
(
"FILE CONT = "
,
fileCnt
);
card
.
getWorkDirName
();
for
(
uint8_t
i
=
0
;
i
<
6
;
i
++
)
{
ii
=
i
+
number
;
if
(
ii
<=
fileCnt
)
{
card
.
getfilename
(
ii
);
switch
(
i
)
{
case
0
:
{
if
(
card
.
filenameIsDir
)
{
Folder0
.
setPic
(
18
);
sdrow0
.
setText
(
card
.
filename
);
}
else
{
Folder0
.
setPic
(
17
);
sdrow0
.
setText
(
card
.
longFilename
);
}
break
;
}
case
1
:
{
if
(
card
.
filenameIsDir
)
{
Folder1
.
setPic
(
18
);
sdrow1
.
setText
(
card
.
filename
);
}
else
{
Folder1
.
setPic
(
17
);
sdrow1
.
setText
(
card
.
longFilename
);
}
break
;
}
case
2
:
{
if
(
card
.
filenameIsDir
)
{
Folder2
.
setPic
(
18
);
sdrow2
.
setText
(
card
.
filename
);
}
else
{
Folder2
.
setPic
(
17
);
sdrow2
.
setText
(
card
.
longFilename
);
}
break
;
}
case
3
:
{
if
(
card
.
filenameIsDir
)
{
Folder3
.
setPic
(
18
);
sdrow3
.
setText
(
card
.
filename
);
}
else
{
Folder3
.
setPic
(
17
);
sdrow3
.
setText
(
card
.
longFilename
);
}
break
;
}
case
4
:
{
if
(
card
.
filenameIsDir
)
{
Folder4
.
setPic
(
18
);
sdrow4
.
setText
(
card
.
filename
);
}
else
{
Folder4
.
setPic
(
17
);
sdrow4
.
setText
(
card
.
longFilename
);
}
break
;
}
case
5
:
{
if
(
card
.
filenameIsDir
)
{
Folder5
.
setPic
(
18
);
sdrow5
.
setText
(
card
.
filename
);
}
else
{
Folder5
.
setPic
(
17
);
sdrow5
.
setText
(
card
.
longFilename
);
}
break
;
}
}
}
}
sendCommand
(
"ref 0"
);
}
void
setpagesdcard
()
{
PageInfo
=
false
;
page4
.
show
();
uint16_t
fileCnt
=
card
.
getnrfilenames
();
if
(
fileCnt
<=
6
)
slidermaxval
=
1
;
else
slidermaxval
=
(
fileCnt
/
6
)
+
1
;
const
int
sliderhig
=
230
/
slidermaxval
;
sdlist
.
setMaxValue
(
slidermaxval
);
sdlist
.
setValue
(
slidermaxval
);
sdlist
.
setHigValue
(
sliderhig
);
setrowsdcard
();
}
void
page0PopCallback
(
void
*
ptr
)
{
setpageInfo
();
}
...
...
@@ -2548,7 +2679,7 @@ void setpagePopCallback(void *ptr) {
if
(
ptr
==
&
Menu
)
sendCommand
(
"page menu"
);
if
(
ptr
==
&
MSD
)
se
ndCommand
(
"page msd"
);
se
tpagesdcard
(
);
if
(
ptr
==
&
MSetup
)
sendCommand
(
"page setup"
);
}
...
...
@@ -2558,6 +2689,13 @@ void setfanPopCallback(void *ptr) {
else
fanSpeed
=
255
;
}
void
sdlistPopCallback
(
void
*
ptr
)
{
uint32_t
number
=
0
;
sdlist
.
getValue
(
&
number
);
number
=
slidermaxval
-
number
;
setrowsdcard
(
number
);
}
millis_t
next_lcd_update_ms
;
void
lcd_init
()
{
...
...
@@ -2569,6 +2707,7 @@ void lcd_init() {
ECHO_LM
(
DB
,
"Nextion LCD connected!"
);
page0
.
attachPop
(
page0PopCallback
);
sdlist
.
attachPop
(
sdlistPopCallback
);
#if HAS_TEMP_0
hot0
.
attachPop
(
hotPopCallback
,
&
hot0
);
...
...
@@ -2587,6 +2726,7 @@ void lcd_init() {
m11
.
attachPop
(
sethotPopCallback
,
&
m11
);
tup
.
attachPop
(
settempPopCallback
,
&
tup
);
tdown
.
attachPop
(
settempPopCallback
,
&
tdown
);
startimer
.
enable
();
}
}
...
...
@@ -2614,21 +2754,24 @@ static void temptoLCD(int h, int T1, int T2) {
{
Hotend0
.
setText
(
buffer
);
Hotend0
.
setColor
(
color
);
Graph0
.
addValue
(
0
,
T1
);
Graph0
.
addValue
(
0
,
(
int
)(
T1
*
MaxWave
));
Graph0
.
addValue
(
1
,
(
int
)(
T2
*
MaxWave
));
break
;
}
case
1
:
{
Hotend1
.
setText
(
buffer
);
Hotend1
.
setColor
(
color
);
Graph0
.
addValue
(
1
,
T1
);
Graph1
.
addValue
(
0
,
(
int
)(
T1
*
MaxWave
));
Graph1
.
addValue
(
1
,
(
int
)(
T2
*
MaxWave
));
break
;
}
case
2
:
{
Hotend2
.
setText
(
buffer
);
Hotend2
.
setColor
(
color
);
Graph0
.
addValue
(
2
,
T1
);
Graph2
.
addValue
(
0
,
(
int
)(
T1
*
MaxWave
));
Graph2
.
addValue
(
1
,
(
int
)(
T2
*
MaxWave
));
break
;
}
}
...
...
This diff is collapsed.
Click to expand it.
MarlinKimbra/ultralcd.h
View file @
da44d760
...
...
@@ -119,6 +119,7 @@
void
sethotPopCallback
(
void
*
ptr
);
void
settempPopCallback
(
void
*
ptr
);
void
setfanPopCallback
(
void
*
ptr
);
void
sdlistPopCallback
(
void
*
ptr
);
void
lcd_update
();
void
lcd_init
();
void
lcd_setstatus
(
const
char
*
message
,
const
bool
persist
=
false
);
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment