I grabbed ReplicatorG 0017 (v2) for Linux and had no problems
unpacking and running it, but when I went to convert an STL to GCode,
I ran into a bit of a problem. I'm running CentOS on my build laptop,
and it comes with Python 2.4. I built Python 2.5 from source into
/usr/local and had no problems invoking Skeinforge 0006 manually
('/usr/local/bin/python2.5 ./skeinforge-0006/skeinforge.py'), but I
seem to be having difficulty getting ReplicatorG 0017 to invoke the
right Python.
Contribute to jetty840/ReplicatorG development by creating an account on GitHub. Either version 2 of the License,. The python struct description of the rest. So I just installed ReplicatorG for my ctc printer and the installation went well, im able to connect to my printer, move the motors and heat up the plate all from replicator. But when i try to print something, It tells me that i need a python interpreter and a Python screen pops up with the options to modify repair or uninstall python. Ive tried modify a couple times and repair a few times to.
ReplicatorG is used because it is simple and fairly intuitive. For example, after generating GCode, ReplicatorG will let you view the GCode in another tab. There you can edit the GCode and then save the edited GCode to your SD card. ReplicatorG slices the 3D model into small layers. Each layer will be a layer that is printed by the 3D printer. Already have Python selected as described above, but ReplicatorG freezes when I try to load an STL file. Obviously this indicates an issue with Skeinforge and/or Python, but I can't figure out where. I've reinstalled and rebooted several times, tried different Python and Skeinforge versions, still no luck.
I've tried an alias of python2.5 for python; I've tried fiddling the
shebang line in skeinforge.py. What's tripping me up appears to be
some sort of version check in RepG itself. I get a dialog box that
says:
Generating gcode requires Python version 2.5.0 or later. Python
version 2.4.3 was detected
Make sure your system has the 'python' and 'python-tk' packages installed.
I'm not a Java guru, so I'm hoping someone who is can ferret out how
RepG 0017 determines what python(s) is/are installed and how I can get
it to let me proceed with an alternate version of Python installed
since RedHat and CentOS don't take kindly to upgrading the system-wide
python install above 2.4.
Thanks for any tips. Sql to oracle converter online.
-ethan
While I’ve been having a ton of fun with my MakerBot Thing-O-Matic, generating the gcode to run the machine takes an amazingly long. Despite having a quad-core Core2Duo running a hair over 2.5GHz, Skeinforge is not efficient. Python isn’t fast at that much number crunching, and the process that turns the 3D model into a series of 2D layers is almost totally serial.
I’ve been using a program called Pleasent3D to look at the gcode Skeinforge makes to look for errors. While reading about the software, I found a blog entry by the author describing how he got tired of waiting on Skeinforge and then ported the gcode gene ration algorithms to Objective-C and ended up with a massive speedup (up to 230x in one module).
Now I don’t want to get away from the official MakerBot way of doing things yet, I’m not that confident. The easiest way to speed up Skeinforge would be to speed up Python. People used to recommend Psycho, but it is no longer updated and doesn’t run in 64-bit mode (like Python does on my Mac). I finally got around to playing with PyPy, which grew out of Psyscho, to see just how much of a difference it made. I’d seen references to other people doing this, so I knew all the libraries had to be there.
Installing PyPy was as easy as downloading a pre-built binary distribution and unzipping it. The problem is that to use PyPy with Skeinforge (and therefor ReplicatorG), you need to have TkInter installed. I found a great set of steps to follow in a PyPy blog entry about using the IDLE IDE. The only problem was the TkInter package for PyPy is looking for Tk8.4, but OS X Lion has 8.5. Luckily since it’s a point release I figured I could just swap them out and it worked out fine. I updated the files in the tkinter-pypy install file and it worked fine (updated zip for download). Making ReplicatorG use PyPy is as easy as selecting it in the preferences window.
So I ran some benchmarks by running a couple of models through with both CPython and PyPy with my normal profile, no support:
Model | CPython | PyPy | Speed |
---|---|---|---|
20mm calibration cube | 19s | 13s | 1.46x |
Vica illusion sculpture | 5m 36s | 1m 48s | 3.11x |
V8 cam shafts | 6m 37s | 1m 18s | 5.09x |
Tank! | 2h 45m 29s | 38m 45s | 4.27x |
As you can see, PyPy can be dramatically Dragon dictate versions. faster. I chose the Tank! model (which unmodified is about 4x the max print area on my ToM) to see just how big the difference would be on very complex models. Getting a 4x speedup is a great result, but there is just one minor problem: the gcode is different. Generating gcode should be deterministic. Given the same profile, the same model, and the same version of Skeinforge you should always get the same output.
In the case of the 20mm calibration cube, the gcode is identical. But for every other model, it’s different. The F parameters on the move commands are different, and sometimes the points seem different. I haven’t looked at it too hard yet. It seems like it might be due to floating point differences, but PyPy is supposed to be a drop in replacement for most Python programs so I doubt this should be happening.
Replicatorg Python Version Tutorial
I’m going to have to look into it further.