Dan/Jetty question about ReplicatorG

603 views
Skip to first unread message

Kobus du Toit

unread,
Mar 19, 2013, 11:46:57 PM3/19/13
to make...@googlegroups.com
I changed the code locally a bit
I added a button on the preferences screen to allow the user to select a python installation and a pypy installation
I then use python path for the gui config screen and I use pypy to slice

My question is.  Where does the code store the config?  I need to store the new pypy directory so that when the system loads up it will read it again


Dan Newman

unread,
Mar 20, 2013, 1:07:41 AM3/20/13
to make...@googlegroups.com
The Java Preferences API is used, java.util.prefs.Preferences. Where
those are actually stored is OS dependent and hidden from the Java app.

Dan

Kobus du Toit

unread,
Mar 20, 2013, 1:08:58 AM3/20/13
to make...@googlegroups.com
Ok think I am done.  If you don't select pypy it will just use the normal selected python.  If you select pypy it will use pypy to slice and python to show the gui

PythonUtils.java changes
added setPyPyPath
added constant PYPY_PATH_PREF
added code to populate the pypy path with the python path or try to use the user selected pypy path
removed checking inside checkTkInter that caused the issue

SkeinforgeGenerator.java changes
use the pypy path rather than the python paty in generateToolpath()

PreferencesWindow.java changes
Add a new button that allows the user to select pypy path
PythonUtils.java
SkeinforgeGenerator.java
PreferencesWindow.java

Eighty

unread,
Mar 20, 2013, 7:41:54 AM3/20/13
to make...@googlegroups.com
Is this for Mac, or windows, or both?

Kobus du Toit

unread,
Mar 20, 2013, 7:43:59 AM3/20/13
to make...@googlegroups.com

I have a windows machine. Not sure what will happen on other operating systems. The code was very basic. I just added another property that the user populates and if it is populated the app will use it

Eighty

unread,
Mar 20, 2013, 7:50:56 AM3/20/13
to make...@googlegroups.com
Holy cow! So you're saying you made puppy work on windows?

And was this on repGsailfish, or the MBI version?

Kobus du Toit

unread,
Mar 20, 2013, 7:52:14 AM3/20/13
to make...@googlegroups.com

Repg. 6min slice down to 1min

Eighty

unread,
Mar 20, 2013, 8:05:47 AM3/20/13
to make...@googlegroups.com
I'll give it a go this morning. But before I do, can you confirm that this is on the Sailfish version?

Kobus du Toit

unread,
Mar 20, 2013, 8:09:09 AM3/20/13
to make...@googlegroups.com

It is this version
https://github.com/makerbot/ReplicatorG

Are you able to compile and build it? Also have you tried my 64bit patch?

Eighty

unread,
Mar 20, 2013, 8:14:22 AM3/20/13
to make...@googlegroups.com
I woke up not too long ago, so I'm a little groggy. And I'm on my iPad, not my computer. Are these drop in replacements, or do you have to rebuild RepG?

Kobus du Toit

unread,
Mar 20, 2013, 8:14:31 AM3/20/13
to make...@googlegroups.com

You will see a new button under the normal python select button. You can select pypy from repetier host or even download a new pypy and use that. It shouldn't matter where it is located. The code just uses the path you give it to load pypy

On 20/03/2013 10:05 PM, "Eighty" <adun...@gmail.com> wrote:
I'll give it a go this morning.  But before I do, can you confirm that this is on the Sailfish version?

--
You received this message because you are subscribed to a topic in the Google Groups "MakerBot Operators" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/makerbot/h1msCJ1C_oY/unsubscribe?hl=en-US.
To unsubscribe from this group and all its topics, send an email to makerbot+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Kobus du Toit

unread,
Mar 20, 2013, 8:20:02 AM3/20/13
to make...@googlegroups.com

64bit is drop in replacement. I can't find my project now that I created, on my phone so can't search the forums

This code I did for pypy will need a recompile of replicatorg and probably a bit of testing.  I removed the code that was looking for the python gui code when you try and slice since you don't need the python gui anyway. The gui still comes up when you want to change the slicer config. That is why you need to give it the location of a normal python and the location of pypy

