Thing-o-matic and Makerware 2.4

276 views
Skip to first unread message

csmith

unread,
Nov 23, 2013, 1:06:10 AM11/23/13
to make...@googlegroups.com
Hi All,

I just want to document some of my recent experiences getting my Thing-o-matic and Makerware 2.4 to play nice. And hopefully it helps out someone else!

I picked up a second-hand Thingomatic over a year ago and quickly upgraded to Sailfish firmware. Along the way I've made a number of upgrades including MK7 extruder, Z-axis bed touch-off and upgraded stepper motors. The print quality has steady improved with the upgrades. I always felt that the "missing-link" was the quality of the slicing/gcode generation rather than the printer itself so I decided to try the latest Makerware 2.4. I have to say that I've been pleasantly surprise by the quality of the prints from the Makerware and features like the raft and improved supports do work really well. I took this photo earlier today of a test print from Makerware with a 0.2mm layer height using black gloss PLA - not perfect but pretty good for a printer that's 3 years old.


 

Here's a series of notes that made along the way which may (or may not!) be helpful to get Makerware playing nicely with your Thing-o-matic.

Makerware Custom Profile

The first thing to do in Makerware is setup a custom profile. The standard Thing-o-matic profile has a lot of issues with the start/end gcode routines.

To make editing the custom profile easier I'd suggest using the Proftweak interface. http://nothinglabs.blogspot.com.au/2013/09/introducing-proftweak-makerware-profile.html

The custom profile is usually stored in My Things folder under your windows profile. Make sure the profile references startGcode to start.gcode and endGcode to end.gcode.
I've attached my profile for what it's worth (I take no responsibility for any damage this may cause to your machine)

Start and End Gcode

Both start and end gcode files must be rewritten to suit Makerware. I'd originally use the same gcode as RepG but it just didn't work. The key is that Makerware only implements certain gcodes and all moves must be coordinated (G1) moves rather than uncoordinated (G0). My start/end.gcode files are included in the attached profile. 

It's also worth reading the Makerbot s3g protocol on Github for a list of the Makerware implemented Gcodes.  https://github.com/makerbot/s3g/blob/d7991b8ba85502222c99852a6bb29c68d2dd63ef/doc/GCodeProtocol.md

Using M126/M127 to control additional cooling fan

Along the way I've ditched the Automatic Building Platform (ABP) as it caused more problems than it fixed. In it's place I rigged an extra fan to the ABP motor terminals and used the M106/M107 gcode to control it. This worked fine in RepG but unfortunately the M106/M107 codes are not implemented in Makerware (and throw an error if found in start/end gcode). 

The Replicator 2 uses the M126/M127 gcode to turn on/off the additional fan so these gcodes are included in Makerware and automatically inserted into the gcode file. However, this is deliberately disabled for Thing-o-matic as it can cause problems with the heated build platform overheating.

In order to implement the M126/M127 gcodes with my Thingomatic, I've made some hacks to the Makerware software and it's s3g processor. These changes are very specific to my setup with the additional fan in place of the ABP but might be of interest to others. 

1. Locate the Makerware program folder and open the Python folder. There should be a series of 'egg' files which are actually zip files. 
2. The two files that need to be modified are conveyor [...].egg and makerbot_driver [...].egg
3. make backups of the two files and then open with 7-zip.
4. for the conveyor [...].egg file, find the miraclegrue.py file under the slicer folder and change line 289 from false to true
5. for the makerbot_driver [...].egg file, find the s3g.py file and change line 1381 from TOGGLE_EXTRA_OUTPUT to TOGGLE_ABP
6. save the modifed files back into their respective 'egg' and then copy into the Makerware python folder
7. open Makerware and restart background services
8. hopefully everything works!

The source code for the above can be found on the Makerbot Github https://github.com/makerbot

It should also be possible to implement an extruder firmware fix to do the above but is well beyond my limited arduino knowledge!

And a big thanks to the Sailfish/Jetty firmware team for keeping up the support for the ageing Thing-o-matic.


Thingomatic Makerware 2.4.zip

Jetguy

unread,
Nov 23, 2013, 10:54:32 AM11/23/13
to make...@googlegroups.com
Nice job on that bit of information!!!!
That helps all owners with gen4 based machines.
Reply all
Reply to author
Forward
0 new messages