Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
P
Printrun
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
Printrun
Commits
f560e2f5
Commit
f560e2f5
authored
Jun 26, 2013
by
Guillaume Seguin
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'experimental' of github.com:kliment/Printrun into experimental
parents
a9d984b3
76cd27bc
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
26 additions
and
6 deletions
+26
-6
pronsole.py
pronsole.py
+1
-0
prontserve.py
prontserve.py
+25
-6
No files found.
pronsole.py
View file @
f560e2f5
...
@@ -253,6 +253,7 @@ class Settings(object):
...
@@ -253,6 +253,7 @@ class Settings(object):
self
.
_add
(
HiddenSetting
(
"project_layer"
,
0.1
))
self
.
_add
(
HiddenSetting
(
"project_layer"
,
0.1
))
self
.
_add
(
HiddenSetting
(
"project_prelift_gcode"
,
""
))
self
.
_add
(
HiddenSetting
(
"project_prelift_gcode"
,
""
))
self
.
_add
(
HiddenSetting
(
"project_postlift_gcode"
,
""
))
self
.
_add
(
HiddenSetting
(
"project_postlift_gcode"
,
""
))
self
.
_add
(
HiddenSetting
(
"pause_between_prints"
,
True
))
_settings
=
[]
_settings
=
[]
def
__setattr__
(
self
,
name
,
value
):
def
__setattr__
(
self
,
name
,
value
):
...
...
prontserve.py
View file @
f560e2f5
...
@@ -254,10 +254,13 @@ class ConstructSocketHandler(tornado.websocket.WebSocketHandler):
...
@@ -254,10 +254,13 @@ class ConstructSocketHandler(tornado.websocket.WebSocketHandler):
"""
)
.
strip
()
"""
)
.
strip
()
},
},
"set"
:
{
"set"
:
{
'namespaced'
:
True
,
# namespaced by the machine aspect (temp)
'namespaced'
:
True
,
# namespaced by the machine aspect (temp
/motors/fan
)
'named_args'
:
True
,
'named_args'
:
True
,
'array_args'
:
True
,
'args_error'
:
textwrap
.
dedent
(
"""
'args_error'
:
textwrap
.
dedent
(
"""
Set only accepts a namespace and a list of heater, value pairs.
Set only accepts a namespace (temp, motors or fan) and a list of
heater, value pairs for the temp or on or off for the motor and fan
namespaces.
"""
)
.
strip
()
"""
)
.
strip
()
},
},
"estop"
:
{
"estop"
:
{
...
@@ -346,7 +349,6 @@ class Prontserve(pronsole.pronsole, EventEmitter):
...
@@ -346,7 +349,6 @@ class Prontserve(pronsole.pronsole, EventEmitter):
pronsole
.
pronsole
.
__init__
(
self
)
pronsole
.
pronsole
.
__init__
(
self
)
EventEmitter
.
__init__
(
self
)
EventEmitter
.
__init__
(
self
)
self
.
settings
.
sensor_names
=
{
'T'
:
'extruder'
,
'B'
:
'bed'
}
self
.
settings
.
sensor_names
=
{
'T'
:
'extruder'
,
'B'
:
'bed'
}
self
.
settings
.
pause_between_prints
=
True
self
.
dry_run
=
kwargs
[
'dry_run'
]
==
True
self
.
dry_run
=
kwargs
[
'dry_run'
]
==
True
self
.
stdout
=
sys
.
stdout
self
.
stdout
=
sys
.
stdout
self
.
ioloop
=
tornado
.
ioloop
.
IOLoop
.
instance
()
self
.
ioloop
=
tornado
.
ioloop
.
IOLoop
.
instance
()
...
@@ -377,6 +379,7 @@ class Prontserve(pronsole.pronsole, EventEmitter):
...
@@ -377,6 +379,7 @@ class Prontserve(pronsole.pronsole, EventEmitter):
def
do_print
(
self
):
def
do_print
(
self
):
if
not
self
.
p
.
online
:
raise
Exception
(
"not online"
)
if
not
self
.
p
.
online
:
raise
Exception
(
"not online"
)
if
self
.
printing_jobs
:
raise
Exception
(
"already printing"
)
self
.
printing_jobs
=
True
self
.
printing_jobs
=
True
def
do_home
(
self
,
*
args
,
**
kwargs
):
def
do_home
(
self
,
*
args
,
**
kwargs
):
...
@@ -410,16 +413,18 @@ class Prontserve(pronsole.pronsole, EventEmitter):
...
@@ -410,16 +413,18 @@ class Prontserve(pronsole.pronsole, EventEmitter):
raise
Exception
(
"Continuous movement not supported"
)
raise
Exception
(
"Continuous movement not supported"
)
def
do_estop
(
self
):
def
do_estop
(
self
):
self
.
printing_jobs
=
False
self
.
current_job
=
None
pronsole
.
pronsole
.
do_pause
(
self
,
""
)
pronsole
.
pronsole
.
do_pause
(
self
,
""
)
# self.p.reset()
# self.p.reset()
print
"Emergency Stop!"
print
"Emergency Stop!"
self
.
fire
(
"estop"
)
self
.
fire
(
"estop"
)
def
do_construct_set
(
self
,
subCmd
,
**
kwargs
):
def
do_construct_set
(
self
,
subCmd
,
*
args
,
*
*
kwargs
):
method
=
"do_set_
%
s"
%
subCmd
method
=
"do_set_
%
s"
%
subCmd
if
not
hasattr
(
self
,
method
):
if
not
hasattr
(
self
,
method
):
raise
Exception
(
"
%
s is not a real namespace"
%
subCmd
)
raise
Exception
(
"
%
s is not a real namespace"
%
subCmd
)
getattr
(
self
,
method
)(
**
kwargs
)
getattr
(
self
,
method
)(
*
args
,
*
*
kwargs
)
def
do_set_temp
(
self
,
**
kwargs
):
def
do_set_temp
(
self
,
**
kwargs
):
# Setting each temperature individually
# Setting each temperature individually
...
@@ -433,6 +438,19 @@ class Prontserve(pronsole.pronsole, EventEmitter):
...
@@ -433,6 +438,19 @@ class Prontserve(pronsole.pronsole, EventEmitter):
self
.
target_values
[
k
]
=
kwargs
[
k
]
self
.
target_values
[
k
]
=
kwargs
[
k
]
self
.
fire
(
"target_temp_changed"
,
{
k
:
kwargs
[
k
]})
self
.
fire
(
"target_temp_changed"
,
{
k
:
kwargs
[
k
]})
def
do_set_fan
(
self
,
*
args
):
value
=
{
"on"
:
True
,
"off"
:
False
}[
args
[
0
]
.
lower
()]
if
value
:
self
.
p
.
send_now
(
"M106 S255"
)
else
:
self
.
p
.
send_now
(
"M106 S0"
)
self
.
fire
(
"fan_speed_changed"
,
255
)
def
do_set_motors
(
self
,
*
args
):
value
=
{
"on"
:
True
,
"off"
:
False
}[
args
[
0
]
.
lower
()]
self
.
p
.
send_now
({
True
:
"M17"
,
False
:
"M18"
}[
value
])
self
.
fire
(
"motors_enabled_changed"
,
value
)
def
do_set_feedrate
(
self
,
**
kwargs
):
def
do_set_feedrate
(
self
,
**
kwargs
):
# TODO: kwargs[xy] * 60 and kwargs[z] * 60
# TODO: kwargs[xy] * 60 and kwargs[z] * 60
pass
pass
...
@@ -471,7 +489,7 @@ class Prontserve(pronsole.pronsole, EventEmitter):
...
@@ -471,7 +489,7 @@ class Prontserve(pronsole.pronsole, EventEmitter):
# A better solution would be one in which a print_finised event could be
# A better solution would be one in which a print_finised event could be
# listend for asynchronously without polling.
# listend for asynchronously without polling.
p
=
self
.
p
p
=
self
.
p
if
self
.
printing_jobs
and
p
.
printing
==
False
and
p
.
paused
==
False
and
p
.
online
:
if
self
.
printing_jobs
and
p
.
printing
==
False
and
p
.
online
:
if
self
.
current_job
!=
None
:
if
self
.
current_job
!=
None
:
self
.
update_job_progress
(
100
)
self
.
update_job_progress
(
100
)
self
.
fire
(
"job_finished"
,
self
.
jobs
.
sanitize
(
self
.
current_job
))
self
.
fire
(
"job_finished"
,
self
.
jobs
.
sanitize
(
self
.
current_job
))
...
@@ -485,6 +503,7 @@ class Prontserve(pronsole.pronsole, EventEmitter):
...
@@ -485,6 +503,7 @@ class Prontserve(pronsole.pronsole, EventEmitter):
self
.
current_job
=
self
.
jobs
.
list
.
pop
(
0
)
self
.
current_job
=
self
.
jobs
.
list
.
pop
(
0
)
gc
=
gcoder
.
GCode
(
self
.
current_job
[
'body'
]
.
split
(
"
\n
"
))
gc
=
gcoder
.
GCode
(
self
.
current_job
[
'body'
]
.
split
(
"
\n
"
))
self
.
p
.
startprint
(
gc
)
self
.
p
.
startprint
(
gc
)
self
.
p
.
paused
=
False
self
.
fire
(
"job_started"
,
self
.
jobs
.
sanitize
(
self
.
current_job
))
self
.
fire
(
"job_started"
,
self
.
jobs
.
sanitize
(
self
.
current_job
))
else
:
else
:
print
"Finished all print jobs"
print
"Finished all print jobs"
...
...
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