On 20/03/2013 10:14 PM, "Eighty" <adun...@gmail.com> wrote:
I woke up not too long ago, so I'm a little groggy.  And I'm on my iPad, not my computer.  Are these drop in replacements, or do you have to rebuild RepG?

Kobus du Toit

unread,
Mar 20, 2013, 8:23:04 AM3/20/13
to make...@googlegroups.com

Tomorrow I can create a new replicatorg directory  containing the pypy code and 64bit that people can download and test before we try to add it to the real github project. I wouldn't want to damage replicatorg github project

Kobus du Toit

unread,
Mar 20, 2013, 9:05:00 AM3/20/13
to make...@googlegroups.com

https://bitbucket.org/taskman/replicatorg64bit
This is a drop in to upgrade to 64bit

Message has been deleted

Eighty

unread,
Mar 20, 2013, 10:08:56 AM3/20/13
to make...@googlegroups.com
I'm looking at this as well, seeing if I can do a test run on the Sailfish version.  Kobus, what does your ReadMe mean about "make sure a 64bit Java is on the path"? 

Dan Newman

unread,
Mar 20, 2013, 10:41:45 AM3/20/13
to make...@googlegroups.com

On 20 Mar 2013 , at 5:09 AM, Kobus du Toit wrote:

> It is this version
> https://github.com/makerbot/ReplicatorG

That's the largely abandoned MBI version of RepG which has bugs as regards
usage with a Rep 2, Rep 2x, Thing-o-Matic and Cupcake, some of which I've
fixed in the Sailfish version as they impact usage with Sailfish. There's
some potential bugs as regards use with any Replicator, but as they only
impact usage with the MBI firmware, I've not invested anytime in confirming
or fixing them.

The sailfish version is

https://github.com/jetty840/ReplicatorG

Dan


Dan Newman

unread,
Mar 20, 2013, 11:10:20 AM3/20/13
to make...@googlegroups.com
> I changed the code locally a bit
> I added a button on the preferences screen to allow the user to select
>> a python installation and a pypy installation

I'm a little confused by the above. There already is a control for this.
Under the "Advanced" tab of the "Preferences" window there is a
"Select Python interpreter…" button. You didn't add a redundant control,
did you?

>> Ok think I am done. If you don't select pypy it will just use the normal
>> selected python. If you select pypy it will use pypy to slice and python
>> to show the gui
>>
>> PythonUtils.java changes
>> added setPyPyPath
>> added constant PYPY_PATH_PREF
>> added code to populate the pypy path with the python path or try to use
>> the user selected pypy path
>> removed checking inside checkTkInter that caused the issue
>>
>> SkeinforgeGenerator.java changes
>> use the pypy path rather than the python paty in generateToolpath()
>>
>> PreferencesWindow.java changes
>> Add a new button that allows the user to select pypy path

I can add something similar to RepG - Sailfish; however, I'll stick to
how RepG already handles this situation.

1. User selects the Python installation to use using the "Advanced" tab
of the Preferences window. No changes needed -- the existing code
suffices.

2. If the Java is running on Windows *and* the selected Python appears
to by pypy (e.g., "pypy.exe"), then the additional environment variables
and checkTkInter handling is dealt with.

That keeps everything unchanged from a user's perspective: they just select
the python interpreter to run as per whatever docs have existed on the subject
for 1.5+ years. And no behavior change for users between Linux, OS X, and
Windows. (Note that using PyPy works fine on Linux and OS X with no need
to effect the environment change.)

Only work then needed for Windows users is a packaged pypy for Windows
which they can download and drop onto their system and then point RepG at
via the existing controls.

Dan

Dan Newman

unread,
Mar 20, 2013, 12:00:40 PM3/20/13
to make...@googlegroups.com

On 20 Mar 2013 , at 5:20 AM, Kobus du Toit wrote:

> 64bit is drop in replacement. I can't find my project now that I created,
> on my phone so can't search the forums
>
> This code I did for pypy will need a recompile of replicatorg and probably
> a bit of testing. I removed the code that was looking for the python gui
> code when you try and slice since you don't need the python gui anyway. The
> gui still comes up when you want to change the slicer config. That is why
> you need to give it the location of a normal python and the location of pypy

