<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pleasant Hardware &#187; Software</title>
	<atom:link href="http://pleasantsoftware.com/developer/3d/category/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://pleasantsoftware.com/developer/3d</link>
	<description>3D printing and other hardware projects</description>
	<lastBuildDate>Sat, 28 Apr 2012 17:20:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>The mill&#8217;s soul</title>
		<link>http://pleasantsoftware.com/developer/3d/2011/05/23/the-mills-soul/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2011/05/23/the-mills-soul/#comments</comments>
		<pubDate>Mon, 23 May 2011 21:04:04 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Experimental]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Movie]]></category>
		<category><![CDATA[Pleasant Mill]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=857</guid>
		<description><![CDATA[I just published v0.4 of Pleasant Mill&#8216;s firmware on Github yesterday: https://github.com/zaggo/PleasantMill As you might guess from the version number, this firmware isn&#8217;t finished yet and probably still has some bugs to fix (help&#8217;s highly appreciated, BTW :). As mentioned &#8230; <a href="http://pleasantsoftware.com/developer/3d/2011/05/23/the-mills-soul/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjEwMDAxNzk1NjQ3MzM5NTg2"><img class="pie-img alignleft" style="margin: 10px 10px 10px 10px;" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/Tdq66Prc_EI/AAAAAAAAA0M/kbtU7FFkmm0/IMG_2456.JPG?imgmax=200" alt="IMG_2456.JPG" width="200" height="149" /></a>I just published v0.4 of <a title=\"Poor men’s laser cutter\" href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BsZWFzYW50c29mdHdhcmUuY29tL2RldmVsb3Blci8zZC8yMDExLzA1LzEzL3Bvb3ItbWVucy1sYXNlci1jdXR0ZXIv">Pleasant Mill</a>&#8216;s firmware on Github yesterday:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9naXRodWIuY29tL3phZ2dvL1BsZWFzYW50TWlsbA==">https://github.com/zaggo/PleasantMill</a></p>
<p>As you might guess from the version number, this firmware isn&#8217;t finished yet and probably still has some bugs to fix (help&#8217;s highly appreciated, BTW :).</p>
<p>As <a title=\"Poor men’s laser cutter\" href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BsZWFzYW50c29mdHdhcmUuY29tL2RldmVsb3Blci8zZC8yMDExLzA1LzEzL3Bvb3ItbWVucy1sYXNlci1jdXR0ZXIv">mentioned before</a>, I use a Seeduino Mega and some Pololu A4983 stepper motor drivers.</p>
<p>One recent addition on the hardware side was a 24V/6.3A power supply. I also glued some small heat sinks on the A4983 chips.</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjEwMDAxNTgzNTA5NzYwODk4"><img class="pie-img" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/Tdq6t5Z6a4I/AAAAAAAAA0I/oryRNz6zgN8/IMG_2431.JPG?imgmax=200" alt="IMG_2431.JPG" width="200" height="149" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjEwMDAyMDYxOTU0MjUxOTA2"><img class="pie-img" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/Tdq7Jvv9_II/AAAAAAAAA0U/C3Oe3gHA9j8/IMG_2429.JPG?imgmax=200" alt="IMG_2429.JPG" width="200" height="149" /></a></p>
</div>
</div>
<p>Then I increased the current to 1.68A, the max current, the stepper motors (SY42STH47-1684B) are rated for. Driving the steppers at 24V/1.68A enabled me to dramatically increase the top feedrate for the machine (about 1800mm/min instead 600mm/min). Unfortunately, the little heat sinks weren&#8217;t enough and the thermal shutdown of the A4983 kicked in after a few minutes. So I had to lower the current to about 1.2A again (and the max feedrate to 1100mm/min).</p>
<p>As you can see in the image at the top of this page, I&#8217;m still using a messy bread board for the electronics. As soon as I have the feeling to know the main issues with the whole shebang, I&#8217;ll build some kind of Seeeduino Mega shield, of course.</p>
<p>Right now, I plan to put the stepper motor drivers on a separate daughter PCB, somehow integrated in some kind of big ass heat sink.</p>
<p>If anyone knows a good way to cool the tiny A4983 chips on the Pololu breakout boards, please let me know!</p>
<p>&#8212;</p>
<p>The just published firmware release contains code for the G2/G3 commands (arcs) and for several drilling cycles (G81, G82, G83, G85, G89 and G73, see video below).</p>
<p>The drilling cycle commands also recognize the L (loop) parmeter, which is nice to drill multiple holes in a row. Just switch to incremental positioning (G91) and use something like G81 X10 Y0 Z-12 R1 L7 to drill 7 holes along Y=0mm, 10mm apart and 12mm deep. Don&#8217;t forget to switch back to absolute positioning (G90) after :)</p>
<p>I also added the M6 (tool change) command. Of course, I have no automatic tool changer (and I don&#8217;t really plan to build one). On the Pleasant Mill, the M6 command pauses the G-code processing and displays a message on the LCD, containing the tool number, requested by the G-code program and waiting for feedback from the operator.</p>
<p>For example, the line</p>
<p><code>M6 T3</code></p>
<p>results in</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjEwMDA4MTQ2NTIwOTgwMjQy"><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TdrAr6huOxI/AAAAAAAAA0g/EmiLaVah7L8/IMG_2482.JPG?imgmax=576" alt="IMG_2482.JPG" width="576" height="430" /></a></p>
<p>I even wrote some code to save a &#8220;tool database&#8221; in the Seeeduino&#8217;s EEPROM, so the LCD would say something like &#8220;Insert tool: 3mm drill bit&#8221;, but this code doesn&#8217;t work properly yet.</p>
<p>Both, the drilling cycles and the tool change command are showed off in the following video:</p>
<p><object style="height: 390px; width: 640px;" width="640" height="390" type="application/futuresplash"><param name="movie" value="http://www.youtube.com/v/Z805rMU7YYs?version=3" /><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><embed type="application/futuresplash" width="640" height="390" src="http://www.youtube.com/v/Z805rMU7YYs?version=3" allowfullscreen="true" allowscriptaccess="always"></embed></object></p>
<p>And here&#8217;s the G-code, I sent to the machine during the video:</p>
<p><code> G21<br />
G90<br />
G0 Z3<br />
G0 X2 Y2 ; Simple drilling cycle<br />
G91<br />
G81 X6 Y0 Z-8 R2 F300 L4<br />
G90<br />
G0 X2 Y7 ; Drilling cycle with dwell<br />
G91<br />
G82 X6 Y0 P500 L4<br />
G90<br />
G0 X2 Y12<br />
G4 P1000 ; Peck Drilling cylce<br />
G91<br />
G83 X6 Y0 Q2 L4<br />
G90<br />
G0 X2 Y17; Peck drilling cycle, high speed<br />
G91<br />
G73 X6 Y0 Q3 L4<br />
G90<br />
G0 X2 Y22 ; Drilling cycle, slow retract<br />
G91<br />
G85 X6 Y0 L4<br />
G90<br />
G0 X2 Y27; Drilling cycle with dwell, slow retract<br />
G91<br />
G89 X6 Y0 P500 L4<br />
G90<br />
G0 X0 Y-25 Z19.5 ; Tool change position<br />
M6 T2 ;  Change Tool<br />
G0 X2 Y32<br />
G91<br />
G81 X6 Y0 Z-5 R2 L4<br />
G90<br />
G0 X2 Y34<br />
G91<br />
G81 X6 Y0 Z-5 R2 L4<br />
G90<br />
G0 X0 Y25 Z13.5<br />
</code></p>
<p>&#8212;</p>
<p>I also implemented the commands G54 to G59. Each of these commands switches the machine to one of 6 &#8220;work coordinate systems&#8221; (WCSs). These are 6 user defined &#8220;zero positions&#8221;, saved in the machines EEPROM.</p>
<p>To define a WCS, use the &#8220;Jog XZ&#8221;, &#8220;Jog Z&#8221; and &#8220;Jog AB&#8221; functions in the mill&#8217;s UI (&#8220;Cartesian&#8221;) to move to the desired position. Then choose the menu command &#8220;Set WCS&#8221; to save this position in the EEPROM. You also can view already saved positions with the &#8220;Show WCS&#8221; command.</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjEwMDExNzIxMjAyMTAzMDEw"><img class="pie-img" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/TdrD7_QHcuI/AAAAAAAAA0o/Q4bHH7qUv24/IMG_2484.JPG?imgmax=200" alt="IMG_2484.JPG" width="200" height="149" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjEwMDExOTk5MjIxMjU1NDEw"><img class="pie-img" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TdrEMK9DDPI/AAAAAAAAA0w/TIgFJJDTEM8/IMG_2486.JPG?imgmax=200" alt="IMG_2486.JPG" width="200" height="149" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjEwMDEyMjg3NDY1MTQ1NjM0"><img class="pie-img" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/TdrEc8vvxSI/AAAAAAAAA00/B9_HFrQvE68/IMG_2490.JPG?imgmax=200" alt="IMG_2490.JPG" width="200" height="149" /></a></p>
</div>
</div>
<p>When writing G-code, you can then use one of the commands G54 to G59 to load the previously saved positions as zero positions.</p>
<p>In order to get the whole WCS stuff working, you need to &#8220;home&#8221; the machine once (either by sending the G28 command or by choosing &#8220;Find home&#8221; from the Cartesian menu in the UI). This is necessary to give the firmware an idea of the machine&#8217;s absolute zero position. If you try to save a WCS position in the UI or to use G54 to G59 without homing, an error is displayed.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=857" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=857&amp;md5=66cd5abef114e66c3acb121890a3ff2b" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2011/05/23/the-mills-soul/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2011%2F05%2F23%2Fthe-mills-soul%2F&amp;language=en_GB&amp;category=text&amp;title=The+mill%26%238217%3Bs+soul&amp;description=I+just+published+v0.4+of+Pleasant+Mill%26%238216%3Bs+firmware+on+Github+yesterday%3A+https%3A%2F%2Fgithub.com%2Fzaggo%2FPleasantMill+As+you+might+guess+from+the+version+number%2C+this+firmware+isn%26%238217%3Bt+finished+yet+and+probably+still+has+some...&amp;tags=blog" type="text/html" />
	</item>
		<item>
		<title>Poor men&#8217;s laser cutter</title>
		<link>http://pleasantsoftware.com/developer/3d/2011/05/13/poor-mens-laser-cutter/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2011/05/13/poor-mens-laser-cutter/#comments</comments>
		<pubDate>Fri, 13 May 2011 02:34:17 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Experimental]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Pleasant Mill]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=825</guid>
		<description><![CDATA[I know, a CNC mill ain&#8217;t a laser cutter. But it&#8217;s as close as it gets for me in the foreseen future. Don&#8217;t get me wrong, I&#8217;m still happy with printing 3D stuff in plastic. As matter of fact, I used far &#8230; <a href="http://pleasantsoftware.com/developer/3d/2011/05/13/poor-mens-laser-cutter/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTcxNDAwOTc1MjI4ODM0"><img class="pie-img alignleft" style="margin: 10px 10px 10px 10px;" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TcxpSZggn6I/AAAAAAAAAsk/LQ1Dh-toX4c/IMG_2345.jpg?imgmax=400" alt="IMG_2345.jpg" width="299" height="400" /></a>I know, a CNC mill ain&#8217;t a laser cutter. But it&#8217;s as close as it gets for me in the foreseen future.</p>
<p>Don&#8217;t get me wrong, I&#8217;m still happy with printing 3D stuff in plastic. As matter of fact, I used far more printed parts during the build of my new CNC mill than I had planned in the beginning. But there are quite some situations, when printed plastic just isn&#8217;t the best choice material for an object.</p>
<p>That&#8217;s where usually laser cutters, plasma torches and water jets come in. Or, in case of a poor, lone DIY warrior, a home made CNC mill.</p>
<h2>The plan</h2>
<p>I looked for an open source CNC machine which would be able to mill wood (mostly plywood and MDF), acrylic and maybe even aluminum.</p>
<p>The internet is full of DIY CNC mills, but only a few people publish plans and/or enough technical data. There are some kits, but I didn&#8217;t want buy a kit, since I already had many parts for a CNC mill lying around (high torque stepper motors and Pololu A4983 motor drivers from a <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PVc5WWtOYVRrZE13" target=\"_blank\">dead end project</a> of mine, waiting for recycling, a bunch of precision rods from old scanners and printers). Also I love to plan and build stuff by myself.</p>
<p><img class="pie-img" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/Tcxl8REeRiI/AAAAAAAAArE/yYMGdSzomXM/IMG_2192.jpg?imgmax=576" alt="IMG_2192.jpg" width="576" height="430" /><img style="margin: 10px 10px 10px 10px;" alt="" /></p>
<p>Eventually I stumbled upon the website of the <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL21ha2V5b3VyYm90Lm9yZy9tYW50aXM5LTE=" target=\"_blank\">Mantis CNC mill</a>. This mill is open source and kits are available for sale.</p>
<p>I liked the compact size and use of wood for the main construction. However, there are several things, I don&#8217;t like:</p>
<ul>
<li>For my taste, there&#8217;s way too much glueing involved in the construction. Although this makes the build process easier, glueing stuff together with epoxy means also there won&#8217;t be any chance for adjustments later. They even glue one of the stepper motors to the back of the machine&#8230;.</li>
<li>The Z axis construction is made for a -glued in- custom spindle. No easy way to attach other tools, like a Dremel or maybe an extruder on the machine.</li>
<li>The Mantis&#8217; work area was a little bit too small for me.</li>
<li>The whole construction and plans are in imperial measure. No offense, but I&#8217;m a very happy user of the metric system.</li>
</ul>
<p>That said, I used the Mantis plans as base for my own, custom plans.</p>
<p>I slightly scaled the parts up and &#8220;rounded&#8221; them to the next metric measure. The 10&#8243;x4&#8243; build platform became a 300 x 150 mm build platform and so on.</p>
<p>In order to keep track of the changed parts and the construction as a whole, I constructed the machine in a 3D application:</p>
<p><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/Tcx2MtPIxyI/AAAAAAAAAtg/v_5KuFA9c2g/3dConstruction.png?imgmax=576" alt="3dConstruction.png" width="576" height="353" /><img style="margin: 10px 10px 10px 10px;" alt="" /></p>
<p>I also changed the construction of the Z axis in order to provide a more versatile base for different tools. The Z stepper motor sits on top of the Z axis in my construction (and isn&#8217;t glued to the back of the X axis plate).</p>
<h2>Bodywork</h2>
<p>Based on my 3D drawing, I wrote a BOM for the wooden parts. I use 16mm MDF and the whole material cost less than 10€ in my local hardware store (already cut to size).</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY3NjE5ODczNDI5MzE0"><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/Tcxl2Tzl10I/AAAAAAAAAq8/tFArCHPFCJQ/IMG_2188.JPG?imgmax=576" alt="IMG_2188.JPG" width="576" height="430" /></a></p>
</div>
</div>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY3ODMzMDg2MTQ0MjU4"><img class="pie-img" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TcxmCuFdrwI/AAAAAAAAArI/DOFMSxHwluE/IMG_2195.JPG?imgmax=576" alt="IMG_2195.JPG" width="576" height="430" /></a></p>
</div>
</div>
<p>&nbsp;</p>
<p>Here are some pictures from the build process. Building a LCD (and a micro joystick switch) directly into the machine was part of the plan from the beginning.</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY4Mzk1MDE2NDU4MjU4"><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TcxmjbcF0BI/AAAAAAAAAro/4F-Si7TgdE8/IMG_2198.jpg?imgmax=320" alt="IMG_2198.jpg" width="320" height="239" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY4NzQ4NjM3MTgwNDgy"><img class="pie-img" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/Tcxm4Ax10kI/AAAAAAAAArw/0_6Nqv3sQDE/IMG_2200.jpg?imgmax=320" alt="IMG_2200.jpg" width="320" height="239" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY3OTQ0MTQ0NTI1NTM4"><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TcxmJLz2GOI/AAAAAAAAArQ/3GRlrzn4KyQ/IMG_2205.JPG?imgmax=320" alt="IMG_2205.JPG" width="320" height="239" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY5MTE2OTcxMzE3NjUw"><img class="pie-img" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TcxnNc7iuZI/AAAAAAAAAr0/v7jJHkFmxxs/IMG_2203.jpg?imgmax=320" alt="IMG_2203.jpg" width="320" height="239" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY4MDQwNzI5ODQwNzIy"><img class="pie-img" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/TcxmOznlDFI/AAAAAAAAArY/9ihjnELDwsc/IMG_2206.JPG?imgmax=320" alt="IMG_2206.JPG" width="320" height="239" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY4MTUzNDQ3MzM4NzIy"><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TcxmVXhhkuI/AAAAAAAAArc/y9OIAbQa5n4/IMG_2208.JPG?imgmax=320" alt="IMG_2208.JPG" width="320" height="239" /></a></p>
</div>
</div>
<h2>Problems</h2>
<p>One thing, I wasn&#8217;t sure about were the bushings. Since they uses bush bearings in the original Mantis construction, I ordered some sintered bronze bushings together with the acme threads.</p>
<p>Despite all precautions and match drilling all holes for the precision rods, I wasn&#8217;t very happy with the results when first assembling the x axis.</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY5ODg2NjE2NTgzNDU4"><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/Tcxn6QFRfSI/AAAAAAAAAsE/vqEa31tWfvY/IMG_2220.JPG?imgmax=576" alt="IMG_2220.JPG" width="576" height="430" /></a></p>
<p>The slide was much too sluggish (see following video). So I decided to go back to proven mechanics and designed Mendel-style linear bearings for all three axis.</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTcwMTExNjkzNDYyMDgy"><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TcxoHWjyGkI/AAAAAAAAAsM/5NxK5noi5wo/IMG_2224.JPG?imgmax=576" alt="IMG_2224.JPG" width="576" height="430" /></a></p>
<p>Since there isn&#8217;t too much room for the bearings (especially at the Z axis), I designed the printed ball bearing retainers as low profile as possible. The &#8220;inner&#8221; ball bearings are halfway sunk in the base plate.</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTcwNDE5Njc0NDIwNjQy"><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TcxoZR4KlaI/AAAAAAAAAsU/FzaNs_u8W8w/IMG_2228.JPG?imgmax=576" alt="IMG_2228.JPG" width="576" height="430" /></a></p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY5NjYxNjkxMTg1MzQ2"><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/TcxntKK4SMI/AAAAAAAAAsA/x2kzsaoMB9s/IMG_2218.JPG?imgmax=576" alt="IMG_2218.JPG" width="576" height="430" /></a></p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTY5NjYxNjkxMTg1MzQ2"></a>This not only keeps the assembly as low as possible, but also guarantees the same height reference for the fixed bearings (the axle sits directly on the plate). All upper bearings are adjustable.</p>
<p>Here&#8217;s a short video with a comparison of both bearing styles. I guess, bush bearings are only usable when the whole construction is manufactured by CNC machines&#8230;<br />
<object style="height: 390px; width: 640px;" width="640" height="390" type="application/futuresplash"><param name="movie" value="http://www.youtube.com/v/nL-CA5Fm8bk?version=3" /><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><embed type="application/futuresplash" width="640" height="390" src="http://www.youtube.com/v/nL-CA5Fm8bk?version=3" allowfullscreen="true" allowscriptaccess="always"></embed></object></p>
<p>I published the STL files for the linear bearings on Thingiverse.com: <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy50aGluZ2l2ZXJzZS5jb20vdGhpbmc6ODQ4MA==">http://www.thingiverse.com/thing:8480</a></p>
<p><span style="font-size: x-large;"><span style="font-size: 20px;"><br />
</span></span></p>
<h2>Build platform</h2>
<p>The build platform is (same as in the Mantis construction) a sandwich of two boards of the same size. The linear bearings and the acme rod are attached to the lower board. That way, the upper board can be easily replaced in case of an accident or maybe if a heated build platform is needed in the future.</p>
<p>I drilled a grid of 4mm holes in the upper board, each with its own drive-in nut. The grid then can be used to easily attach a workpiece on the build platform by using scew clamps or directly bolting the piece down.</p>
<p>&nbsp;</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTczMTIyOTI0OTc1OTcw"><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/Tcxq2oRUl2I/AAAAAAAAAtI/2x1HgxYMbRA/IMG_2358.JPG?imgmax=576" alt="IMG_2358.JPG" width="576" height="430" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTcxMDA4MzE2MzI2MjEw"><img class="pie-img" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/Tcxo7ivVQUI/AAAAAAAAAsg/BT1GHIvoamM/IMG_2236.JPG?imgmax=576" alt="IMG_2236.JPG" width="576" height="430" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTczNjk0NzE3ODE3NzYy"><img class="pie-img" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TcxrX6XW86I/AAAAAAAAAtU/VKvIWKEg52E/IMG_2362.JPG?imgmax=576" alt="IMG_2362.JPG" width="576" height="430" /></a></p>
</div>
</div>
<p>&nbsp;</p>
<h2>The tool</h2>
<p>As spindle, I attached my Dremel to the Z stage. I printed an upper and lower clamp on my Makerbot Cupcake, which hold the Dremel gentle and tight on the Z axis.</p>
<p>&nbsp;</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTcyMjczNzI3NTUzNjY2"><img class="pie-img" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/TcxqFMw4QII/AAAAAAAAAs4/KImTLKrhXCk/IMG_2351.jpg?imgmax=576" alt="IMG_2351.jpg" width="430" height="576" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTcxNjc2NDkyNDQxMzk0"><img class="pie-img" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/Tcxpib47pzI/AAAAAAAAAso/XbNrCk1nn3w/IMG_2347.jpg?imgmax=576" alt="IMG_2347.jpg" width="430" height="576" /></a></p>
<p class="pie-img-wrapper">The STL files for the brackets are available on Thingiverse.com: <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy50aGluZ2l2ZXJzZS5jb20vdGhpbmc6ODQ4MQ==">http://www.thingiverse.com/thing:8481</a></p>
</div>
</div>
<h2>The electronics</h2>
<p>For a while I planned to use RAMPS electronics from UltiMachine to drive the three steppers (and any extruders in the future). But ever since I looked in the store, the PCB was out of stock. In addition to that, I already had a Seeeduino Mega lying around, which I liked to use for this job and which is not shield compatible with the Arduino Mega. Finally I needed some custom connections for the LCD, the joystick switch and the emergency stop button, I built into the mill.</p>
<p>So I decided to go for my own, custom RAMPS shield for the Seeeduino Mega.</p>
<p>Based on the open source design of the UltiMachine RAMPS electronics, I started to design the new Seeeduino shield.</p>
<p>&nbsp;</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA2MDA5OTE1Mjk0OTYyMjI2"><img class="pie-img" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TcyMUOh5UjI/AAAAAAAAAt4/Kejq-RsUUVA/RAMPS-Seeeduino-Schematics.png?imgmax=576" alt="RAMPS-Seeeduino-Schematics.png" width="576" height="451" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA2MDA5OTI0ODk1MDY4MzM4"><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TcyMUySvULI/AAAAAAAAAt8/eckLdjzbpCI/RAMPS-SeeeduinoBoard.png?imgmax=576" alt="RAMPS-SeeeduinoBoard.png" width="576" height="488" /></a></p>
</div>
</div>
<p>&nbsp;</p>
<p>The board design is far from finished yet! Meanwhile I started to put the electronics onto a big breadboard on the backside of the mill.</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTcyODI5MzExNjY3MjY2"><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TcxqliedDEI/AAAAAAAAAtE/UlO5uSuLSOM/IMG_2355.jpg?imgmax=576" alt="IMG_2355.jpg" width="430" height="576" /></a></p>
<p>As soon as the circuits are working correctly and the schematics are fully tested, I&#8217;ll manufacture the final shield PCB. But this might still take a while and I&#8217;ll definitely write at least one other blog post about this topic.</p>
<p>So far, the breadboard contains only three Pololu A4983 boards for the steppers, as well as connectors for three endstop switches and some additional components for the LCD and switches.</p>
<p>I currently use mechanical endstops for the three axes. I&#8217;m still not sure if I&#8217;m happy with these. Maybe I&#8217;ll switch to opto endstops later, since I have the feeling, that they are much more accurate.</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cHM6Ly9waWNhc2F3ZWIuZ29vZ2xlLmNvbS9aYWdnb1BTL1BsZWFzYW50TWlsbCM1NjA1OTcxOTgxMjE5OTI2MDUw"><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/Tcxp0LFoECI/AAAAAAAAAsw/fqkluUziiuI/IMG_2349.jpg?imgmax=576" alt="IMG_2349.jpg" width="430" height="576" /></a></p>
<h2>The software</h2>
<p>I used the newest version of the RepRap firmware as a starting point. I very much like the acceleration feature for the cartesian system. Originally I thought I&#8217;d use the RepRap firmware more or less unchanged and just add code for the LCD and switches.</p>
<p>But it turned out quickly, that I&#8217;d need to make bigger changes to the firmware in order to implement some features I planned (e.g. jogging with the joystick switch etc.).</p>
<p>One thing came to another, I started to re-write some parts, added some code in the G-Code parser which is important for milling (G2, G3, G81 etc.). Then I started to throw out obsolete code and to redesign other code in order to implement stuff more object oriented&#8230;</p>
<p>Long story short, the firmware tuns out to be more <em>based</em> on the RepRap firmware than to be just an extended variant.</p>
<p>I have plans to go even further and to try to implement G41/G42 functionality (Cutter Radius Compensation). In order to do so, the G-Code parser needs a lot changes and extended functionality.</p>
<p>In order to keep my focus on the functionality important for milling, all 5D-extruder support is currently removed from the firmware. I&#8217;ll definitely add this code again later, when the milling code is working.</p>
<p>I&#8217;ll also publish my version of the firmware as open source, of course. But I&#8217;ll need some more time to further stabilize and clean up the code  before that. Please stay tuned.</p>
<h2>The movie</h2>
<p>Finally, here&#8217;s a video of the mill&#8217;s first real cut and a short demo of the LCD menu system of the current firmware:</p>
<p><object style="height: 390px; width: 640px;" width="640" height="390" type="application/futuresplash"><param name="movie" value="http://www.youtube.com/v/M0D3_hRUvTo?version=3" /><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><embed type="application/futuresplash" width="640" height="390" src="http://www.youtube.com/v/M0D3_hRUvTo?version=3" allowfullscreen="true" allowscriptaccess="always"></embed></object></p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=825" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=825&amp;md5=53e54bb87970045aa543810178e52764" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2011/05/13/poor-mens-laser-cutter/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2011%2F05%2F13%2Fpoor-mens-laser-cutter%2F&amp;language=en_GB&amp;category=text&amp;title=Poor+men%26%238217%3Bs+laser+cutter&amp;description=I+know%2C+a+CNC+mill+ain%26%238217%3Bt+a+laser+cutter.+But+it%26%238217%3Bs+as+close+as+it+gets+for+me+in+the+foreseen+future.+Don%26%238217%3Bt+get+me+wrong%2C+I%26%238217%3Bm+still+happy+with...&amp;tags=blog" type="text/html" />
	</item>
		<item>
		<title>Getting Support</title>
		<link>http://pleasantsoftware.com/developer/3d/2010/10/24/getting-support/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2010/10/24/getting-support/#comments</comments>
		<pubDate>Sat, 23 Oct 2010 22:14:44 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Designs]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=708</guid>
		<description><![CDATA[I need a tripod stand for my iPhone 4. Fortunately, there&#8217;s a nice design for one of these, ready for download on Thingiverse: http://www.thingiverse.com/thing:4335 A minor problem with this object is, that Bradley Rigdon, the creator of this design, owns a couple &#8230; <a href="http://pleasantsoftware.com/developer/3d/2010/10/24/getting-support/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNjk5OTA0MTEyNjk5NA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TMM4mXJfslI/AAAAAAAAAbw/ZPnHhYbVRWU/IMG_1027.JPG?imgmax=400" alt="IMG_1027.JPG" width="400" height="299" /></a></p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNjk5OTA0MTEyNjk5NA=="></a>I need a tripod stand for my iPhone 4.</p>
<p>Fortunately, there&#8217;s a nice design for one of these, ready for download on Thingiverse: <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy50aGluZ2l2ZXJzZS5jb20vdGhpbmc6NDMzNQ==" target=\"_blank\">http://www.thingiverse.com/thing:4335</a></p>
<p>A minor problem with this object is, that <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy50aGluZ2l2ZXJzZS5jb20vUHJpbnRUbzNE" target=\"_blank\">Bradley Rigdon</a>, the creator of this design, owns a couple of Dimension 3D printers. Since these professional printers automatically print with support material, large overhangs and such are no problem for them. And there <em>are</em> some large overhangs in the iPhone 4 tripod design&#8230;</p>
<p>It&#8217;s no secret, that the standard MakerBot Cupcake doesn&#8217;t have a second extruder for printing support material. Nonetheless, some people (including yours truly) recently started experimenting with Skeinforge&#8217;s built-in support stucture feature. It turns out, that these support structures don&#8217;t necessarily need a second extruder with dedicated support material.</p>
<p>Keen to experiment, I turned on the support feature in Skeinforge and sliced the downloaded STL (BTW, which needed resizing by factor 25.4, since the original STL was exported in inches).</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMzNjcxNDI5NjE3MjM3MA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TMNBb3SzH1I/AAAAAAAAAcs/VfDjdEBhSt8/0Degrees.png?imgmax=320" alt="0Degrees.png" width="320" height="252" /></a></p>
<p>In the relatively old version of Skeinforge, I still use for several reasons (v2009-11-06), the support settings are part of the Raft preferences:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTM2NjQ3Njc4Mzc4Mzk3MA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TMNcgRMzkCI/AAAAAAAAAdw/EZtQG12QSLE/Bildschirmfoto%202010-10-23%20um%2021.46.28.png?imgmax=400" alt="Bildschirmfoto 2010-10-23 um 21.46.28.png" width="277" height="400" /></a></p>
<p>I printed the generated gcode in white ABS with my -more or less- standard MakerBot.</p>
<p>Removing the support structures after printing is relatively easy as long as you choose &#8220;Support on Exterior only&#8221; in the above settings.</p>
<p>Besides the relative coarse bottom side (which was likely more a problem with some Skeinforge settings unrelated to the support structure), the main problem with the printed object was the tiny wall on one side. You&#8217;ll know which wall I mean and what&#8217;s the problem when you compare the following picture with the object&#8217;s STL-screenshot above:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMzNzM0NDU5MDk0MzE3MA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TMNCAjUyE8I/AAAAAAAAAc0/Yl345N0iZqA/IMG_1040.JPG?imgmax=400" alt="IMG_1040.JPG" width="400" height="299" /></a></p>
<p>One thing I learned in the last year, printing 3D objects with my MakerBot: avoid printing single, tall, thin walls in upright position, unless you want to break them away later (intensionally or unintensionally&#8230;).</p>
<p>The missing wall on the above object broke away when I tried to attach the object to my iPhone for the first time.</p>
<p>The easiest solution for such a problem is usually to print the object &#8220;on its side&#8221;, i.e. rotate the whole thing by 90°:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTM0MDU4MzY0MzMyNjgzNA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TMNE9FvDKXI/AAAAAAAAAdA/ZNgZOmGb3vU/Bildschirmfoto%202010-10-23%20um%2022.23.31.png?imgmax=400" alt="Bildschirmfoto 2010-10-23 um 22.23.31.png" width="400" height="312" /></a></p>
<p>But in this case you&#8217;d run right into the next problem: Now you&#8217;d need to manage the 90° overhang (marked with the red circle). In order to use Skeinforge&#8217;s support structures for that, you&#8217;d need to switch the &#8220;Support Material Choice&#8221; setting to &#8220;Support Everywhere&#8221; (instead of &#8220;Support on Exterior only&#8221;). But removing those &#8220;inside&#8221; supports after printing isn&#8217;t easy and the support structures would likely degrade the surface of the rail on the upper side of the object, critical for the fit of the iPhone.</p>
<p>My solution for the dilemma was to print the object only slightly rotated:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMzNjcwNDMxOTg1NDY3NA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/TMNBbSIQmFI/AAAAAAAAAck/NGSoIuDp99Y/-30Degrees.png?imgmax=400" alt="-30Degrees.png" width="400" height="315" /></a></p>
<p>I started with 30° rotation from the upright orientation. Since I used support structures anyway, the weird angle shouldn&#8217;t be a problem to print. By choosing a rotation angle smaller than 45° the resulting additional overhangs of the former vertical walls shouldn&#8217;t need additional support (Skeinforge automatically don&#8217;t generate support structures for those overhangs; see &#8220;Support Minimum Angle&#8221; in the above settings).</p>
<p>By rotating the object, the iffy wall is now also sliced in an angle, which greatly improves its stability:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTM0NTk5OTI0MjgzMDE5NA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TMNJ4UaloXI/AAAAAAAAAdI/TXKqkdCrGQQ/Bildschirmfoto%202010-10-23%20um%2022.45.43.png?imgmax=400" alt="Bildschirmfoto 2010-10-23 um 22.45.43.png" width="400" height="353" /></a></p>
<p>The print looked ok on first sight&#8230;</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNTE4NjY4MDY4MzM2Mg=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TMM283lF-2I/AAAAAAAAAbA/gU1rLJ81ZEw/IMG_0981.JPG?imgmax=400" alt="IMG_0981.JPG" width="400" height="299" /></a></p>
<p>&#8230; and the stability of the printed object was indeed greatly improved.</p>
<p>But unfortunately, printing the 30° overhangs didn&#8217;t work very well:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTM0Njg3MzkzNzAzNjg2Ng=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TMNKrO58BkI/AAAAAAAAAdM/LKJ4J8UNX2c/IMG_1041.JPG?imgmax=400" alt="IMG_1041.JPG" width="400" height="292" /></a></p>
<p>I did some additional adjustments in the Skeinforge settings:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTM2NjQ2Njc1NzA5NzI1MA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TMNcfr2QdyI/AAAAAAAAAds/A951irW3b4I/Bildschirmfoto%202010-10-23%20um%2022.55.32.png?imgmax=400" alt="Bildschirmfoto 2010-10-23 um 22.55.32.png" width="363" height="400" /></a></p>
<p>To give the curved lower part more plastic to stick on, I changed the &#8220;Thread Sequence Choice&#8221; (Fill Preferences) from the default value &#8220;Perimeter &gt; Loops &gt; Infill&#8221; to &#8220;Loops &gt; Infill &gt; Perimeter&#8221;.</p>
<p>I also reduced the rotation of the object from 30° down to 15°, which still should be enough to give the front wall sufficient stability:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMzNjY5ODA0Mzg4ODg5OA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TMNBa6v89QI/AAAAAAAAAcg/LZ16tuP62R4/-15Degrees.png?imgmax=400" alt="-15Degrees.png" width="400" height="315" /></a></p>
<p>This time, the print looked good:</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNTMzNDk4NzI5ODQ5OA=="><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TMM3FgEJVsI/AAAAAAAAAbE/Yz8o5KUALgA/IMG_0989.JPG?imgmax=400" alt="IMG_0989.JPG" width="400" height="299" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNTQ2NTg5MDIyMzUyMg=="><img class="pie-img" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/TMM3NHt1daI/AAAAAAAAAbI/mF1LEFa_IBs/IMG_0991.JPG?imgmax=400" alt="IMG_0991.JPG" width="400" height="299" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNTY1NTc2NzkxMTIzNA=="><img class="pie-img" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/TMM3YLENC0I/AAAAAAAAAbQ/lSRN5NVAOCM/IMG_0993.JPG?imgmax=400" alt="IMG_0993.JPG" width="400" height="299" /></a></p>
</div>
</div>
<p>The refined settings seem to do the trick.</p>
<p>Here&#8217;s the printed part after breaking away the support material:</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNTg0NDUwMDY2NDk2Mg=="><img class="pie-img" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TMM3jKJmUoI/AAAAAAAAAbU/0U_thnD6-TM/IMG_0995.JPG?imgmax=400" alt="IMG_0995.JPG" width="400" height="299" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNjA1Mzg1MDI2NDczOA=="><img class="pie-img" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TMM3vWCbtKI/AAAAAAAAAbc/t_TnfeIG6gw/IMG_0997.JPG?imgmax=400" alt="IMG_0997.JPG" width="400" height="299" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNjI2NTQyNTc4NjQwMg=="><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TMM37qN99iI/AAAAAAAAAbg/hNjgZzG4dP8/IMG_0999.JPG?imgmax=400" alt="IMG_0999.JPG" width="400" height="299" /></a></p>
</div>
</div>
<p>And here&#8217;s a comparison of all three different prints (left to right: 15°, 30°, 0°):</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNjUwNzM1OTgwMjgwMg=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TMM4JvfiFbI/AAAAAAAAAbo/8yBbB-oLc30/IMG_1006.JPG?imgmax=400" alt="IMG_1006.JPG" width="299" height="400" /></a></p>
<p>The stability-improved vertical (diagonal) structure  (from left to right: 0°, 30°, 15°):</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTM2NjQ1Nzc5OTQ4MTc0Ng=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TMNcfKemGZI/AAAAAAAAAdo/-QnUE63Ia_g/IMG_1024.JPG?imgmax=400" alt="IMG_1024.JPG" width="400" height="256" /></a></p>
<p>One more lineup (left to right: 0°,  30°, 15°):</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTMyNzI0ODcwNjMzODMyMg=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TMM405OUfhI/AAAAAAAAAb4/WgP5hXFUAJg/IMG_1031.JPG?imgmax=400" alt="IMG_1031.JPG" width="400" height="299" /></a></p>
<p>And now to an interesting question: Does the part work?</p>
<p>See for yourself:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="560" height="340" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/DLevi5H0tlE?fs=1&amp;hl=de_DE" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="560" height="340" src="http://www.youtube.com/v/DLevi5H0tlE?fs=1&amp;hl=de_DE" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Looking good!</p>
<p>After the successful first test, I coated the whole thing with liquid rubber (Plasti Dip):</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvR2V0dGluZ1N1cHBvcnQjNTUzMTM1NjU4MjQwNTU5MDUxNA=="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TMNTgVxNzfI/AAAAAAAAAdc/3S4KTEJly2k/IMG_1047.JPG?imgmax=400" alt="IMG_1047.JPG" width="400" height="302" /></a></p>
<p>The rubber coating isn&#8217;t needed for grip (of the iPhone). But I thought, a little bit color couldn&#8217;t hurt. And also I like the rubbery texture on printed objects :)</p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=708" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=708&amp;md5=a29672185d73dcf6d2ddc1aef91bb364" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2010/10/24/getting-support/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2010%2F10%2F24%2Fgetting-support%2F&amp;language=en_GB&amp;category=text&amp;title=Getting+Support&amp;description=I+need+a+tripod+stand+for+my+iPhone+4.+Fortunately%2C+there%26%238217%3Bs+a+nice+design+for+one+of+these%2C+ready+for+download+on+Thingiverse%3A%C2%A0http%3A%2F%2Fwww.thingiverse.com%2Fthing%3A4335+A+minor+problem+with+this+object+is%2C...&amp;tags=blog" type="text/html" />
	</item>
		<item>
		<title>Keep it simple</title>
		<link>http://pleasantsoftware.com/developer/3d/2010/09/26/keep-it-simple/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2010/09/26/keep-it-simple/#comments</comments>
		<pubDate>Sun, 26 Sep 2010 03:14:58 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Designs]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[MakerBot enhancements]]></category>
		<category><![CDATA[Movie]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=697</guid>
		<description><![CDATA[My Z-Probe prototype used a standard sized servo. Of course, this kind of servo seems a little bit oversized for this use. Thus, I looked around for smaller alternatives. I found some nice micro servos on ebay: These servos not &#8230; <a href="http://pleasantsoftware.com/developer/3d/2010/09/26/keep-it-simple/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My Z-Probe prototype used a standard sized servo. Of course, this kind of servo seems a little bit oversized for this use. Thus, I looked around for smaller alternatives.</p>
<p>I found some nice micro servos on ebay:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvTWluaW1hbGlzdGljWlByb2JlIzU1MjEwNDA5Mjg3MjQ2ODkzNzg="><img class="pie-img" style="margin: 10px 10px 10px 10px;" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/TJ6teRMHIeI/AAAAAAAAAa0/Kkgq-tIFbvE/IMG_0892.JPG?imgmax=400" alt="IMG_0892.JPG" width="299" height="400" /></a></p>
<p>These servos not only are tiny, they are also cheap. I bought 3 of them for 4 Euros a piece.</p>
<p>I started to redesign the printed parts of the z-probe prototype. But compared to these micro servos, the mechanical construction was huge. Too huge!</p>
<p>After thinking about this for a while, I found a solution: Keep it simple!</p>
<p>Here&#8217;s what I came up with:</p>
<div class="pie-gallery alignGalleryLeft">
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvTWluaW1hbGlzdGljWlByb2JlIzU1MjEwNDA2MTcwODc1MDc5MjI="><img class="pie-img" src="http://lh4.ggpht.com/_Lt-JqmGHX0E/TJ6tMIQBHdI/AAAAAAAAAak/QjV-qWm9gcA/IMG_0887.JPG?imgmax=400" alt="IMG_0887.JPG" width="400" height="299" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvTWluaW1hbGlzdGljWlByb2JlIzU1MjEwNDA3MjM3MjA0MzQxNzg="><img class="pie-img" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TJ6tSVfScgI/AAAAAAAAAao/ek9gCOjL1bk/IMG_0888.JPG?imgmax=400" alt="IMG_0888.JPG" width="400" height="299" /></a></p>
</div>
<div class="pie-item" style="margin: 10px 10px 10px 10px;">
<p class="pie-img-wrapper"><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BpY2FzYXdlYi5nb29nbGUuY29tL1phZ2dvUFMvTWluaW1hbGlzdGljWlByb2JlIzU1MjEwNDA4MzQ4MjM1MDE0NTg="><img class="pie-img" src="http://lh6.ggpht.com/_Lt-JqmGHX0E/TJ6tYzYUtpI/AAAAAAAAAas/OqeriQFkjRQ/IMG_0891.JPG?imgmax=400" alt="IMG_0891.JPG" width="400" height="299" /></a></p>
</div>
</div>
<p>It&#8217;s basically just the servo with an opto endstop pcb glued to it&#8230;</p>
<p>Its smaller, it&#8217;s simpler, it&#8217;s adjustable and it works great.</p>
<p>Here&#8217;s a how to build the probe:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="560" height="340" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/mcVIJf90OtM?fs=1&amp;hl=de_DE&amp;rel=0" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="560" height="340" src="http://www.youtube.com/v/mcVIJf90OtM?fs=1&amp;hl=de_DE&amp;rel=0" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>I also simplified the z-probe firmware, based on the latest G3Firmware. Since the firmware now natively supports servos (for the Unicorn pen plotter), I was able to reduce the code patches to just a few lines for the z-probe commands.</p>
<p>Unfortunately I wasn&#8217;t able to update my forked firmware repository on GITHub. I&#8217;m (still) really uncomfortable with using git! Each time, it&#8217;s a pain in the ass to merge new revisions from the remote repository with my forked repositories (locally and/or on GITHub). I&#8217;m pretty sure, that this is supposed to be easy, but there always are problems, errors or conflicts. And I&#8217;m still looking for a good tutorial for these hacker tasks&#8230;</p>
<p>Anyway, until I&#8217;m in the mood to check out git again, here are the few code changes necessary to support the z-probe in the newest firmware revision:</p>
<pre><em>v2/src/shared/Commands.hh:</em>
105 105 #define SLAVE_CMD_GET_SP			32
106 106 #define SLAVE_CMD_GET_PLATFORM_SP		33
107 107
<span style="color: #339966;">    108+#define SLAVE_CMD_ENGAGE_Z_PROBE		128
    109+
</span>108 110 #endif // SHARED_COMMANDS_H_</pre>
<pre><em>v2/src/Extruder/Host.hh:</em>
18 18 #ifndef HOST_HH_
19 19 #define HOST_HH_
20 20
<span style="color: #339966;">   21+// ZProbe settings
   22+// 750ms
   23+#define ZPROBE_TIMEOUTINTERVAL ((micros_t)750000L)
   24+
   25+// Angles in Degree
   26+#define Z_PROBE_ENGAGE_ANGLE  0
   27+#define Z_PROBE_DISENGAGE_ANGLE 50
   28+</span>
21 29 void runHostSlice();</pre>
<pre><em>v2/src/Extruder/Host.cc:</em>
149 149 			to_host.append8(RC_OK);
150 150 			return true;
<span style="color: #339966;">    151+		case SLAVE_CMD_ENGAGE_Z_PROBE:
    152+			{
    153+				uint8_t angle = ((bool)from_host.read8(2))?Z_PROBE_ENGAGE_ANGLE:Z_PROBE_DISENGAGE_ANGLE;
    154+				board.setServo(1,angle);
    155+				micros_t endDelay = board.getCurrentMicros()+ZPROBE_TIMEOUTINTERVAL;
    156+				while(board.getCurrentMicros()&lt;endDelay); // Wait for Servo
    157+				board.setServo(1,-1); // Switch Servo off
    158+			}
    159+			to_host.append8(RC_OK);
    160+			return true;
</span>151 161 		case SLAVE_CMD_GET_SP:
152 162 			to_host.append8(RC_OK);
153 163 			to_host.append16(board.getExtruderHeater().get_set_temperature());</pre>
<p>The ReplicatorG patch can be also simplified (no more EEPROM preferences for the Z-Probe). But I didn&#8217;t find time for this yet. For the time beeing, you can simply use the patched version from <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2dpdGh1Yi5jb20vemFnZ28vUmVwbGljYXRvckcvdHJlZS9aUHJvYmU=" target=\"_blank\">here</a>.</p>
<p>Well, I still have 2 servos left&#8230;</p>
<p>I wonder what I can do with one of these and a slightly modified version of <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy50aGluZ2l2ZXJzZS5jb20vdGhpbmc6MTQzNA==" target=\"_blank\">this thing</a>, directly glued to the servo arm. I&#8217;m pretty sure it&#8217;ll work just as fine as <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy50aGluZ2l2ZXJzZS5jb20vdGhpbmc6NDE4NQ==">that thing</a>, only with 16 parts less&#8230;</p>
<p>Keep it simple!</p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=697" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=697&amp;md5=59933cd23907e463ade9067182a6629b" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2010/09/26/keep-it-simple/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2010%2F09%2F26%2Fkeep-it-simple%2F&amp;language=en_GB&amp;category=text&amp;title=Keep+it+simple&amp;description=My+Z-Probe+prototype+used+a+standard+sized+servo.+Of+course%2C+this+kind+of+servo+seems+a+little+bit+oversized+for+this+use.+Thus%2C+I+looked+around+for+smaller+alternatives.+I...&amp;tags=blog" type="text/html" />
	</item>
		<item>
		<title>One more thing on Pleasant3D</title>
		<link>http://pleasantsoftware.com/developer/3d/2010/05/20/one-more-thing-on-pleasant3d/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2010/05/20/one-more-thing-on-pleasant3d/#comments</comments>
		<pubDate>Thu, 20 May 2010 13:39:26 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Movie]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=535</guid>
		<description><![CDATA[I&#8217;m still struggling with some code in Pleasant3D, which I&#8217;d like to get in order before releasing the open source parts. I hope I find some time for this during my upcoming vacation. I&#8217;ll be in Corsica for 2 weeks &#8230; <a href="http://pleasantsoftware.com/developer/3d/2010/05/20/one-more-thing-on-pleasant3d/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m still struggling with some code in Pleasant3D, which I&#8217;d like to get in order before releasing the open source parts. I hope I find some time for this during my upcoming vacation. I&#8217;ll be in Corsica for 2 weeks and although I plan to get some rest from computers, I guess I&#8217;ll find some time to relax from all the sun and beach by searching bugs in Pleasant3D :)</p>
<p>Anyway, here&#8217;s a short movie of a new feature I implemented some weeks ago:</p>
<p><object width="640" height="480"><param name="movie" value="http://www.youtube.com/v/N_UBS87vVeA&#038;hl=de_DE&#038;fs=1&#038;hd=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/N_UBS87vVeA&#038;hl=de_DE&#038;fs=1&#038;hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="480"></embed></object></p>
<p>Although there seem to be some issues with more complex DAE files, the import of &#8220;printable&#8221; objects usually works very reliable.</p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=535" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=535&amp;md5=4b16c5b1679fb7af300d84e3eb949214" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2010/05/20/one-more-thing-on-pleasant3d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2010%2F05%2F20%2Fone-more-thing-on-pleasant3d%2F&amp;language=en_GB&amp;category=text&amp;title=One+more+thing+on+Pleasant3D&amp;description=I%26%238217%3Bm+still+struggling+with+some+code+in+Pleasant3D%2C+which+I%26%238217%3Bd+like+to+get+in+order+before+releasing+the+open+source+parts.+I+hope+I+find+some+time+for+this+during...&amp;tags=blog" type="text/html" />
	</item>
		<item>
		<title>Pleasant Future</title>
		<link>http://pleasantsoftware.com/developer/3d/2010/03/01/pleasant-future/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2010/03/01/pleasant-future/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 00:44:55 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Experimental]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=324</guid>
		<description><![CDATA[As mentioned earlier, Pleasant3D is a spin-off from another, larger project. Today, I release Pleasant3D v2.0 to the public and when reading the list of changes, most people might ask why there&#8217;s such a big step in the version number: What&#8217;s &#8230; <a href="http://pleasantsoftware.com/developer/3d/2010/03/01/pleasant-future/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-331" title="v20" src="http://pleasantsoftware.com/developer/3d/wp-content/uploads/v20.png" alt="" width="200" height="150" /></p>
<div style="margin-top: 3em;">As <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BsZWFzYW50c29mdHdhcmUuY29tL2RldmVsb3Blci8zZC8yMDA5LzEwLzE5L3BsZWFzYW50M2Qv">mentioned</a> <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BsZWFzYW50c29mdHdhcmUuY29tL2RldmVsb3Blci8zZC8yMDEwLzAxLzA5L3BsZWFzYW50M2QtdjEtMS1yZWxlYXNlZC8=">earlier</a>, Pleasant3D is a spin-off from another, larger project.</div>
<p>Today, I release Pleasant3D v2.0 to the public and when reading the list of changes, most people might ask why there&#8217;s such a big step in the version number:</p>
<blockquote style="background-color: #ddd; padding: 4px; border: 1px solid #aaa;"><p>What&#8217;s new in Pleasant3D v2.0:</p>
<ul>
<li>More intuitive (trackball) view rotation</li>
<li>Panning views with right mouse button drags</li>
</ul>
</blockquote>
<p>Well, as you might have guessed already, that&#8217;s not all. The main change is that I finally merged the former other, larger project and Pleasant3D to &#8230; well, Pleasant3D v2.0. So the missing point in the above list is:</p>
<blockquote style="background-color: #ddd; padding: 4px; border: 1px solid #aaa;">
<ul>
<li>Initial release of &#8220;the real Pleasant3D&#8221;</li>
</ul>
</blockquote>
<h3>Foreplay</h3>
<p>Back in June 2009, after I ordered my MakerBot Deluxe Kit, I was in state of anticipation and impatience, most of you other MakerBot operators probably know from own experience: The order&#8217;s finally placed, but it takes 4 to 6 weeks until the kit eventually ships.</p>
<p>I read all reports on building and operating a MakerBot in the internet (there wasn&#8217;t that much blogs on this back then) and of course, I downloaded ReplicatorG and Skeinforge to play around with them.</p>
<p>As a (very) long time and hardcore Mac user and developer, I quickly thought about a nicer, cleaner and faster way to produce GCode and eventually print objects than ReplicatorG and Skeinforge.</p>
<p>Don&#8217;t get me wrong: I think Skeinforge is a really amazing piece of software, it&#8217;s ability to process &#8220;incorrect&#8221; 3D objects and the GCode it creates is just great. I also think that MakerBot Industrie&#8217;s decision to provide cross platform support on the software side with ReplicatorG as printing software and Skeinforge as GCode generator is absolutely great and important (I&#8217;m still struggling with my Mendel because the native Reprap software currently doesn&#8217;t really support Macs).</p>
<p>But I also think, that it would be nice to have an alternative &#8211; not that universal, but maybe better &#8211; way to handle 3D processing for printing stuff.</p>
<p>That&#8217;s why I started to develop Pleasant3D, to play around with something during waiting for the MakerBot Kit to arrive.</p>
<p>My plan was to create a tool to not only provide a native way to preview STL and GCode files, but also to transform STL files to GCode.</p>
<p>I didn’t (and don’t) want to provide another cross platform tool for those tasks, struggling with GUI and performance tradeoffs caused by the need of portable code. I explicitly decided to develop a high performance, native GUI tool for the system I’m working on (which is obviously Mac OS X, sorry Windows and Linux users), using all cutting edge technologies available in the most recent OS (which is Mac OS X 10.6, sorry PPC and Leopard users).</p>
<h3>Failure</h3>
<p>My first approach was, to port Skeinforge&#8217;s open source Python code to native Objective-C code. I started with Skeinforge&#8217;s Carve tool and it was a disaster. Not only it was kind of uncreative and boring to port existing code to another programming language, but the resulting code was also even slower than the original code.</p>
<p>The reason for that is, that each programming language has it&#8217;s pros and cons. One of Python&#8217;s pros is, that it&#8217;s very fast in creating objects. Unfortunately, creating objects in Objective-C (like C++ also based on C) isn&#8217;t its fastest feature. So by porting the Carve code 1:1 to Objective-C, the code still used the original algorithms, based on the creation of zillions of objects during carving a 3D object. Not a good idea in ObjC.</p>
<p>The Carve tool is the first step in processing a 3D object for 3D printing. It slices the object horizontally. For comparison I used a nice object from Thingiverse: <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy50aGluZ2l2ZXJzZS5jb20vdGhpbmc6MTE1MQ==" target=\"_blank\">Eggcup With Salt &amp; Shell Trays</a></p>
<p>Carving this STL file (containing 5486 triangles) takes about 9 seconds in Skeinforge (0.4mm layer thickness, 2.8GHz Intel Core 2 Duo MacBook Pro):</p>
[See post to watch QuickTime movie]
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BsZWFzYW50c29mdHdhcmUuY29tL2RldmVsb3Blci8zZC93cC1jb250ZW50L3VwbG9hZHMvQmlsZHNjaGlybWZvdG8tMjAxMC0wMi0yOC11bS0yMS4xOS4wNy5wbmc="><img class="alignleft size-full wp-image-343" title="Skeinforge Carve" src="http://pleasantsoftware.com/developer/3d/wp-content/uploads/Bildschirmfoto-2010-02-28-um-21.19.07.png" alt="" width="645" height="47" /></a></p>
<p><span style="font-size: x-large;"><span><strong><span style="font-size: small;"><span style="font-weight: normal;"><br />
</span></span></strong></span></span></p>
<p>When carving the same file with my first version of the ported Carve tool, it took more than 12 seconds with the native code!</p>
<p>So I started to optimize the ported code, implemented caching collection classes, reusing memory and objects whenever possible and so on.</p>
<p>I finally got a version of the native Carve tool, running faster than the Python script:</p>
[See post to watch QuickTime movie]
<p>Speeding up the carving process by factor 2.3 doesn&#8217;t sound too bad, but I couldn&#8217;t believe that this would be the best possible result. Especially since the porting process was really boring!</p>
<p>So I threw away the whole thing and started from scratch again. This time by creating my own, new algorithms and pulling all the stops Snow Leopard provides: GCD &amp; OpenCL.</p>
<h3>Success</h3>
<p>I called the new tool &#8220;Slice&#8221;. Changing to a new algorithm and OpenCL really paid off. But see for yourself:</p>
[See post to watch QuickTime movie]
<p>That&#8217;s more like it: 39ms, 230x the speed of Skeinforge&#8230;</p>
<h3>Present and future</h3>
<p>Please don&#8217;t throw away Skeinforge yet! Pleasant3D is at a very, very early stage. It&#8217;s fragile. It needs clean STL files with normals. And there&#8217;s not a complete set of tools yet. The whole thing still needs a lot work.</p>
<p>Pleasant3D v2.0 is still the same tool we love and know for viewing STL and GCode files (including moving/rotating/resizing STL objects). It also contains the same QuickLook plugins for STL and GCode. All these features are more or less stable.</p>
<p>In addition to that, there&#8217;s a new kind of document: The P3D document</p>
<p><img class="pie-img" src="http://lh3.ggpht.com/_Lt-JqmGHX0E/S4rf6nKSghI/AAAAAAAAAMQ/JLewoEp69lQ/Pleasant3D.png?imgmax=640" alt="Pleasant3D.png" width="640" /></p>
<p>You create a tool chain by dragging &amp; dropping available tools from the toolbox panel to the tool bin. Each tool gets its input from the previous tool&#8217;s output. If you change settings in a tool at the begin of the tool chain, the results of these changes automatically &#8220;ripple&#8221; through the whole tool chain. With the current speed of the few available tools, this happens almost instantly.</p>
<p>Here&#8217;s a teaser video of the whole thing:<br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="720" height="450" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/ziqxKS7gIoc&amp;hl=de_DE&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="720" height="450" src="http://www.youtube.com/v/ziqxKS7gIoc&amp;hl=de_DE&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<h3>The deal</h3>
<p>The Slice&amp;Dice part of Pleasant3D isn&#8217;t ready for prime time yet! It&#8217;s work in progress.</p>
<p>I decided to publish it anyway, since I&#8217;d appreciate any help with the tools and printer drivers.</p>
<p>So here&#8217;s the deal:</p>
<p>Pleasant3D is a free download (as usual). The GUI part of the project is still kind of semi-closed source (more on this some other time).</p>
<p>However, all tools are implemented as plugins. So are the printer drivers. And they will be will be open source. I&#8217;m currently working on a way to publish the sources. Very likely they&#8217;ll be available through public access to a Mercurial repository.</p>
<p>You can start developing tools right away. All you need is a copy of Pleasant3D v2.0 (or later), a working installation of Xcode v3.2.1 (or later) and the following shell script:</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2Rvd25sb2FkLnBsZWFzYW50c29mdHdhcmUuY29tL3BsZWFzYW50M2QvSW5zdGFsbERldlN1cHBvcnQuemlw">InstallDevSupport.zip</a></p>
<p>Copy Pleasant3D to your /Applications folder (no subfolders!). Then run the InstallDevSupport script:</p>
<ul>
<li>Open a Terminal window</li>
<li>Go to the folder containing the InstallDevSupport script (<span style="font-family: Courier;">cd &lt;path to InstallDevSupport.sh&gt;</span>)</li>
<li>Run the script (<span style="font-family: Courier;">sh InstallDevSupport.sh</span>)</li>
<li>Enter your admin password</li>
</ul>
<p>Re-launch Xcode after that. When you now create a new project in Xcode, there should be a Pleasant3D project template available. Use this template to create a new Pleasant3D tool project. Please read the ReadMe.txt file inside the new project folder for important additional information.</p>
<p>In addition to the sources of the current tools, I&#8217;ll try to provide some additional sample code as soon as possible.</p>
<p>You can download Pleasant3D v2.0 from the <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5wbGVhc2FudHNvZnR3YXJlLmNvbS9kZXZlbG9wZXIvcGxlYXNhbnQzZC9pbmRleC5zaHRtbA==">Pleasant3D download page</a>.</p>
<p>That&#8217;s it for now. Stay tuned for more shortly.</p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=324" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=324&amp;md5=685c1e26bc0720748a525d5cd8109dc1" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2010/03/01/pleasant-future/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2010%2F03%2F01%2Fpleasant-future%2F&amp;language=en_GB&amp;category=text&amp;title=Pleasant+Future&amp;description=As+mentioned+earlier%2C+Pleasant3D+is+a+spin-off+from+another%2C+larger+project.+Today%2C+I+release+Pleasant3D+v2.0+to+the+public+and+when+reading+the+list+of+changes%2C+most+people+might+ask...&amp;tags=blog" type="text/html" />
	</item>
		<item>
		<title>Pleasant3D, again&#8230;</title>
		<link>http://pleasantsoftware.com/developer/3d/2010/01/11/pleasant3d-again/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2010/01/11/pleasant3d-again/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 03:25:01 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=295</guid>
		<description><![CDATA[Ok, this is earlier than expected: Pleasant3D v1.2 is out. The quick update was necessary due to a nasty bug in v1.1 which caused wrong positioning of STL objects in some cases. This issue is fixed in v1.2. I also &#8230; <a href="http://pleasantsoftware.com/developer/3d/2010/01/11/pleasant3d-again/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Ok, this is earlier than expected: Pleasant3D v1.2 is out.</p>
<p>The quick update was necessary due to a nasty bug in v1.1 which caused wrong positioning of STL objects in some cases. This issue is fixed in v1.2. I also smoothed out some remaining problems with the 64-bit build. So if your computer supports 64-bit applications, Pleasant3D v1.2 will be one of them&#8230;</p>
<p>Finally I added automatic update checking (thanks to the Sparkle framework). From now on, when I  screw up a version (as I did with v1.1), you won&#8217;t need to manually download a new versions a few days later. The automatic update window will pop up and offer an easy one-click update. :)</p>
<p>However, if you&#8217;re still on v1.0 or v1.1, you definitely want <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5wbGVhc2FudHNvZnR3YXJlLmNvbS9kZXZlbG9wZXIvcGxlYXNhbnQzZC8=">download Pleasant3D v1.2 </a><strong><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5wbGVhc2FudHNvZnR3YXJlLmNvbS9kZXZlbG9wZXIvcGxlYXNhbnQzZC8=">manually</a></strong>.</p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=295" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=295&amp;md5=1d37146b17f070bb8f3f8a5fa17ba2a8" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2010/01/11/pleasant3d-again/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2010%2F01%2F11%2Fpleasant3d-again%2F&amp;language=en_GB&amp;category=text&amp;title=Pleasant3D%2C+again%26%238230%3B&amp;description=Ok%2C+this+is+earlier+than+expected%3A+Pleasant3D+v1.2+is+out.+The+quick+update+was+necessary+due+to+a+nasty+bug+in+v1.1+which+caused+wrong+positioning+of+STL+objects+in...&amp;tags=blog" type="text/html" />
	</item>
		<item>
		<title>Pleasant3D v1.1 released</title>
		<link>http://pleasantsoftware.com/developer/3d/2010/01/09/pleasant3d-v1-1-released/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2010/01/09/pleasant3d-v1-1-released/#comments</comments>
		<pubDate>Sat, 09 Jan 2010 01:36:47 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Movie]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=290</guid>
		<description><![CDATA[I&#8217;m happy to announce the release of Pleasant3D v1.1. There are some awesome new features in the new version: Pleasant3D now includes QuickLook plugins for STL and GCode files! The preview views are now zoomable. Objects can now be rotated &#8230; <a href="http://pleasantsoftware.com/developer/3d/2010/01/09/pleasant3d-v1-1-released/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img class="pie-img" src="http://lh5.ggpht.com/_Lt-JqmGHX0E/S0fRJDW9N1I/AAAAAAAAAH8/8uHtcxdRhl0/Pleasant3DQL.png?imgmax=288" alt="Pleasant3DQL.png" width="262" height="288" /><img style="margin: 10px 10px 10px 10px;" alt="" /></p>
<p>I&#8217;m happy to announce the release of Pleasant3D v1.1.</p>
<p>There are some awesome new features in the new version:</p>
<ul>
<li>Pleasant3D now includes QuickLook plugins for STL and GCode files!</li>
<li>The preview views are now zoomable.</li>
<li>Objects can now be rotated by arbitrary angles.</li>
<li>&#8230; and many more.</li>
</ul>
<p>Check out <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5wbGVhc2FudHNvZnR3YXJlLmNvbS9kZXZlbG9wZXIvcGxlYXNhbnQzZA==">Pleasant3D&#8217;s brand new home page</a> for a full feature list.</p>
<p>I recorded a short movie, showing off the new features of Pleasant3D v1.1:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="560" height="340" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/g0ZQprHeCX0&amp;hl=de_DE&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="560" height="340" src="http://www.youtube.com/v/g0ZQprHeCX0&amp;hl=de_DE&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Thanks&#8217;s to all of you, sending me feedback!</p>
<p>Pleasant3D v1.1 is available for free download here: <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5wbGVhc2FudHNvZnR3YXJlLmNvbS9kZXZlbG9wZXIvcGxlYXNhbnQzZA==">http://www.pleasantsoftware.com/developer/pleasant3d</a></p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=290" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=290&amp;md5=6b21c48b95147c57e9b0ed8d018d6217" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2010/01/09/pleasant3d-v1-1-released/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2010%2F01%2F09%2Fpleasant3d-v1-1-released%2F&amp;language=en_GB&amp;category=text&amp;title=Pleasant3D+v1.1+released&amp;description=I%26%238217%3Bm+happy+to+announce+the+release+of+Pleasant3D+v1.1.+There+are+some+awesome+new+features+in+the+new+version%3A+Pleasant3D+now+includes+QuickLook+plugins+for+STL+and+GCode+files%21+The...&amp;tags=blog" type="text/html" />
	</item>
		<item>
		<title>Raftless</title>
		<link>http://pleasantsoftware.com/developer/3d/2009/12/05/raftless/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2009/12/05/raftless/#comments</comments>
		<pubDate>Sat, 05 Dec 2009 04:21:47 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Experimental]]></category>
		<category><![CDATA[Movie]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=109</guid>
		<description><![CDATA[As reported previously, printing on a heated build surface not only permits (almost) warp-free printing, but also eliminates the need for rafts for simple shaped objects (simple as in rectangular footprint). As soon as the base shape of an object &#8230; <a href="http://pleasantsoftware.com/developer/3d/2009/12/05/raftless/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a title=\"layer 1\" href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5mbGlja3IuY29tL3Bob3Rvcy8zNzcwNjg4MEBOMDgvNDE1ODY4NTg0OS8="><img class="alignleft" style="margin-right: 5px;" src="http://farm3.static.flickr.com/2655/4158685849_b7758a5fb8.jpg" alt="layer 1" width="300" height="297" /></a> As <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BsZWFzYW50c29mdHdhcmUuY29tL2RldmVsb3Blci8zZC8yMDA5LzExLzE1L2xpdmluZy1pbi10aW1lcy1vZi13YXJwLWZyZWUtcHJpbnRpbmcv">reported previously</a>, printing on a heated build surface not only permits (almost) warp-free printing, but also eliminates the need for rafts for simple shaped objects (<em>simple</em> as in <em>rectangular footprint</em>).</p>
<p>As soon as the base shape of an object becomes more complex, things go likely wrong: Most of the time, the more complex perimeter lines don&#8217;t stick and ripped off the build surface by the passing nozzle.</p>
<p>To solve this problem, I played around with several parameters of the gcode files, like feed rate and flow rate.</p>
<p>It turns out that, if extruded &#8220;slow enough&#8221;, also complex shapes are easily printable without a raft.</p>
<p><a style=\"text-decoration: none;\" title=\"IMG_4709\" href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5mbGlja3IuY29tL3Bob3Rvcy8zNzcwNjg4MEBOMDgvNDE1ODY3OTYwNS8="><img class="alignright" style="margin-left: 5px;" src="http://farm3.static.flickr.com/2653/4158679605_e69b2baa35.jpg" alt="IMG_4709" width="299" height="300" /></a> After testing this for a while by post-processing gcode files manually (i.e. editing the gcode files in a text editor), I started to write a new tool for the skeinforge tool chain.</p>
<p>By integrating a &#8216;Raftless&#8217; tool into skeinforge, I not only save a lot of time (it&#8217;s rather time consuming to edit gcode files each time before printing), but I&#8217;ve also much more (and easy!) control over <em>what</em> to slow down. Although it&#8217;s possible to change each single line of gcode in a text editor, it&#8217;s quite a challenge to navigate through thousands of &#8216;G1 X Y Z F&#8217; lines without getting lost or insane.</p>
<p>Anyway, I just finished a new tool for the skeinforge tool chain:</p>
<h2>&#8220;Raftless&#8221;</h2>
<p>Raftless is a script to prepare a gcode file for raftless printing.</p>
<p><a title=\"Raftless settings\" href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5mbGlja3IuY29tL3Bob3Rvcy8zNzcwNjg4MEBOMDgvNDE1ODc0MjQ4OS8="><img src="http://farm3.static.flickr.com/2718/4158742489_85034d118c.jpg" alt="Raftless settings" /></a></p>
<p>The default &#8216;Activate Raftless&#8217; checkbox is off, since the mutual exclusive &#8216;Raft&#8217; script is activated by default. In order to use the Raftless script, you want to desactivate the Raft script first. If both scripts, Raft and Raftless, are activated, the Raftless script (which runs after the Raft script) automatically detects the already created raft. In this case, the Raftless script is skipped and a warning message is printed to the console.</p>
<p>The &#8220;1st Perimeter Feed Rate over Feed Rate&#8221; preference defines the feed rate during the extrusion of the 1st layer&#8217;s perimeter lines. The preference is a ratio of the normal extrusion feed rate as configured in the &#8216;Speed&#8217; script. The default value is .5, which means half the normal feed rate.</p>
<p>The &#8220;1st Perimeter Flow Rate over Flow Rate&#8221; preference is the ratio of the filament feedrate during the extrusion of the 1st layer&#8217;s perimeter lines. Since the feed rate is slower than normal, you might want to reduce also the flow rate in this case. This preference is a ratio of the normal flow rate (as configured in the &#8216;Speed&#8217; script). The default is 1. (same flow rate as normal).</p>
<p>If &#8220;Add Extrusion Intro&#8221; is on, an additional straight extrusion line is added to the start of the first perimeter. This line starts at the coordinates &#8216;Extrusion Intro Max X Absolute&#8217;/'Extrusion Intro Max Y Absolute&#8217;. These both values are absolute (positive) values. The script automatically negates one or both of these values, according to the location of the first regular extrusion.</p>
<p>Please note, that Add Extrusion Intro doesn&#8217;t check for collisions with the perimeter lines. If necessary, you want to change the max X/Y values manually.</p>
<p>Here&#8217;s a video of printing an object without a raft (yes, the gcode file was created with the Raftless tool&#8230;):</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="560" height="340" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/t396jaNVxNQ&amp;hl=de_DE&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="560" height="340" src="http://www.youtube.com/v/t396jaNVxNQ&amp;hl=de_DE&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>If you&#8217;re interested in raft-less printing, you should definitely give the &#8216;Raftless&#8217; tool a try.</p>
<p><a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2Rvd25sb2FkLnBsZWFzYW50c29mdHdhcmUuY29tL3BsZWFzYW50M2QvcmFmdGxlc3Muemlw">Download the Raftless Python source</a></p>
<p>I wrote the Raftless script based on the most recent version of skeinforge (&#8220;created at 2009-11-06&#8243;) as included in the not-released-yet newest Replicator G version. In the meantime, you can download this version of skeinforge from the <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2dpdGh1Yi5jb20vbWFrZXJib3QvUmVwbGljYXRvckcv">public Makerbot GITHub repository</a>. Please note, that all unreleased software in this repository is per definition &#8221;beta&#8221;. So: no guarantees.</p>
<p>In order to install the Raftless script within the skeinforge tool chain, copy raftless.py in the skeinforge_tool/craft_plugins folder. Then edit  skeinforge_tool/profile_plugins/extrusion.py and add the Raftless script to the tool chain sequence by inserting &#8216;raftless&#8217; into the tool sequence  in getCraftSequence(). The best place is at the end of the sequence, right before &#8216;export&#8217;.</p>
<p>Any feedback is highly appreciated!</p>
<p><a title=\"IMG_4706\" href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3d3dy5mbGlja3IuY29tL3Bob3Rvcy8zNzcwNjg4MEBOMDgvNDE1ODY3OTMxMy8="><img src="http://farm3.static.flickr.com/2735/4158679313_4d6eaf50cd.jpg" alt="IMG_4706" /></a></p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=109" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=109&amp;md5=32355c211bbdab151dadb2c6e8bb3774" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2009/12/05/raftless/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2009%2F12%2F05%2Fraftless%2F&amp;language=en_GB&amp;category=text&amp;title=Raftless&amp;description=As+reported+previously%2C+printing+on+a+heated+build+surface+not+only+permits+%28almost%29+warp-free+printing%2C+but+also+eliminates+the+need+for+rafts+for+simple+shaped+objects+%28simple+as+in+rectangular...&amp;tags=blog" type="text/html" />
	</item>
		<item>
		<title>More LCD testing</title>
		<link>http://pleasantsoftware.com/developer/3d/2009/11/27/more-lcd-testing/</link>
		<comments>http://pleasantsoftware.com/developer/3d/2009/11/27/more-lcd-testing/#comments</comments>
		<pubDate>Fri, 27 Nov 2009 12:41:15 +0000</pubDate>
		<dc:creator>Zaggo</dc:creator>
				<category><![CDATA[Experimental]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[MakerBot enhancements]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://pleasantsoftware.com/developer/3d/?p=101</guid>
		<description><![CDATA[I did some real world testing (i.e. print some objects with the modified firmware) with the I2C-LC-Display setup on my MakerBot. Here&#8217;s another short movie of the display in action: I cleaned up my modifications in the extruder controller firmware and &#8230; <a href="http://pleasantsoftware.com/developer/3d/2009/11/27/more-lcd-testing/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I did some real world testing (i.e. print some objects with the modified firmware) with the <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3BsZWFzYW50c29mdHdhcmUuY29tL2RldmVsb3Blci8zZC8yMDA5LzExLzI3L2xjZC1vbi1hLW1ha2VyYm90Lw==">I2C-LC-Display setup</a> on my MakerBot.</p>
<p>Here&#8217;s another short movie of the display in action:<br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/fET7ZAl4Tdw&amp;hl=de_DE&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/fET7ZAl4Tdw&amp;hl=de_DE&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object><br />
I cleaned up my modifications in the extruder controller firmware and pushed my changes to a branch on the <a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2dpdGh1Yi5jb20vbWFrZXJib3QvRzNGaXJtd2FyZQ==">makerbot/G3Firmware github repository</a>. You find the modifications in the &#8220;<a href="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2dpdGh1Yi5jb20vbWFrZXJib3QvRzNGaXJtd2FyZS9jb21taXRzL3phZ2dvTENE">zaggoLCD</a>&#8221; branch.</p>
<p>Next up: Trying an alternative solution with the LCD connected to the motherboard&#8217;s I2C bus&#8230;</p>
 <img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=101" width="1" height="1" style="display: none;" /> <p><a href="http://pleasantsoftware.com/developer/3d/?flattrss_redirect&amp;id=101&amp;md5=e09c78a1e81187689be03e6e65ddf6bf" title="Flattr" target="_blank"><img src="http://pleasantsoftware.com/developer/3d/wp-content/plugins/flattrss/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://pleasantsoftware.com/developer/3d/2009/11/27/more-lcd-testing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" href="https://flattr.com/submit/auto?user_id=20324&amp;popout=1&amp;url=http%3A%2F%2Fpleasantsoftware.com%2Fdeveloper%2F3d%2F2009%2F11%2F27%2Fmore-lcd-testing%2F&amp;language=en_GB&amp;category=text&amp;title=More+LCD+testing&amp;description=I+did+some+real+world+testing+%28i.e.+print+some+objects+with+the+modified+firmware%29%C2%A0with+the+I2C-LC-Display+setup+on+my+MakerBot.+Here%26%238217%3Bs+another+short+movie+of+the+display+in+action%3A+I...&amp;tags=blog" type="text/html" />
	</item>
	</channel>
</rss>