So what you've done is found a PyPy distro that doesn't include Tkinter?
That changes everything (from my point of view). This really is then a
code change to make RepG use two different Python interpreter installs:
the one which comes with it and then a second one -- pypy -- should someone
choose to install it. I suppose that's a short term workaround until someone
invests time in doing the (IMO) more appropriate thing of bundling a PyPy
for windows which includes Tkinter. Such a bundling then works with
everyone's RepG and not just a modified RepG.

Where did you find this PyPy bundling for Windows? And then the next
question is why not fold Tkinter into it?

https://pypi.python.org/pypi/tkinter-pypy/
http://morepypy.blogspot.com/2011/04/using-tkinter-and-idle-with-pypy.html

Dan

Stan Velijev

unread,
Mar 20, 2013, 12:03:37 PM3/20/13
to make...@googlegroups.com
While I'm not as annoyed as the rest of the community by waiting a few minutes to slice, a faster slice would always be welcome.
I'm a little confused as to how to get everything set up though. I was under the impression that pypy installation was an issue.

Perhaps a new thread with "Install PyPy for RepG on windows" with a full set of instruction would be appropriate. Most people wouldn't look in this thread to find something that could potentially save them hours of time.

Kobus du Toit

unread,
Mar 20, 2013, 3:44:16 PM3/20/13
to make...@googlegroups.com

Sorry was sleeping while the thread was going on. Thought the version I was using was the latest replicatorg. I will modify the files of the one you posted today and see how that goes

Yes there will be 2 buttons. One to select python and one to select pypy. I just downloaded the latest pypy from the pypy website

I agree it isn't the best thing to have the two buttons. Windows users will hopefully be happy with two buttons if it saves alot of time on slicing. Maybe I can make it show two buttons just on windows to get it to work.

Kobus du Toit

unread,
Mar 20, 2013, 3:50:31 PM3/20/13
to make...@googlegroups.com

I had a look at those websites when I was trying to figure out the code. I thought it would be easier for a user to just download pypy and point to it. Today I will try to follow their process and see what happens.

Dan Newman

unread,
Mar 20, 2013, 3:52:51 PM3/20/13
to make...@googlegroups.com

On 20 Mar 2013 , at 12:44 PM, Kobus du Toit wrote:

> Sorry was sleeping while the thread was going on. Thought the version I was
> using was the latest replicatorg. I will modify the files of the one you
> posted today and see how that goes

I've already done it and am testing. Amusing tidbit is that the "check for
Tkinter" test fails with Python 3.3 but works with 2.7. The difference? Someone
decided to change the module name from "Tkinter" to "tkinter". It's easy enough
to change the Python in SF-50 to handle either, I suppose. But this explains
why some folks have had problems: they've installed Python 3.x and not 2.x.

Somewhat telling that no one seems to have built a pypy distro for Windows with
Tkinter in it. The maintainers of pypy even solicited builds and said they'd
include them if someone does it.

I'm not willing to take the time to set up a full Windows build env.

Dan Newman

unread,
Mar 20, 2013, 4:13:10 PM3/20/13
to make...@googlegroups.com
Kubos,

I checked in to github changes that incorporate your work. Mostly the
same idea but I didn't have to touch things like checkTkinter() and
I created a special dialog for setting the pypy path.

I'm uploading an r12 to drop box and I'll post the link in a bit.

Thanks for working out a solution, even if it isn't ideal for Windows
users. (They'll have to have both python 2.x and pypy installed and
set distinct paths for them.)

Dan

Kobus du Toit

unread,
Mar 20, 2013, 4:16:01 PM3/20/13
to make...@googlegroups.com

Coolness. Will go get the version later when I get to work.

Tom Lauerman

unread,
Mar 20, 2013, 4:27:06 PM3/20/13
to make...@googlegroups.com
Many thanks to everyone working on this. I have repeatedly run into slicing problems on larger files, but am committed to CAD software that runs only on windows. It would be fantastic to be able to achieve these faster slicing times.

Joseph Chiu

unread,
Mar 20, 2013, 4:27:10 PM3/20/13
to make...@googlegroups.com
Thanks guys!  That is awesome news!  This takes away my biggest headache with SF when trying out new ideas. 


On Wed, Mar 20, 2013 at 1:16 PM, Kobus du Toit <kobus...@gmail.com> wrote:

Coolness. Will go get the version later when I get to work.

--
You received this message because you are subscribed to the Google Groups "MakerBot Operators" group.
To unsubscribe from this group and stop receiving emails from it, send an email to makerbot+u...@googlegroups.com.

66tbird

unread,
Mar 20, 2013, 4:32:22 PM3/20/13
to make...@googlegroups.com, joe...@joechiu.com

This is awesome news. Please post a noob install guide when the kinks are all out..

Dan Newman

unread,
Mar 20, 2013, 4:58:42 PM3/20/13
to make...@googlegroups.com
A ReplicatorG 40r12 - Sailfish for *windows* may be found at

https://www.dropbox.com/s/zsqj2v4flsln7n2/replicatorg-0040r12-windows.zip

It incorporates my take on Kobus' strategy to run PyPy just for slicing
and Python for profile editing and anything else. You can get a Windows
PyPy distro from

http://pypy.org/download.html

I used

https://bitbucket.org/pypy/pypy/downloads/pypy-1.9-win32.zip

which you can use on Win 7 x64 (I did).

Then from the "Advanced" tab of the "Preferences" window, you can click the
"Set PyPy Interpreter…" button. Then navigate to the installed PyPy and select
the pypy.exe file. Then click the not-well-named-for-this-usage "Open" button.
Then you're set: when you slice, PyPy should be used. (You can see it in
Task Manager.)

Note you still need Python installed. And it needs to be a 2.x version.
I used 2.7 for Windows x64. Do not use 3.x as it won't work for you:
the Tkinter module was changed to be named "tkinter". (Presumably, there
were interface changes.) SF-50 expects a module named "Tkinter" and so
you need Pythin 2.x for SF-50.

Thanks again to Kobus du Toit.

Dan

DronE Pump

unread,
Mar 20, 2013, 5:46:47 PM3/20/13
to make...@googlegroups.com
As far as Windows OS is concerned Tkinter & Tclk are dealt with separately.  I downloaded the Python suite from ActiveState and installed each in turn (Python 3.3 - 2.7.2 - Tkinter, Tclk) before hitting the brick wall.  Also the JRE and lets not forget the 2008 C+ because pypy only works with 2008
And yes, Python 3.3 did not help with Pypy - it had to be 2.7

Rather than throwing up a bunch of links and setting the noobs adrift like Eskimo elders in the usual fashion, I would suggest that a zip be assembled of the necessary files to get a working installation with a simple set of steps to follow included.

I echo the gratitude of all others regarding this momentous advance.

Dan Newman

unread,
Mar 20, 2013, 6:15:36 PM3/20/13
to make...@googlegroups.com

On 20 Mar 2013 , at 2:46 PM, DronE Pump wrote:

> As far as Windows OS is concerned Tkinter & Tclk are dealt with separately.
> I downloaded the Python suite from ActiveState and installed each in turn
> (Python 3.3 - 2.7.2 - Tkinter, Tclk) before hitting the brick wall.

FWIW, the Windows Python 3.3 has Tkinter supplied. Issue is that owing
to interface changes (i.e., old stuff not compatible with new stuff),
they changed the module name from Tkinter (2.x) to tkinter (3.x).
So, you could use Python 3.3 with RepG for slicing if RepG weren't
doing it's check for Tkinter using "import Tkinter". However, to use
the chunks of SF-50 which do depend upon Tkinter, the SF-50 python
code either needs to be changed or a shim between Tkinter and tkinter
made.

> Rather than throwing up a bunch of links and setting the noobs adrift
> like Eskimo elders in the usual fashion, I would suggest that a zip be
> assembled of the necessary files to get a working installation with a
> simple set of steps to follow included.

Which is the one thing I myself won't do: I pretty much refuse
to do packaging work. I'm lousy at it and people wouldn't like
the results. Moreover, since I don't actually use Windows myself,
it's not a door I care to open any wider than I have to.

If the community wants a cleaner Python or PyPy install experience
with RepG, then the community needs to cough up a warm body with
the necessary skills and time. And, it'd be nice if that resource
could build Tkinter-pypy and just thrown it into the PyPy distro.

Dan

Kobus du Toit

unread,
Mar 20, 2013, 7:53:12 PM3/20/13
to make...@googlegroups.com
So sailfish is able to use pypy now with the changes

What uses python?  Just the sailfish config screen?
I see there is about 40+ views on the config screen.  Is the screen dynamic or does it always have the same buttons?
Is it worth creating it in Java then only pypy is needed to run sailfish?
Where does the config screen save its settings?
Is there any rocket science going on with that screen or is it just a basic config screen?

If I have enough coke zero and bored enough I could possibly get to it.  Need a distraction from my project

DronE Pump

unread,
Mar 20, 2013, 7:58:12 PM3/20/13
to make...@googlegroups.com

FWIW, the Windows Python 3.3 has Tkinter supplied.  

Yes, that is so.  I refer to the pypy windows install (which requires 2.7.2) and further,(at least in the case of Win7) tkinter & Tcl (require C 2008) to go with the pypy install.
I got all this to work together. I actually ran some tests from the interpreter console and satisfied myself that I had a working installation.  Unfortunately for the reasons stated by Kubus, I was destined for failure.  Anyway, I am ecstatic that this is now in the past and I look forward to firing up the modified version of RepG.

 If the community wants a cleaner Python or PyPy install experience 
with RepG, then the community needs to cough up a warm body with
the necessary skills and time.  And, it'd be nice if that resource
could build Tkinter-pypy and just thrown it into the PyPy distro.

IMO no need to actually build Tkinter-pypy - I refer to simply collecting the necessary items for a successful install and provide sequential instructions to get the install happening.  Heck I'm in the middle of re-installing Win7 on one of my notebooks so I might as well document my steps  & pack the files in a zip.  So what if the user has to add C 2008 to the process in order to get tkinter added in.  Most windows machines have multiple versions of C kicking around in the system anyway.



Dan

Kobus du Toit

unread,
Mar 20, 2013, 8:52:21 PM3/20/13
to make...@googlegroups.com
I downloaded the new version of ReplicatorG-Sailfish from https://www.dropbox.com/s/zsqj2v4flsln7n2/replicatorg-0040r12-windows.zip.  Thank you for making the pypy changes to it.  I tried running ReplicatorG-large-models.exe, but on my Windows 7 machine the wait circle just turns for a bit, it goes away and then nothing happens.  I also tried to run it as an admin.  Maybe it is security settings at work.  The normal ReplicatorG.exe opens up correctly.  Is there a log file to see what might be going wrong?  Nothing shows up in the Windows event viewer

I updated my 64bit conversion project (https://bitbucket.org/taskman/replicatorg64bit/overview) to specificy the correct ReplicatorG github project and I added a bit more info to the readme

Kobus du Toit

unread,
Mar 20, 2013, 9:22:43 PM3/20/13
to make...@googlegroups.com
I am trying to compile https://github.com/jetty840/ReplicatorG, not sure if I did something wrong on the checkout.  Is this the correct project?
I am having a problem finding PSTOP_ENABLED

Line 2314 is looking for it in EEPROMParams

I am not seeing PSTOP_ENABLED defined in the enum

I added the value to my local enum to get a compile going

MachineLoaderTest doesn't compile.  The testLoad() method calls loader.getMachineInterface. getMachineInterface() returns a MachineInterface on my version so the check for boolean return value fails

Sorry if I am being stupid and checking out the wrong project again

Dan Newman

unread,
Mar 20, 2013, 10:01:10 PM3/20/13
to make...@googlegroups.com

On 20 Mar 2013 , at 4:53 PM, Kobus du Toit wrote:

> So sailfish is able to use pypy now with the changes

Sailfish? You mean ReplicatorG, correct?

ReplicatorG has been able to use pypy for quite some time -- 2 years?
All ReplicatorG want is a Python interpreter which includes the Tkinter module.

Users have had two problems

1. Finding and installing a working Python interpreter on their platform of choice.
This is relatively easy on OS X, easier still on Linux. Doing it on Windows is
difficult for some users, easy for others.

2. Finding and installing a working PyPy flavored Python interpreter. Again,
easiest on Linux. Somewhat trying on OS X -- depends upon your comfort level
with building packages on OS X. And it's apparently so difficult on Windows
that not even the PyPy developers/maintainers are willing to do it (the cost vs.
benefit analysis seems to leave them not doing it).

> What uses python?

ReplicatorG uses a Python interpreter to run Skeinforge: both for slicing
and Skeinforge's assorted utilities which includes UIs that require Tkinter.

There are several popular Python interpreters including Python itself and
PyPy. Skeinforge is written in Python. Hence ReplicatorG's need to run
a Python interpreter in order to run Skeinforge,

> I see there is about 40+ views on the config screen. Is the screen dynamic
> or does it always have the same buttons?
> Is it worth creating it in Java then only pypy is needed to run sailfish?
> Where does the config screen save its settings?

If you felt sufficiently gung ho to rewrite Skeinforge, then have at it.
Personally, Java wouldn't be my first choice of language. (And my e-mail
address used to be dan.n...@sun.com.) But then, neither would Perl be
which is the language slic3r is written in….

Dan

Dan Newman

unread,
Mar 20, 2013, 10:12:24 PM3/20/13
to make...@googlegroups.com

On 20 Mar 2013 , at 5:52 PM, Kobus du Toit wrote:

> I downloaded the new version of ReplicatorG-Sailfish from
> https://www.dropbox.com/s/zsqj2v4flsln7n2/replicatorg-0040r12-windows.zip.
> Thank you for making the pypy changes to it. I tried running
> ReplicatorG-large-models.exe, but on my Windows 7 machine the wait circle
> just turns for a bit, it goes away and then nothing happens. I also tried
> to run it as an admin. Maybe it is security settings at work. The normal
> ReplicatorG.exe opens up correctly. Is there a log file to see what might
> be going wrong? Nothing shows up in the Windows event viewer

You have a JVM and/or Windows environment that doesn't allow "-Xmx1400m" to
be supplied to the "java" command. The error, if any, is being logged by
java. No idea where that might be logged, but I would assume in the Windows
event log. While it runs for many people, there are others who have found
it doesn't for them. I'm not a Windows user, but my knee jerk reactions are

1. You have too small of a page file and something is detecting that and
won't let java run with -Xmx1400m (1.4GB). Mind you, that's merely the
max the Java heap can grow to. It's not a request to pre-allocate that
much VM.

2. You have some sort of Windows environmental limit stating that executables
cannot use more than some amount of VM and Java detects that and exits.

3. You have some old JVM that won't allow -Xmx1400m. However, the RepG
is bundled with it's own JRE so there'd have to be something odd going
on for a different JVM install to be sticking it's nose into things.

Dan

Dan Newman

unread,
Mar 20, 2013, 10:16:03 PM3/20/13
to make...@googlegroups.com

On 20 Mar 2013 , at 6:22 PM, Kobus du Toit wrote:

> I am trying to compile https://github.com/jetty840/ReplicatorG, not sure if
> I did something wrong on the checkout. Is this the correct project?
> I am having a problem finding PSTOP_ENABLED
>
> https://github.com/jetty840/ReplicatorG/blob/master/src/replicatorg/drivers/gen3/MightySailfish.java
> Line 2314 is looking for it in EEPROMParams
>
> enum EEPROMParams is defined
> in https://github.com/jetty840/ReplicatorG/blob/master/src/replicatorg/drivers/OnboardParameters.java
> I am not seeing PSTOP_ENABLED defined in the enum
>
> I added the value to my local enum to get a compile going
>
> MachineLoaderTest doesn't compile. The testLoad() method calls
> loader.getMachineInterface. getMachineInterface() returns a
> MachineInterface on my version so the check for boolean return value fails
> *
> https://github.com/jetty840/ReplicatorG/blob/master/src/replicatorg/machine/MachineLoader.java
> *
> *
> *
> *Sorry if I am being stupid and checking out the wrong project again*

I honestly have no idea if things build from github. That's not the actual
building repo (nor source control system) which Jetty and I use. I'll look
into it later tonight.

Dan

Infinityplusplus

unread,
Mar 20, 2013, 10:34:18 PM3/20/13
to make...@googlegroups.com
This seems to work great! Thank you to those who put work into this. I was able to slice Emmets blossoming lamp in 8 min and 3 seconds. It took me 2 hours and 34 min before. This was on a freshly installed windows 7 x64. I just downloaded the files from the links that Dan gave, plus went and grabbed python 2.7.3. Installed python, unzipped the others and put them where I wanted, pointed RepG to pypy and python and went to slicing. Awesome work! 

Dan Newman

unread,
Mar 20, 2013, 11:35:09 PM3/20/13
to make...@googlegroups.com

On 20 Mar 2013 , at 4:58 PM, DronE Pump wrote:

>
>
>> FWIW, the Windows Python 3.3 has Tkinter supplied.
>
>
> Yes, that is so. I refer to the pypy windows install (which requires
> 2.7.2) and further,(at least in the case of Win7) tkinter & Tcl (require C
> 2008) to go with the pypy install.
> I got all this to work together. I actually ran some tests from
> the interpreter console and satisfied myself that I had a working
> installation. Unfortunately for the reasons stated by Kubus, I was
> destined for failure. Anyway, I am ecstatic that this is now in the past
> and I look forward to firing up the modified version of RepG.

FWIW and on the offchance you didn't know this already, SF-50 needs
lots of work to work with Python 3.x. It's easy enough to deal with
Tkinter vs. tkinter: that's what "import tkinter as Tkinter" is for
and about 5 minutes in the editor. However, there's deeper issues
owing to deeper changes in Python. So Python 2.x it is for the
forseeable future of SF-50.

Dan

Eighty

unread,
Mar 20, 2013, 11:38:17 PM3/20/13
to make...@googlegroups.com
Kobus and Dan,
Thanks for making this happen!  Works like a champ for me.  I'm using the "large models" flavor no problem (didn't have any issues in r11 either - I must be living right).
 
On a side note, as funBart has mentioned before, Repetier-Host comes with a pypy installation.  So I just pointed RepG to that installation.
 
I do have a question, though.  The terminology on the buttons is "select Python interpreter" and "select PyPy interpreter".  If I want to revert back to Python, should I use the "Select PyPy Interpreter" button?  Obviously, I'd be stupid to ever do that - it's just for speed-testing.

Kobus du Toit

unread,
Mar 20, 2013, 11:41:46 PM3/20/13
to make...@googlegroups.com
Pleasure :)

If you click on "select PyPy interpreter" and then select your Python then you will be slicing with Python.  You can click on the "view preferences table" or something like that on the advanced screen to see what the pypy path is set to and what the python path is set to


--
You received this message because you are subscribed to a topic in the Google Groups "MakerBot Operators" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/makerbot/h1msCJ1C_oY/unsubscribe?hl=en-US.
To unsubscribe from this group and all its topics, send an email to makerbot+u...@googlegroups.com.

Eighty

unread,
Mar 20, 2013, 11:50:58 PM3/20/13
to make...@googlegroups.com
Got it, thanks.  Figured as much.  But in the meantime, it occurred to me that I can just use RepG40r11-Sailfish for my old Python-based slicing comparisons.
 
 

Kobus du Toit

unread,
Mar 20, 2013, 11:52:53 PM3/20/13
to make...@googlegroups.com
If you have too much time I can give you work to do :)  Still need probably another 10 000 lines of code to write for my laser tag gear, sitting on 10 000 now and getting bored lol


On Thu, Mar 21, 2013 at 1:50 PM, Eighty <adun...@gmail.com> wrote:
Got it, thanks.  Figured as much.  But in the meantime, it occurred to me that I can just use RepG40r11-Sailfish for my old Python-based slicing comparisons.
 
 

--

Eighty

unread,
Mar 21, 2013, 12:00:11 AM3/21/13
to make...@googlegroups.com
Sitting in a hotel room 5 states away from home...nothing else to do.  Sure, bring it on!
 
Did I mention I'm only proficient in VB.Net? 

Dan Newman

unread,
Mar 21, 2013, 12:03:10 AM3/21/13
to make...@googlegroups.com

On 20 Mar 2013 , at 8:38 PM, Eighty wrote:

> Kobus and Dan,
> Thanks for making this happen! Works like a champ for me. I'm using the
> "large models" flavor no problem (didn't have any issues in r11 either - I
> must be living right).
>
> On a side note, as funBart has mentioned before, Repetier-Host comes with a
> pypy installation. So I just pointed RepG to that installation.
>
> I do have a question, though. The terminology on the buttons is "select
> Python interpreter" and "select PyPy interpreter". If I want to revert
> back to Python, should I use the "Select PyPy Interpreter" button?

You can

1. Remove or rename the PyPy install at which RepG will see it's gone and
not use it.

2. In RepG reset to defaults.

3. In RepG use the "select PyPy interpreter" and point it at your normal
Python interpreter.

Dan

Kobus du Toit

unread,
Mar 21, 2013, 12:03:21 AM3/21/13
to make...@googlegroups.com


On Thu, Mar 21, 2013 at 2:00 PM, Eighty <adun...@gmail.com> wrote:
Sitting in a hotel room 5 states away from home...nothing else to do.  Sure, bring it on!
 
Did I mention I'm only proficient in VB.Net? 

--

Eighty

unread,
Mar 21, 2013, 12:26:52 AM3/21/13
to make...@googlegroups.com
Just glue on more header pins...
 
Not that this is real news, but:  I picked a fairly large model and ran a speed comparison between Python and PyPy.
The gcode file is 41+mb, containing 1,045,000 lines of gcode.
Python took 41 minutes, 41 seconds.
PyPy took 14 minutes, 18 seconds.
 
We have a winner!  Roughly 1/3 the slicing time! 

Andrew

unread,
Mar 21, 2013, 6:08:50 AM3/21/13
to make...@googlegroups.com
I concur!

10 min slicing time reduced to 2min 10 seconds..

4'58 slicing reduced to 1'02

Brilliant!

DronE Pump

unread,
Mar 21, 2013, 4:44:06 PM3/21/13
to make...@googlegroups.com
Dan & Kobus

Big thanks for working this through this issue.   The problem was not only solved but the solution was simplified greatly in the bargain!

I downloaded:
    1)    http://www.python.org/download/   (Python 2.7.3 W7 64b)

The packages were installed in the above order (although pypy & RepG do not require actual installation - you simply copy these folders to a location of choice).
Once in RepG it was an easy matter of point to Python & Pypy and it all worked without fuss.  (6x increase in speed - not too shabby)

BTW - Not having to install Tkinter is, IMHO, a blessing for all us.

Great outcome.  So thanks again.

66tbird

unread,
Mar 22, 2013, 11:51:37 AM3/22/13
to make...@googlegroups.com
I'm looking forward to the upgrade also, soon as I can do the bot too. But to move on to the core thing, I'm an AMD guy and found that RepG runs great in multiple instances and as long as the repg settings can remain the same per print (because they all revert to the original instance) then knocking out four or five repg builds takes about as long as one. I regularity do four builds, surf, watch tv, and use Sketchup all at the same time. I see no reason an i7 couldn't do the same or more.

On Friday, March 22, 2013 6:26:43 AM UTC-7, Ward Elder wrote:
All I can say about PyPy and RepG40r12 is WOW!
A 1.25 hour build took 5.5 minutes!!!!
Now if they can only get ALL my cores running.  I have a 6 core 12 thread i7 that PyPy is only using 1 thread.  That would be a possible increase in speed of 12 TIMES!!!  The 1.25 hour build would then only take about 30 seconds!  That would be a build 150 times faster!

Also, a second run of my 1.25 hour build on PyPy just finished in 3.5 minutes.  Strange it was 2 minutes faster than the first pass.

Thanks again Dan for all of your hard work.  (Jetty too!)

Eighty

unread,
Mar 22, 2013, 12:02:39 PM3/22/13
to make...@googlegroups.com
But does RepG have the ability to thread a single slicing instance to multiple cores? 

66tbird

unread,
Mar 22, 2013, 12:06:51 PM3/22/13
to make...@googlegroups.com
Not that I've found.

Dan Newman

unread,
Mar 22, 2013, 12:08:39 PM3/22/13
to make...@googlegroups.com

On 22 Mar 2013 , at 9:02 AM, Eighty wrote:

> But does RepG have the ability to thread a single slicing instance to
> multiple cores?

It's not RepG's concern. It's the slicer's concern. So, the question
is, can SF-50 do that. And the answer to that is no. It's
a very serial application, running within a single process.

Dan

Ward Elder

unread,
Mar 22, 2013, 12:50:29 PM3/22/13
to make...@googlegroups.com

--
You received this message because you are subscribed to the Google Groups "MakerBot Operators" group.
To unsubscribe from this group and stop receiving emails from it, send an email to makerbot+u...@googlegroups.com.

Reply all
Reply to author
Forward
0 new messages