<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wikidot="http://www.wikidot.com/rss-namespace">

	<channel>
		<title>Contraptor - new forum threads</title>
		<link>http://www.contraptor.org/forum/start</link>
		<description>Threads in forums of the site &quot;Contraptor&quot; - open source DIY rapid hardware prototyping</description>
				<copyright></copyright>
		<lastBuildDate>Mon, 06 Feb 2012 04:09:47 +0000</lastBuildDate>
		
					<item>
				<guid>http://www.contraptor.org/forum/t-399704</guid>
				<title>Deadlock found...</title>
				<link>http://www.contraptor.org/forum/t-399704/deadlock-found</link>
				<description>Deadlock found in firmware</description>
				<pubDate>Mon, 10 Oct 2011 22:15:12 +0000</pubDate>
				<wikidot:authorName>japieb</wikidot:authorName>				<wikidot:authorUserId>1215344</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I've been adapting the firmware to make it usefull for a CNC foam cutter I am going to build.</p> <p>In doing so I found a deadlock situation that also exists in the original firmware:</p> <p>the fragment below can (and did!) result in a deadlock when the G0 command finishes while the G90 command is being handled<br /> G91<br /> G00 X1.0<br /> G90</p> <p>Situation</p> <p>The G00 step is running<br /> The G90 command is received<br /> This line locks the move_queue (process_string.pde)<br /> // Lock move queue while adding new move<br /> 172 move_queue_lock_main = true;<br /> The G0 step finishes<br /> 470 // If finished, start next move<br /> 471 if ( move_finished ) {<br /> 472<br /> 473 // Make sure queue not being modified by<br /> 474 // main routine and then advance<br /> 475 if (!move_queue_lock_main) advance_move_queue();<br /> 476<br /> 477 // If the queue is locked by the main routine, we can't hang about<br /> 478 // and wait for it as this would freeze up the whole system,<br /> 479 // so we just wait until the next time the interrupt routine<br /> 480 // is called and try again<br /> 481 }<br /> The G90 command waits until the move is done (process_string.pde)<br /> 303 while (moving) {} // Do not try and do this while moving</p> <p>Now the move_queue is locked, and moving is still true =&gt; deadlock</p> <p>I fixed this situation by adding a 'move_queue_main_lock=false;' line before all 'while (moving) {}' lines</p> <p>Jaap.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-388209</guid>
				<title>GRemote - mini host for Arduino GCode Interpreter</title>
				<link>http://www.contraptor.org/forum/t-388209/gremote-mini-host-for-arduino-gcode-interpreter</link>
				<description></description>
				<pubDate>Tue, 06 Sep 2011 03:13:52 +0000</pubDate>
				<wikidot:authorName>Albanetc</wikidot:authorName>				<wikidot:authorUserId>381022</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <div class="image-container floatleft"><a href="http://www.flickr.com/photos/40642599@N07/6117941587/"><img src="http://farm7.static.flickr.com/6200/6117941587_00a8b3daa3_z.jpg" alt="flickr:6117941587" class="image" /></a></div> <p>I've been using a hacked together Python script for communication with Arduino GCode Interpreter, including sending gcode files. This has generally worked well, but it's not very convenient to jog a robot from command line. I also thought it would be great to have a simple and intuitive UI with these basic functions, and use keyboard for jogging.</p> <p>There seems to be plenty of host sotfware out there, including things specifically written for *duino based GCode interpreters, like <a href="https://github.com/damellis/gctrl" target="_blank">gctrl</a> , as well as 3D-printing oriented hosts like Reprap Host and ReplicatorG. There are also numerous scripts in Python and other languages. They all probably work well, but I wanted a UI and a bit more functionality usually found in command line hosts; on the other hand, a lot of functionality and controls in 3D-printing hosts would probably be an overkill for someone who just wants the basics.</p> <p>After spending several evenings dabbling in <a href="http://processing.org/">Processing</a> and <a href="http://www.sojamo.de/libraries/controlP5/">controlP5</a> (a great UI library for Processing) here is something with a working name of GRemote. It can do three things - issue GCode commands from text input, move the robot with jog buttons and send GCode files. It's intended to work with Arduino Gcode Interpreter, but it should also work with any firmware which understands ASCII GCode and whose responses are &quot;start&quot; for the initialization, and &quot;ok&quot; is the last response for every command sent. The baud rate is fixed at 38400 though that should probably be exposed in the UI via another dropdown (next to the serial port).</p> <p>Hopefully the following is self evident from the UI and common sense:</p> <p>Jogging only works in Relative mode and 1 jog distance is 1 unit - mm or inch, depending on the mode. Only X,Y,Z jog buttons work at the moment as I'm not yet clear what to assign to INS, DEL, END (more axes?) and to a lesser degree, HOME.</p> <p>The Absolute and Inch modes are toggles - unless remote is sending a file, these can be clicked and remote will issue appropriate command to the firmware. The commands being sent to firmware (when sending a file or from text input) are also inspected and in some cases (like the Absolute/Inch mode change) acted upon.</p> <p>The &quot;console&quot; display shows last 10 lines of what's going on, and on Linux, these are also written out to terminal from which GRemote is launched. On Windows, I'm not sure how to bring up a separate console, other than running source in Processing PDE. I'm guessing it's simple and should be easy to do with some research - if not, logging to file can be added.</p> <p>File send can be paused (making jog and mode controls available), resumed and cancelled. Few words about pausing:</p> <p>Jogging has to be done either with limit switches operational, or without hitting physical constraints of the axis. Hitting the physical axis constraints make steppers skip steps which moves coordinate system origin. Not a big deal if you're just jogging, but if you've paused a file and intend to resume it, it's a problem.</p> <p>Upon resuming the file, the Absolute and Inch mode settings should be the same as before pausing - otherwise things will go wrong. Maybe remote should remember the mode state before pausing and force-restore it upon resuming.</p> <p>If the file being sent uses Absolute mode, after pausing and resuming the file, the very next command should go to the right position even if robot was jogged elsewhere. If the file being sent uses Relative mode, the robot should be manually returned to pre-pause position before resuming.</p> <p>The zip file with Windows, Mac, Linux versions and the source is attached to this thread: <a href="http://www.contraptor.org/local--files/forum:thread/GRemote.zip">http://www.contraptor.org/local--files/forum:thread/GRemote.zip</a><br /> Unzip the appropriate application.* folder to your local machine and run GRemote.exe or GRemote bash script.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-386961</guid>
				<title>debugged firmware ?</title>
				<link>http://www.contraptor.org/forum/t-386961/debugged-firmware</link>
				<description>I&#039;m looking for a debugged firmware</description>
				<pubDate>Thu, 01 Sep 2011 02:26:11 +0000</pubDate>
				<wikidot:authorName>cybair</wikidot:authorName>				<wikidot:authorUserId>1183846</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hi all,</p> <p>Anybody has a debugged version of Chris Meighan's &quot;reprap new firmware&quot;? I was not lucky with the version I downloaded from Sourceforge/Contraptor. With Arduino 0017, I got this error: 'CHAR WORD [128]' REDECLARED AS DIFFERENT KIND OF SYMBOL. With Arduino 0018 I got this error: EXTRUDER_MOTOR_DIR_PIN WAS NOT DECLARED IN THIS SCOPE.</p> <p>Any help appreciated,</p> <p>ProfScrew</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-384267</guid>
				<title>problems with contraptor firmware</title>
				<link>http://www.contraptor.org/forum/t-384267/problems-with-contraptor-firmware</link>
				<description>Problems using contraptor, on previously working machine</description>
				<pubDate>Mon, 22 Aug 2011 01:55:12 +0000</pubDate>
				<wikidot:authorName>ofcsilencer</wikidot:authorName>				<wikidot:authorUserId>1152583</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I am having some issues with the contraptor firmware. I have a setup I use with grbl, but I recently acquired another machine and would like to mix it up and try contraptor. For testing I swapped out my grbl loaded arduino for a stock, and rewired to match the pins on my known working machine. I did try a generic stepper control sketch, and the axis' moved properly with a stock arduino.</p> <p>loading contraptor, I stepped down from arduino 22 to 21, so it would compile and upload properly. After it uploaded, used serial to connect at ~38400 and sent it &quot;x10&quot; or &quot;y15&quot; etc just random stuff that under grbl would make it move. the machine responds &quot;ok&quot; but nothing ever moves.</p> <p>being that my test sketch works properly, I believe I have a problem with a library or something not being where it should be. I am using a straight copy of the firmware from sourceforge. I have triple checked the pinouts.</p> <p>I am not at all sure what is causing this. any input would be appreciated.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-375149</guid>
				<title>Makerslide+Contrapteur</title>
				<link>http://www.contraptor.org/forum/t-375149/makerslide-contrapteur</link>
				<description></description>
				<pubDate>Fri, 22 Jul 2011 10:36:12 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hi !</p> <p>A while ago I&nbsp;contacted Barton Bring from the <a href="http://www.kickstarter.com/projects/93832939/makerslide-open-source-linear-bearing-system">Makerslide</a> project about <a href="http://www.contraptor.org/forum/t-293577/metric-contrapteur:mini-cnc-project">Contrapteur</a> ( 20mm Contraptor clone ), and this morning I&nbsp;received a few of the wheels in advance in the mail. Thanks !</p> <a href="http://www.flickr.com/photos/arthurwolf/5963205613/"><img src="http://farm7.static.flickr.com/6148/5963205613_d2326cdc34.jpg" alt="flickr:5963205613" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963205295/"><img src="http://farm7.static.flickr.com/6026/5963205295_03703b4930.jpg" alt="flickr:5963205295" class="image" /></a> <p>The wheels look very nice. The bearings fit so well that I was not able to remove them for the picture.</p> <p>So the plan for today is to find ways to get Makerslide and Contrapteur to work together.</p> <p>I don't have the Makerslide rail ( yet ). This would work out of the box with Contrapteur ( also 20mm based ), and I'll try it as soon as the Kickstarter reward gets here.</p> <p>Second option would be to make a rail specific to Contrapteur, like this :&nbsp;</p> <a href="http://www.flickr.com/photos/arthurwolf/5785580086/"><img src="http://farm6.static.flickr.com/5107/5785580086_9220f85f77.jpg" alt="flickr:5785580086" class="image" /></a> <p>That should work well, and I'll try it soon ( diagonal lasercutting ! ), but I needed something simpler for today. I went for the &quot;angle as rail&quot; option Contraptor uses for the sliding element.</p> <p>There are two options here : the wheels in a diagonal plane and the angle in the &quot;normal&quot; plane, or the angle in a diagonal plane and the wheels in the &quot;normal&quot; plane. Chose the first one here, but I'd like to try the other one too.</p> <p>First part is a mount for the wheels, lasercut in 4mm acrylic :</p> <a href="http://www.flickr.com/photos/arthurwolf/5963257047/"><img src="http://farm7.static.flickr.com/6020/5963257047_f5d066106f.jpg" alt="flickr:5963257047" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963763570/"><img src="http://farm7.static.flickr.com/6128/5963763570_ffb370876f.jpg" alt="flickr:5963763570" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963763340/"><img src="http://farm7.static.flickr.com/6009/5963763340_c69433c5d3.jpg" alt="flickr:5963763340" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963763094/"><img src="http://farm7.static.flickr.com/6146/5963763094_a9fae41709.jpg" alt="flickr:5963763094" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963205853/"><img src="http://farm7.static.flickr.com/6128/5963205853_cf464a2cbe.jpg" alt="flickr:5963205853" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963761530/"><img src="http://farm7.static.flickr.com/6001/5963761530_e163af6201.jpg" alt="flickr:5963761530" class="image" /></a> <p>The bending was made with a hot air SMD station. Here is how it looks when sliding on a rail ( contrapteur angle ) :&nbsp;</p> <a href="http://www.flickr.com/photos/arthurwolf/5963207597/"><img src="http://farm7.static.flickr.com/6130/5963207597_8b6514d77b.jpg" alt="flickr:5963207597" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963764316/"><img src="http://farm7.static.flickr.com/6137/5963764316_393c4dd49e.jpg" alt="flickr:5963764316" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963764024/"><img src="http://farm7.static.flickr.com/6139/5963764024_d0976668dd.jpg" alt="flickr:5963764024" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963763826/"><img src="http://farm7.static.flickr.com/6004/5963763826_c72f51093c.jpg" alt="flickr:5963763826" class="image" /></a> <p>It slides very well. Here is a video.</p> <p><iframe width="853" height="510" src="http://www.youtube.com/embed/nTQd-TIkAeE?hd=1" frameborder="0" allowfullscreen=""></iframe></p> <p>It is very smooth, even better than the Contraptor linear rail, and much much easier to assemble.</p> <p>The fact that the part is lasercut allows to make it the exact dimension to fit the angle, so there was not even any adjustment required ( also my brain refuses to understand how the Makerslide eccentric spacers work &#8230; ) it worked the first time after assembly.</p> <p>So now we have two sliding elements on two separate rails, but the goal here was to have a single carriage.</p> <p>Because the bending is made by hand, it is not possible to know exactly it's exact position in the part ( with my current bending skills, it would be different at each bending ), so the distance between the two parts can vary, so it's not possible to make a part with holes that would fit them exactly for sure.</p> <p>Here is the solution I came up with :</p> <a href="http://www.flickr.com/photos/arthurwolf/5963257079/"><img src="http://farm7.static.flickr.com/6123/5963257079_77362542df.jpg" alt="flickr:5963257079" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963765296/"><img src="http://farm7.static.flickr.com/6143/5963765296_3df156d253.jpg" alt="flickr:5963765296" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5963764798/"><img src="http://farm7.static.flickr.com/6017/5963764798_6bfafdc275.jpg" alt="flickr:5963764798" class="image" /></a> <p>The &quot;long holes&quot; allow to connect the two parts together even without knowing how further apart they are.</p> <p>Once assembled it looks like this :</p> <a href="http://www.flickr.com/photos/arthurwolf/5963765044/"><img src="http://farm7.static.flickr.com/6121/5963765044_abb6d86f28.jpg" alt="flickr:5963765044" class="image" /></a> <p>And a video of it sliding :</p> <p><iframe width="853" height="510" src="http://www.youtube.com/embed/8yKPNcNNRGc?hd=1" frameborder="0" allowfullscreen=""></iframe></p> <p>This works surprisingly well ! The carriage is very sturdy, the sliding very smooth and silent.</p> <p>Makerslide is awesome, plus it's opensource, plus it's awesome !</p> <p>Plus it's cheap.</p> <p>Plus it's 20mm based.</p> <p>I can't wait to play more with it ( next thing will probably test having the angle at a diagonal and the wheels in the normal plane ).</p> <p><strong>EDIT</strong> :&nbsp;Spent all the rest of the day trying to lasercut rails for it :&nbsp;diagonal lasercutting is veeeery difficult ! Finally got one rail right, see pics below :&nbsp;</p> <a href="http://www.flickr.com/photos/arthurwolf/5964873579/"><img src="http://farm7.static.flickr.com/6026/5964873579_79dde34aaa.jpg" alt="flickr:5964873579" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5964873153/"><img src="http://farm7.static.flickr.com/6005/5964873153_7d30ca47d9.jpg" alt="flickr:5964873153" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5964872747/"><img src="http://farm7.static.flickr.com/6142/5964872747_03e3644bf4.jpg" alt="flickr:5964872747" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5964872747/"><img src="http://farm7.static.flickr.com/6142/5964872747_03e3644bf4.jpg" alt="flickr:5964872747" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5965428764/"><img src="http://farm7.static.flickr.com/6147/5965428764_f69305bf7b.jpg" alt="flickr:5965428764" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5964871359/"><img src="http://farm7.static.flickr.com/6028/5964871359_d0e9b4e5a7.jpg" alt="flickr:5964871359" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5964870985/"><img src="http://farm7.static.flickr.com/6001/5964870985_6f5c3f732c.jpg" alt="flickr:5964870985" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5965427602/"><img src="http://farm7.static.flickr.com/6016/5965427602_69cb2f1c5b.jpg" alt="flickr:5965427602" class="image" /></a> <p>It works quite well, the wheels slide well and it seems sturdy.</p> <p>But it's a lot of work to make : the lasercutter must be ajusted at the 1/10mm, the diagonal support was a lot of work, and even thenit takes several tries to get a rail right. Getting better at it thought.</p> <p>Tomorrow I'll try to make another one, and use the two to support a carriage.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-368946</guid>
				<title>What need I buy if I need a xy plotter only</title>
				<link>http://www.contraptor.org/forum/t-368946/what-need-i-buy-if-i-need-a-xy-plotter-only</link>
				<description></description>
				<pubDate>Mon, 27 Jun 2011 08:36:46 +0000</pubDate>
				<wikidot:authorName>createfile</wikidot:authorName>				<wikidot:authorUserId>998223</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>What need I buy if I need a xy plotter only ( how much is that shipping to Hongkong )\\(I need that plotter support rise the pen up and put the pen down, also support use knife instead of pen to cut paper)</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-366361</guid>
				<title>Sliding element for T-slot</title>
				<link>http://www.contraptor.org/forum/t-366361/sliding-element-for-t-slot</link>
				<description></description>
				<pubDate>Mon, 13 Jun 2011 06:29:24 +0000</pubDate>
				<wikidot:authorName>Albanetc</wikidot:authorName>				<wikidot:authorUserId>381022</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <a href="http://www.flickr.com/photos/40642599@N07/4396723613/"><img src="http://farm5.static.flickr.com/4069/4396723613_1ccd2662bf.jpg" alt="flickr:4396723613" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5827197085/"><img src="http://farm4.static.flickr.com/3260/5827197085_da82caf2d1.jpg" alt="flickr:5827197085" class="image" /></a> <p>A while back I made a prototype of the sliding element for T-slot. Since then there were a few tweaks to it, however it was never really tried in action.</p> <p>I received an email recently asking whether it was possible to use Contraptor to build contraptions of larger size (e.g. 2x4 ft). This would definitely call for T-slot - which I happen to have several standard lengths of (12&quot;, 18&quot;, 24&quot;). I also have several fabricated T-slider prototypes. To test a number of assumptions about how these sliders would behave, I intend to build a robot with light X and heavier Y driven by belts, and heavy Z driven by four leadscrews. The robot would be ~2ft in X, ~1.5ft in Y and ~1ft in Z - but it could be scaled up. The actual work volume would be smaller than these dimensions. The screenshot on the right is work-in-progress on that robot.</p> <p>So far I've assembled the basic T-slider belt drive. The test below uses Arduino GCode Interpreter and grblShield (1/8 microstepping). The speed is 600 IPM.</p> <p><iframe width="560" height="349" src="http://www.youtube.com/embed/l-rlX9l9bLU" frameborder="0" allowfullscreen=""></iframe></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-365199</guid>
				<title>Noise reduction</title>
				<link>http://www.contraptor.org/forum/t-365199/noise-reduction</link>
				<description>Reducing vibration and noise</description>
				<pubDate>Mon, 06 Jun 2011 05:14:11 +0000</pubDate>
				<wikidot:authorName>Albanetc</wikidot:authorName>				<wikidot:authorUserId>381022</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p><strong>Background</strong><br /> <a href="http://www.contraptor.org/forum/t-274259/silenced-motor-mount">http://www.contraptor.org/forum/t-274259/silenced-motor-mount</a><br /> <a href="http://www.contraptor.org/forum/t-193855/noise-control">http://www.contraptor.org/forum/t-193855/noise-control</a></p> <p>Noise has been somewhat of a problem with mini CNC. The machine is fairly quiet at most of the feedrates. However there are a couple of feedrates that result in loud and nasty vibration. In my testing these are 2.1 IPM and to a lesser degree, 4.2 IPM. Any diagonal move that happens to have one of the axes moving at these speeds becomes a problem.</p> <p><strong>Short version</strong></p> <p><iframe width="560" height="349" src="http://www.youtube.com/embed/mgyIsCEZ1a0" frameborder="0" allowfullscreen=""></iframe></p> <p>To reduce the noise, I basically followed Arthur's previous work at the link above and added some degree of vibration isolation between the following:</p> <p><strong>Leadscrew and bearing</strong><br /> Instead of steel nut, a plastic nut is in contact with the bearing. Not visible in the picture, there is some teflon tape wrapped around the leadscrew where the (ball) bearing is. This prevents leadscrew from rattling around. I added the thrust bearing for reasons other than noise control, but it also has a plastic nut. The combination of plastic nuts with steel nuts should eliminate the need for spring washers (which were skewing the nuts).</p> <a href="http://www.flickr.com/photos/40642599@N07/5801740695/"><img src="http://farm3.static.flickr.com/2336/5801740695_075d499a9d.jpg" alt="flickr:5801740695" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5801738537/"><img src="http://farm4.static.flickr.com/3432/5801738537_a77b6987e6.jpg" alt="flickr:5801738537" class="image" /></a> <p><strong>Motor and motor mount</strong><br /> The motor is connected to the mount with nylon screws and nuts. There are several neoprene washers in between, as well as a pair of grommets in the mount holes (visible on the right pic). I found that metal screws didn't really work well there. The motor flexes on this mounting, but not in the twisting direction so it seems OK.</p> <a href="http://www.flickr.com/photos/40642599@N07/5801732997/"><img src="http://farm6.static.flickr.com/5067/5801732997_2e05c128d7.jpg" alt="flickr:5801732997" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5801735665/"><img src="http://farm6.static.flickr.com/5265/5801735665_71af428af8.jpg" alt="flickr:5801735665" class="image" /></a> <p>The plastic/neoprene parts are fairly cheap in 100 qty at Mcmaster:</p> <p>neoprene washers: #90133A017<br /> rubber grommets: #9600K66<br /> nylon 1/4 nuts: #94900A029<br /> nylon 10-24&#160;3/4 screws: #97263A245<br /> nylon 10-24 nuts: #94900A011</p> <a href="http://www.flickr.com/photos/40642599@N07/5801742227/"><img src="http://farm3.static.flickr.com/2448/5801742227_ca7f67fe1d.jpg" alt="flickr:5801742227" class="image" /></a> <p><strong>Microstepping</strong><br /> I kind of knew this already, but besides vibration isolation, the other important thing that reduces vibration is microstepping. With half stepping, the noise was still too much even with the 2 modifications above. I went an extra step and made a 1/4-20 Delrin nut for X-axis because there was an audible rattle between leadscrew and leadnut; thinking that it would quiet things down. However, with half stepping, that didn't significantly help - but the noise reduction was more pronounced with microstepping. I used TinyG but I'm planning to switch over to grblShield - both are 1/8 step.</p> <p>I measured the following max values using Sound Meter Lite Android app. Anything under 60&#160;dB sounds good enough to me. Again, these are supposed to be worst case scenarios - with the disclaimer they were tested on a single axis.</p> <div style="float:left;"> <table class="wiki-content-table"> <tr> <th>configuration</th> <th>halfstepping</th> <th>microstepping</th> </tr> <tr> <td>as is - tested on Y axis</td> <td>83&#160;dB</td> <td>78&#160;dB</td> </tr> <tr> <td>plastic screws&amp;nuts, washers&amp;grommets on motor mount</td> <td>80&#160;dB</td> <td>&#8212;</td> </tr> <tr> <td>+ plastic nuts and teflon tape at shaft mounts</td> <td>78&#160;dB</td> <td>59&#160;dB</td> </tr> <tr> <td>+ delrin nut</td> <td>76&#160;dB</td> <td>54&#160;dB</td> </tr> </table> </div> <div style="clear:both; height: 0px; font-size: 1px"></div> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-364140</guid>
				<title>V-track and V-groove bearing</title>
				<link>http://www.contraptor.org/forum/t-364140/v-track-and-v-groove-bearing</link>
				<description></description>
				<pubDate>Tue, 31 May 2011 05:38:16 +0000</pubDate>
				<wikidot:authorName>Albanetc</wikidot:authorName>				<wikidot:authorUserId>381022</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <a href="http://www.flickr.com/photos/40642599@N07/5779731748/"><img src="http://farm3.static.flickr.com/2322/5779731748_497df76c32.jpg" alt="flickr:5779731748" class="image" /></a> <p>This is a sketch from few months back showing how V-track might be a part of Contraptor. At that time, I looked at the prices of V-tracks and V-groove bearings and found them fairly expensive. Nevertheless I had ordered some material to build and test the prototype, and this weekend I finally got around to it.</p> <p>Below are V-tracks that can attach to Contraptor angle or 1&quot; T-slot. Fabricating wasn't too difficult but took some time. 3/16&quot; holes were drilled in V-track at 2&quot; intervals. 4&quot; intervals could probably also work, but 2&quot; fit nicely with 1ft and 2ft track lengths. One difficult thing was tapping small screw holes in the aluminum bar. I usually drill 1/8&quot; hole and 6-32 screw self-taps into the hole with little effort. This works great in 1/8&quot; thick aluminum. Here, the holes were about 3/8&quot; deep and screws would stop dead after a certain point. I tried 6-32 tap in the power drill to save time and it broke on pull out after stopping too late. Basically the holes had to be tapped manually, advancing about quarter of a turn and then stepping back a couple of turns. Anyhow, this was only needed to be done once as they're not intended to be disassembled.</p> <p>The V-bearing element still needs to be made. I only have 2&#160;V-groove bearings from VXB.com and I'm trying to find them for a reasonable price (not $15 a piece). They are angular contact bearings so they can support combined loads and have very little axial play. The V-track + V-groove bearings with T-slot should be able to handle loads of a larger CNC machine - 1ft x 2ft and perhaps 2ft x 4ft.</p> <a href="http://www.flickr.com/photos/40642599@N07/5779176015/"><img src="http://farm3.static.flickr.com/2281/5779176015_be5fc1fea8.jpg" alt="flickr:5779176015" class="image" /></a><a href="http://www.flickr.com/photos/40642599@N07/5779178893/"><img src="http://farm3.static.flickr.com/2475/5779178893_3855a6913b.jpg" alt="flickr:5779178893" class="image" /></a>
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-348246</guid>
				<title>Sparkfuns stepper controller</title>
				<link>http://www.contraptor.org/forum/t-348246/sparkfuns-stepper-controller</link>
				<description></description>
				<pubDate>Thu, 14 Apr 2011 23:06:15 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p><a href="http://www.sparkfun.com/products/10507">http://www.sparkfun.com/products/10507</a></p> <p>I want one !</p> <p>Actually started a design in eagle for just that &#8230; I think I'm going to give up on circuit design, these guys do a much better job.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-316487</guid>
				<title>grblShield For Sale</title>
				<link>http://www.contraptor.org/forum/t-316487/grblshield-for-sale</link>
				<description>A off the shelve way to drive Contraptor.</description>
				<pubDate>Thu, 03 Mar 2011 13:21:52 +0000</pubDate>
				<wikidot:authorName>ril3y</wikidot:authorName>				<wikidot:authorUserId>390237</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Alright! So our new grblShield is here! Check it out guys. We will be shipping in 1 - 3 weekish now. grbl v6 works out of box with our shield too.<br /> You can pre-order <a href="https://www.synthetos.com/webstore/index.php/assembled-electronics/grblshield-grbl-arduino-diy-cnc-shield.html">here.</a><br /> The grblShield wiki is <a href="https://www.synthetos.com/wiki/index.php?title=Projects:grblShield">here</a>. Now there is a cheap "buyable" solution to driving Contraptor.</p> <p>ril3y</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-306479</guid>
				<title>Pythagoras</title>
				<link>http://www.contraptor.org/forum/t-306479/pythagoras</link>
				<description></description>
				<pubDate>Tue, 08 Feb 2011 20:49:25 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hi.</p> <p>When designing the contrapteur mini-cnc, I had to find out how to place the diagonal bar ( so that the holes of the diagonal bar it right in front of holes in the two other angles.<br /> Now that I have the actual angle to play with, it's quite easy, but in Sketchup, trial and error was quite a burden.</p> <p>Here is an array I used, that gives the round hypotenuses for different angle lengths, it was quite usefull to decide which length to give to which angle :&nbsp;</p> <table class="wiki-content-table"> <tr> <td></td> <th>1</th> <th>2</th> <th>3</th> <th>4</th> <th>5</th> <th>6</th> <th>7</th> <th>8</th> <th>9</th> <th>10</th> <th>11</th> <th>12</th> <th>13</th> <th>14</th> <th>15</th> <th>16</th> <th>17</th> <th>18</th> <th>19</th> <th>20</th> <th>21</th> <th>22</th> <th>23</th> <th>24</th> <th>25</th> <th>26</th> <th>27</th> <th>28</th> <th>29</th> <th>30</th> </tr> <tr> <th>1</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>2</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>3</th> <td></td> <td></td> <td></td> <td>5</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>4</th> <td></td> <td></td> <td>5</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>5</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>13</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>6</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>10</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>7</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>25</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>8</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td>10</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>17</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>9</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>15</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>10</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>26</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>11</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>12</th> <td></td> <td></td> <td></td> <td></td> <td>13</td> <td></td> <td></td> <td></td> <td>15</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>20</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>13</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>14</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>15</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>17</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>25</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>16</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>20</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>34</td> </tr> <tr> <th>17</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>18</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>30</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>19</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>20</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>25</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>29</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>21</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>29</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>35</td> <td></td> <td></td> </tr> <tr> <th>22</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>23</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>24</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>25</td> <td></td> <td></td> <td>26</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>30</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>25</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>26</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>27</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>28</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>35</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>29</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <tr> <th>30</th> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td>34</td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> </table> <p>And the Perl script to generate it :</p> <div class="code"> <div class="hl-main"> <pre> <span class="hl-reserved">print</span><span class="hl-code"> </span><span class="hl-quotes">"</span><span class="hl-string">|| ||~ </span><span class="hl-quotes">"</span><span class="hl-code">, </span><span class="hl-reserved">join</span><span class="hl-brackets">(</span><span class="hl-quotes">'</span><span class="hl-string">||~ </span><span class="hl-quotes">'</span><span class="hl-code">,</span><span class="hl-reserved">map</span><span class="hl-code"> </span><span class="hl-var">$_</span><span class="hl-code"> , </span><span class="hl-number">1</span><span class="hl-code">.</span><span class="hl-number">.30</span><span class="hl-code"> </span><span class="hl-brackets">)</span><span class="hl-code"> , </span><span class="hl-quotes">"</span><span class="hl-string">||</span><span class="hl-special">\n</span><span class="hl-quotes">"</span><span class="hl-code">; </span><span class="hl-reserved">for</span><span class="hl-code"> </span><span class="hl-reserved">my</span><span class="hl-code"> </span><span class="hl-var">$x</span><span class="hl-code"> </span><span class="hl-brackets">(</span><span class="hl-code"> </span><span class="hl-number">1</span><span class="hl-code"> .. </span><span class="hl-number">30</span><span class="hl-code"> </span><span class="hl-brackets">){</span><span class="hl-code"> </span><span class="hl-reserved">print</span><span class="hl-code"> </span><span class="hl-quotes">"</span><span class="hl-string">||~ </span><span class="hl-var">$x</span><span class="hl-string"> ||</span><span class="hl-quotes">"</span><span class="hl-code">, </span><span class="hl-reserved">join</span><span class="hl-brackets">(</span><span class="hl-quotes">'</span><span class="hl-string">||</span><span class="hl-quotes">'</span><span class="hl-code">, </span><span class="hl-reserved">map</span><span class="hl-code"> </span><span class="hl-reserved">int</span><span class="hl-brackets">(</span><span class="hl-reserved">sqrt</span><span class="hl-brackets">((</span><span class="hl-var">$_</span><span class="hl-code">*</span><span class="hl-var">$_</span><span class="hl-brackets">)</span><span class="hl-code">+</span><span class="hl-brackets">(</span><span class="hl-var">$x</span><span class="hl-code">*</span><span class="hl-var">$x</span><span class="hl-brackets">)))</span><span class="hl-code">==</span><span class="hl-reserved">sqrt</span><span class="hl-brackets">((</span><span class="hl-var">$_</span><span class="hl-code">*</span><span class="hl-var">$_</span><span class="hl-brackets">)</span><span class="hl-code">+</span><span class="hl-brackets">(</span><span class="hl-var">$x</span><span class="hl-code">*</span><span class="hl-var">$x</span><span class="hl-brackets">))</span><span class="hl-code"> ? </span><span class="hl-reserved">int</span><span class="hl-brackets">(</span><span class="hl-reserved">sqrt</span><span class="hl-brackets">((</span><span class="hl-var">$_</span><span class="hl-code">*</span><span class="hl-var">$_</span><span class="hl-brackets">)</span><span class="hl-code">+</span><span class="hl-brackets">(</span><span class="hl-var">$x</span><span class="hl-code">*</span><span class="hl-var">$x</span><span class="hl-brackets">)))</span><span class="hl-code"> : </span><span class="hl-quotes">'</span><span class="hl-string"> </span><span class="hl-quotes">'</span><span class="hl-code"> , </span><span class="hl-number">1</span><span class="hl-code">.</span><span class="hl-number">.30</span><span class="hl-code"> </span><span class="hl-brackets">)</span><span class="hl-code"> , </span><span class="hl-quotes">"</span><span class="hl-string">||</span><span class="hl-special">\n</span><span class="hl-quotes">"</span><span class="hl-code">; </span><span class="hl-brackets">}</span> </pre></div> </div> <p>Just in case this can help someone else …</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-305375</guid>
				<title>Scripted assembly sequences</title>
				<link>http://www.contraptor.org/forum/t-305375/scripted-assembly-sequences</link>
				<description></description>
				<pubDate>Sat, 05 Feb 2011 07:46:23 +0000</pubDate>
				<wikidot:authorName>Albanetc</wikidot:authorName>				<wikidot:authorUserId>381022</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>As described in <a href="http://www.contraptor.org/forum/t-292956/mini-cnc-with-modified-z-axis#post-969904">this thread</a>, I had to make a few changes to the mini-CNC design for various reasons (easier adjustment etc). The assembly screenshots from the mini-CNC page (<a href="http://www.contraptor.org/mini-cnc#assembly">http://www.contraptor.org/mini-cnc#assembly</a>) were all taken manually - quite a long process. Taking them again (and then, again) seems like something that should happen automatically. Previously, there was an idea of encoding assembly sequences in OpenSCAD: <a href="http://www.contraptor.org/forum/t-192150/suggestion:metric-version-please#post-733974">http://www.contraptor.org/forum/t-192150/suggestion:metric-version-please#post-733974</a></p> <p>Sketchup has built-in Ruby interpreter, and I spent last couple of weeks figuring out how Sketchup could interpret an assembly sequence based on a Ruby script. Borrowing some methods from OpenSCAD, I think the script below looks readable. There are 2 classes - Component (which maps to Sketchup component instance) and Assembly (which maps to Sketchup group). The component names are also the file names in the Contraptor library (in Sketchup/Components) folder.</p> <p>The following sequence:</p> <a href="http://www.flickr.com/photos/40642599@N07/5417991468/"><img src="http://farm6.static.flickr.com/5299/5417991468_29633e28ee_m.jpg" alt="flickr:5417991468" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5417384515/"><img src="http://farm6.static.flickr.com/5259/5417384515_8b3e0c5871_m.jpg" alt="flickr:5417384515" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5417991520/"><img src="http://farm6.static.flickr.com/5091/5417991520_f50962a074_m.jpg" alt="flickr:5417991520" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5417384555/"><img src="http://farm6.static.flickr.com/5255/5417384555_12ca758a8c_m.jpg" alt="flickr:5417384555" class="image" /></a> <p>Was produced from the following script (this is the base assembly of the mini-CNC):</p> <div class="code"> <div class="hl-main"> <pre> <span class="hl-reserved">def</span><span class="hl-code"> </span><span class="hl-identifier">base</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> = </span><span class="hl-identifier">Assembly</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">Base front</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-12</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">2</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-4</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">90</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">1</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-4</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">90</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">7</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">180</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">4</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">2</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">8</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">2</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">4</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">1</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">180</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">8</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">1</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">4</span><span class="hl-code">,-</span><span class="hl-number">1</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">8</span><span class="hl-code">,-</span><span class="hl-number">1</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_front</span><span class="hl-code">.</span><span class="hl-identifier">screenshot</span><span class="hl-code"> </span><span class="hl-identifier">base_back</span><span class="hl-code"> = </span><span class="hl-identifier">Assembly</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">Base back</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">base_back</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-12</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">180</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_back</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-3</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">2</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_back</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-3</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">9</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">2</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_back</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">3</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">2</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_back</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">9</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">2</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_back</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">4</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">1</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_back</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-2</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">8</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">1</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base_back</span><span class="hl-code">.</span><span class="hl-identifier">screenshot</span><span class="hl-brackets">(</span><span class="hl-identifier">camera</span><span class="hl-code"> = </span><span class="hl-number">1</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">base</span><span class="hl-code"> = </span><span class="hl-identifier">Assembly</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">Base</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">base</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">base_back</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">180</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">12</span><span class="hl-code">,</span><span class="hl-number">18</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-18</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">1</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">Component</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">perforated-angle-18</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,-</span><span class="hl-number">90</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">11</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base</span><span class="hl-code">.</span><span class="hl-identifier">screenshot</span><span class="hl-code"> </span><span class="hl-identifier">base</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">base_front</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">180</span><span class="hl-brackets">])</span><span class="hl-code">.</span><span class="hl-identifier">translate</span><span class="hl-code">!</span><span class="hl-brackets">([</span><span class="hl-number">12</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">base</span><span class="hl-code">.</span><span class="hl-identifier">screenshot</span><span class="hl-code"> </span><span class="hl-reserved">end</span><span class="hl-code"> </span><span class="hl-comment"># Create top level assembly</span><span class="hl-code"> </span><span class="hl-identifier">contraption</span><span class="hl-code"> = </span><span class="hl-identifier">Assembly</span><span class="hl-code">.</span><span class="hl-identifier">new</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string">mini-CNC</span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-comment"># Set up extra cameras - they are shared among all instances of Assembly class</span><span class="hl-code"> </span><span class="hl-identifier">contraption</span><span class="hl-code">.</span><span class="hl-identifier">set_camera</span><span class="hl-brackets">(</span><span class="hl-number">1</span><span class="hl-code">,</span><span class="hl-brackets">[</span><span class="hl-code">-</span><span class="hl-number">30</span><span class="hl-code">,-</span><span class="hl-number">30</span><span class="hl-code">,</span><span class="hl-number">30</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-identifier">contraption</span><span class="hl-code">.</span><span class="hl-identifier">set_camera</span><span class="hl-brackets">(</span><span class="hl-number">2</span><span class="hl-code">,</span><span class="hl-brackets">[</span><span class="hl-number">30</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">])</span><span class="hl-code"> </span><span class="hl-comment"># Add subassemblies to the top level assembly</span><span class="hl-code"> </span><span class="hl-identifier">contraption</span><span class="hl-code"> &lt;&lt; </span><span class="hl-identifier">base</span><span class="hl-code"> </span><span class="hl-comment"># Take a final screenshot using default camera</span><span class="hl-code"> </span><span class="hl-identifier">contraption</span><span class="hl-code">.</span><span class="hl-identifier">screenshot</span> </pre></div> </div> <p>The images are not in color yet, but it should be easy to add. Also, there are no fasteners - while they can be added via Component.new() - just like any other component in the library, this would probably make the script too bulky. Trying to figure out if there is a way to make them go to where they should be with minimum commands.</p> <p>The plugin is attached (unzip in Plugins folder, restart Sketchup): <a href="http://www.contraptor.org/local--files/forum:thread/AIG.zip">http://www.contraptor.org/local--files/forum:thread/AIG.zip</a><br /> The folder $SketchupHome\Components\Contraptor should contain SKP files with Contraptor components in order for plugin to work - alternatively, change component library path in assembly.rb and use arbitrary components.</p> <p>Finally, there is no error handling and the code is a bit kludgy, but it works for me on Sketchup 8/WinXP</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-303506</guid>
				<title>[Metric] Contrapteur : alpha angle</title>
				<link>http://www.contraptor.org/forum/t-303506/metric-contrapteur:alpha-angle</link>
				<description></description>
				<pubDate>Fri, 28 Jan 2011 20:19:24 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Today was the big day :&nbsp;the package for the Contrapteur angle arrived !</p> <a href="http://www.flickr.com/photos/arthurwolf/5396403162/"><img src="http://farm5.static.flickr.com/4099/5396403162_340e9ef044.jpg" alt="flickr:5396403162" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5396403164/"><img src="http://farm6.static.flickr.com/5098/5396403164_1f85c61073.jpg" alt="flickr:5396403164" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5396403170/"><img src="http://farm5.static.flickr.com/4092/5396403170_b4e78979dc.jpg" alt="flickr:5396403170" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5396403172/"><img src="http://farm5.static.flickr.com/4074/5396403172_4fefe1a824.jpg" alt="flickr:5396403172" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5396403178/"><img src="http://farm5.static.flickr.com/4147/5396403178_2877beb8b3.jpg" alt="flickr:5396403178" class="image" /></a> <p>Ok so end of the suspense, to summarize : it's good, <strong>it works !</strong> ( but it's not perfect ).<br /> All dimensions are good, except for the centering of the holes, that is a very very small bit off ( 0.2mm or maybe less in the direction of the inside … ) but when using the angles, it works ( maybe the fact that the bolts are not exactly 5mm helps ).<br /> The angles are a bit "dirty", but they look super good once cleaned with water and soap.<br /> Also, they are deburred only on one side, but the other one is clean so that's ok.<br /> They weight less than the contraptor angles obviously, that feels better when building, but it's subjective.</p> <a href="http://www.flickr.com/photos/arthurwolf/5395826519/"><img src="http://farm5.static.flickr.com/4138/5395826519_8f4f32054d.jpg" alt="flickr:5395826519" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395826521/"><img src="http://farm5.static.flickr.com/4137/5395826521_63f2ba7ebb.jpg" alt="flickr:5395826521" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395826527/"><img src="http://farm5.static.flickr.com/4151/5395826527_36a57160ba.jpg" alt="flickr:5395826527" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395826531/"><img src="http://farm6.static.flickr.com/5095/5395826531_6c7b4cc485.jpg" alt="flickr:5395826531" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395826535/"><img src="http://farm6.static.flickr.com/5257/5395826535_dc987a6ee7.jpg" alt="flickr:5395826535" class="image" /></a> <p>The small problem with centering scared me a bit so I decided to try it and build something with it, you should recognize it :) :</p> <a href="http://www.flickr.com/photos/arthurwolf/5396403184/"><img src="http://farm5.static.flickr.com/4082/5396403184_863265dc3c.jpg" alt="flickr:5396403184" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395826513/"><img src="http://farm5.static.flickr.com/4102/5395826513_cf7be41b7d.jpg" alt="flickr:5395826513" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395834295/"><img src="http://farm5.static.flickr.com/4093/5395834295_20fc289ecc.jpg" alt="flickr:5395834295" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395834303/"><img src="http://farm5.static.flickr.com/4083/5395834303_fed62d294d.jpg" alt="flickr:5395834303" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395834307/"><img src="http://farm6.static.flickr.com/5056/5395834307_e61deb7358.jpg" alt="flickr:5395834307" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395834313/"><img src="http://farm6.static.flickr.com/5219/5395834313_b0e6f0472c.jpg" alt="flickr:5395834313" class="image" /></a> <a href="http://www.flickr.com/photos/arthurwolf/5395834315/"><img src="http://farm5.static.flickr.com/4135/5395834315_339005f034.jpg" alt="flickr:5395834315" class="image" /></a> <p>I didn't have the exact angle length for the present plans of the contrapteur mini-cnc, so I used lengths that were close …<br /> The screws are the shorter they had at the hardware store ( 15mm ), it needs even shorter screws ( 8mm would be good ).<br /> The machine feels very stiff, and the fact that the screws all fit perfectly makes building it very very easy : everything just stays wherever you put it :)<br /> Small problem :&nbsp;due to the light weight , lack of control when using a big electric screwdriver sent the machine flying to the other side of the room, hurt my arm a lot … will be more cautious next time.</p> <p>When ordering more, I'll have to ask for the holes to be better centered … maybe define a set of tests/shapes for the angles to be sure before shipping.<br /> With the holes better centered, it would really be perfect.</p> <p>That's all for today !<br /> Super happy !</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-302666</guid>
				<title>Arduino + Pololu alternative to Makerbot driver</title>
				<link>http://www.contraptor.org/forum/t-302666/arduino-pololu-alternative-to-makerbot-driver</link>
				<description></description>
				<pubDate>Wed, 26 Jan 2011 01:02:30 +0000</pubDate>
				<wikidot:authorName>jimjiminyjimjim</wikidot:authorName>				<wikidot:authorUserId>689269</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I was just wandering whether I could use an alternative to the Makerbot driver. I've been following the Contraptor instructions and getting the necessary equipment to start experimenting with the stepper motors and GCode.</p> <p>All the Makerbot drivers seem to be out of stock as I think they've upgraded their electronics. Can I just buy Pololu driver boards and plug straight to an Arduino Mega - will the Arduino Gcode interpreter work with this setup?</p> <p>Are there any other alternative boards people have been using successfully?</p> <p>As an alternative I have been recommended swapping the arduino firmware and makerbot with replicatorg and a RAMP setup - can anyone shed any light about this?</p> <p>I'm new to this and any help would be much appreciated.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-298126</guid>
				<title>GCODE!!!!</title>
				<link>http://www.contraptor.org/forum/t-298126/gcode</link>
				<description></description>
				<pubDate>Thu, 13 Jan 2011 08:45:24 +0000</pubDate>
				<wikidot:authorName>halejandro</wikidot:authorName>				<wikidot:authorUserId>675253</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p><strong>bold text</strong> WHAT`S THE BEST HOST SOFTWARE TO SEND COMMANDS TO ARDUINO GCODE INTERPRETER ??????????????</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-296218</guid>
				<title>[Metric] Contrapteur : wall drawer</title>
				<link>http://www.contraptor.org/forum/t-296218/metric-contrapteur:wall-drawer</link>
				<description></description>
				<pubDate>Thu, 06 Jan 2011 21:02:24 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Teaser : The angle samples will probably be shipped soon, and are expected to arrive around the beginning of February, so IRL making will start happening then.</p> <p>Here is a new project for contrapteur : the wall drawer.<br /> Nothing new, you can find similar projects <a href="http://www.kickstarter.com/projects/notever/the-drawing-machine?play=1&amp;ref=search">here</a>, <a href="http://www.as220.org/labs/blog/drawbot/">here</a>, <a href="http://hektor.ch/">here</a> and <a href="http://muralizer.com/">here</a>.</p> <p>Basically, it is a small robot, suspended by strings, that rolls the strings to move, and doing so, draw ( on a wall ).</p> <p>It is still at the draft stage, but the main ideas are here.</p> <p>Main eccentricities of this design :</p> <ul> <li>Uses belt and pulleys instead of strings. More expensive, but more reliable and precise.</li> <li>Has motors on-board, adds weight, makes it less giggly.</li> <li>Will use software calculation to maintain the robot aligned with the horizon.</li> </ul> <p>To get an idea of how it works here is a picture of the back ( part that faces the wall ) :</p> <a href="http://www.flickr.com/photos/arthurwolf/5330629575/"><img src="http://farm6.static.flickr.com/5086/5330629575_fa4dd83b49_z.jpg" alt="flickr:5330629575" class="image" /></a> <p>Basically, the motors turn the pulleys, the pulleys push/pull the belt, and that makes the robot move. As simple as that. You actually need cosine things in the software to have Cartesian coordinates/movement, that's probably the most difficult part of the project.<br /> At the top you can see the pen, attached to a servo. The servo is for not-drawing when not necessary, or even for controlling depth if you use a brush, or brush-pen.<br /> Not featured here, the contact between the robot and the wall ( other than the pen ) will be handled by <a href="http://www.mcmaster.com/#roller-balls/=ah5g2q">roller balls</a>.</p> <p>A&nbsp;picture of the top :</p> <a href="http://www.flickr.com/photos/arthurwolf/5330631645/"><img src="http://farm6.static.flickr.com/5248/5330631645_59aeea0d9e_z.jpg" alt="flickr:5330631645" class="image" /></a> <p>You can see the motors, arduino and servo. Missing are the arduino shield with pololu drivers on it.</p> <p>Design challenges :</p> <ul> <li>Figure out if this can work</li> <li>Design a contrapteur part for the roller balls</li> <li>Find how to attach the servo to contrapteur … maybe via a lasercut part.</li> <li>Find how to attach the pen to the servo. Lasercut or 3D printed part. Or something dirty at first.</li> <li>The software is the real challenge. Must understand Gcode, like the mini-cnc, but moves nothing like it.</li> </ul> <p>Apart from that it all seems fairly easy.<br /> I'll continue to refine the design, and when the contrapteur sample parts arrive, assemble it and test it … it should be a quick build.</p> <p>Note : This took 15&nbsp;minutes to design, contraptor really rules !<br /> Should be easy to do in ( inch ) contraptor too.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-295481</guid>
				<title>[Metric] Contrapteur : lasercut templates</title>
				<link>http://www.contraptor.org/forum/t-295481/metric-contrapteur:lasercut-templates</link>
				<description></description>
				<pubDate>Mon, 03 Jan 2011 19:22:26 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>The contrapteur mini-cnc project makes good progress.<br /> The lasercut parts need testing, so I'll have a bunch made at ponoko.<br /> The parts were designed for 2mm thick material, but it turns out ponoko has most of it's materials in 3mm thickness, so it's limited to a few materials ( wood, clear acrylic ).<br /> I'll order one of each and see what is better.</p> <p>Here is the first draft of the template :<br /> <a href="http://www.flickr.com/photos/arthurwolf/5320422095/"><img src="http://farm6.static.flickr.com/5009/5320422095_15930bce1a.jpg" alt="flickr:5320422095" class="image" /></a></p> <p>It includes :</p> <ul> <li>18 ball bearing holders</li> <li>8&nbsp;lead nut mounts</li> <li>8 lead nut mounts for sliding element</li> <li>Templates for punching the angle</li> <li>Templates for punching the 40mm square tube</li> <li>Templates for punching the motor mount and cutting the rubber dampers</li> </ul> <p>It will include :</p> <ul> <li>Design tests for lasercut motor mounts ( inspired by <a href="http://www.flickr.com/photos/rileyporter/4058823079/in/set-72157622475596037/">riley's</a> )</li> <li>Templates for punching the sliding elements, linear rail stage, etc … they are still at the design stage, not sure about where all the holes will be.</li> </ul> <p>Any idea of usefull stuff that could be added in the white space that helps when doing contraptor ?</p> <p>Edit : Optimism FAIL, it's way more costly than thought at first, forgetting about ordering two materials.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-293577</guid>
				<title>[Metric] Contrapteur : mini-cnc project</title>
				<link>http://www.contraptor.org/forum/t-293577/metric-contrapteur:mini-cnc-project</link>
				<description>Making a mini-cnc out of 20mm based contraptor clone</description>
				<pubDate>Wed, 22 Dec 2010 18:09:27 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hello !</p> <p>This will be the thread for the <a href="http://www.contraptor.org/forum/t-273404/contraptor-openstructures">contrapteur</a> mini-cnc project.<br /> The goal is to make a complete replica of the mini-cnc, but using metric parts.<br /> The good thing about the mini-cnc is that it uses all contraptor parts, so translating it's part is basically translating contraptor.</p> <p>So to start, we need a frame with about the same dimensions as the contraptor mini-cnc.<br /> Here bellow is a draft, conversion has been made the following way :</p> <ul> <li>For short parts, use parts with the same number of holes.</li> <li>For long parts, use parts about the same length.</li> </ul> <p>Picture :<br /> <a href="http://www.flickr.com/photos/arthurwolf/5282914519/"><img src="http://farm6.static.flickr.com/5122/5282914519_bf8009f2a9_z.jpg" alt="flickr:5282914519" class="image" /></a></p> <p>It ends up looking very much alike.<br /> Some things may need to be changed once we start adding the moving parts, we'll see then.</p> <p>So now that there is a frame ( in sketchup ), what is needed next ?</p> <ul> <li><a href="http://www.contraptor.org/make-sliding-elements">Sliding elements</a> : design already started in the <a href="http://www.contraptor.org/forum/t-273404/contraptor-openstructures">big-cnc project</a>, raw aluminium square tube easily available.</li> <li><a href="http://www.contraptor.org/make-linear-bearings">Linear bearings</a> : TBD, main problem is here is that aluminium channel is hard to find. Could be made by shortening U profile legs.</li> <li><a href="http://www.contraptor.org/make-linear-rail">Linear rails</a> :&nbsp;design started in sketchup, same problem with aluminium channel.</li> <li><a href="http://www.contraptor.org/make-coupling-nut-clamp">Coupling nut clamp</a> and <a href="http://www.contraptor.org/make-lead-nut-mount">Lead nut mount</a> :&nbsp;TBD</li> <li><a href="http://www.contraptor.org/make-shaft-mount">Shaft mount</a> : easy, will be made with laser cut holders, see <a href="http://www.contraptor.org/forum/t-292919/ball-bearing-mount-idea">discution</a></li> <li><a href="http://www.contraptor.org/make-belt-clamp">Belt clamp</a> : easy too.</li> <li><a href="http://www.contraptor.org/make-motor-mount">Motor mount</a> : design already started in the <a href="http://www.contraptor.org/forum/t-273404/contraptor-openstructures">big-cnc project</a>, from square tube cut in half, with rubber vibration isolation.</li> <li><a href="http://www.contraptor.org/mini-cnc-subset">The rest ( parts column )</a> : TBD, but lots of progress already done for the <a href="http://www.contraptor.org/forum/t-273404/contraptor-openstructures">big-cnc project</a></li> </ul> <p>Picture of a first draft :<br /> <a href="http://www.flickr.com/photos/arthurwolf/5284198802/"><img src="http://farm6.static.flickr.com/5243/5284198802_5b4696435d.jpg" alt="flickr:5284198802" class="image" /></a></p> <p>Documentation :&nbsp;</p> <ul> <li>Wiki page ( under <a href="http://www.contraptor.org/metric-version-development">Metric version</a> )</li> <li>Sketchup file to be uploaded to 3D warehouse</li> <li>Build log with pictures</li> <li>Trying to document it as well as the original mini-cnc</li> </ul> <p>Any comments/advice is super welcome !</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-292956</guid>
				<title>Mini CNC with modified Z axis</title>
				<link>http://www.contraptor.org/forum/t-292956/mini-cnc-with-modified-z-axis</link>
				<description></description>
				<pubDate>Sun, 19 Dec 2010 07:08:26 +0000</pubDate>
				<wikidot:authorName>Albanetc</wikidot:authorName>				<wikidot:authorUserId>381022</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Over the last 2-3 weeks I spent a few hours here and there on validating the assembly sequence for mini CNC (<a href="http://www.contraptor.org/mini-cnc#assembly">http://www.contraptor.org/mini-cnc#assembly</a>) and looking for spots in the alignment process that could use more documentation. One of such spots is the leadscrew alignment - I found that following a few simple rules and knowing how things might go wrong can really shorten the time it takes to get the leadscrew drive working. I will need to write it up in detail but here is the draft: <a href="http://www.contraptor.org/leadscrew-alignment">http://www.contraptor.org/leadscrew-alignment</a></p> <p>When I started Z-axis assembly, it became clear that the design wouldn't allow to easily perform the leadscrew alignment steps, so I ended up modifying Z-axis to accommodate that. By the way, one of the advantages of construction sets is that a new version of an assembled device doesn't require time/expense of making/buying modified parts, as the case may be with a traditional kit. I simply rearranged the existing parts - construction set is more like software in that sense.</p> <p>Here is the new Z-axis:</p> <a href="http://www.flickr.com/photos/40642599@N07/5260132260/"><img src="http://farm6.static.flickr.com/5002/5260132260_fc5ee86bcd_m.jpg" alt="flickr:5260132260" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5267579659/"><img src="http://farm6.static.flickr.com/5087/5267579659_59d72bde5b_m.jpg" alt="flickr:5267579659" class="image" /></a> <p>The design allows to assemble and align each of the rails independently.</p> <a href="http://www.flickr.com/photos/40642599@N07/5216669235/"><img src="http://farm5.static.flickr.com/4089/5216669235_7cc1ba59bc_m.jpg" alt="flickr:5216669235" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5216671211/"><img src="http://farm5.static.flickr.com/4133/5216671211_34495336ab_m.jpg" alt="flickr:5216671211" class="image" /></a> <p>It also provides more Z axis travel - almost 3" (measured without Dremel). This may be useful for some of the attachments such as drill chuck.</p> <a href="http://www.flickr.com/photos/40642599@N07/5259527325/"><img src="http://farm6.static.flickr.com/5202/5259527325_90cbb9f8ae_m.jpg" alt="flickr:5259527325" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5259533199/"><img src="http://farm6.static.flickr.com/5043/5259533199_026ddc903d_m.jpg" alt="flickr:5259533199" class="image" /></a> <p>The first tests went well, but when I replaced 6" flat plexi bracket on the rear of X stage with AL angle to enable grounding of the limit switches, I ran into um.. a runtime error when the X stage rear angle crashed into one of the stepper driver heatsinks with Z raised all the way up. I didn't really <em>crash</em>, X stage just kept going, getting more and more skewed as the top was blocked and the bottom continued to move.</p> <a href="http://www.flickr.com/photos/40642599@N07/5260135830/"><img src="http://farm6.static.flickr.com/5009/5260135830_17a962e3b0_m.jpg" alt="flickr:5260135830" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5260141998/"><img src="http://farm6.static.flickr.com/5245/5260141998_16f9125575_m.jpg" alt="flickr:5260141998" class="image" /></a> <p>So now I have to remove the entire X axis and (mostly) re-assemble and re-align it from scratch. However this means I can take care of another narrow assembly spot - securing X axis to Z stage. It's somewhat difficult with the wrench and using hex socket is almost impossible. There is no reason why the flat screw/nut at the end of the linear rail can't be removed/moved 1" inward - that way it won't interfere with the hex socket.</p> <a href="http://www.flickr.com/photos/40642599@N07/5259530467/"><img src="http://farm6.static.flickr.com/5210/5259530467_aa96a552e8_m.jpg" alt="flickr:5259530467" class="image" /></a> <a href="http://www.flickr.com/photos/40642599@N07/5259530973/"><img src="http://farm6.static.flickr.com/5169/5259530973_3726ab78f0_m.jpg" alt="flickr:5259530973" class="image" /></a>
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-292919</guid>
				<title>Ball bearing mount idea</title>
				<link>http://www.contraptor.org/forum/t-292919/ball-bearing-mount-idea</link>
				<description></description>
				<pubDate>Sun, 19 Dec 2010 00:34:56 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hello.</p> <p>I'd like opinions on this idea for a ball bearing mount.<br /> I really like the simplicity of the one in the contraptor set, but in my mini-cnc when building they popped off very often.<br /> Also the bearing I will get for the big-cnc project do not have edges that sharp/square, they are a bit rounded so that will make it more difficult to stay in place with that technique.</p> <p>My current idea is to entirely surround the ball bearing.<br /> This only needs two small pieces of aluminium ( or maybe some lasercut plastic, maybe cheaper and/or simpler ) with a hole the size of the ball bearing, and smaller holes for screws.<br /> And then the angle is drilled the same way, but with a bit smaller diameter for the ball bearing hole, which makes the ball bearing hold.</p> <p>Picture :<br /> <a href="http://www.flickr.com/photos/arthurwolf/5272677058/"><img src="http://farm6.static.flickr.com/5285/5272677058_ed60cfb957_z.jpg" alt="flickr:5272677058" class="image" /></a></p> <p>What do you think ?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-291878</guid>
				<title>Contraptor Mini-CNC with EMC2</title>
				<link>http://www.contraptor.org/forum/t-291878/contraptor-mini-cnc-with-emc2</link>
				<description>Lot of control over a Mini-CNC with EMC2</description>
				<pubDate>Tue, 14 Dec 2010 23:05:07 +0000</pubDate>
				<wikidot:authorName>gatonero</wikidot:authorName>				<wikidot:authorUserId>406275</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Today I got my Contraptor Mini-CNC Mill running with <a href="http://www.linuxcnc.org/" >EMC / LinuxCNC</a></p> <a href="http://www.flickr.com/photos/mantao05/5262113666/"><img src="http://farm6.static.flickr.com/5083/5262113666_7bea31b315.jpg" alt="flickr:5262113666" class="image" /></a> <p>This software is very sophisticated and gives a lot of control and possibilities to run a mill.</p> <p>No Arduino is necessary for this, but a parallel port.</p> <p>What I have done is discussed in the <a href="http://www.linuxcnc.org/component/option,com_kunena/Itemid,20/func,view/id,5654/catid,16/limit,6/limitstart,0/lang,english/" >LinuxCNC forum</a></p> <p>To get running this, I made a Reprap Stepper Motor Driver v1.2 parallel port adapter with <a href="http://kicad.sourceforge.net/wiki/index.php/Main_Page" >KiCad</a>.</p> <a href="http://www.flickr.com/photos/mantao05/5261514513/"><img src="http://farm6.static.flickr.com/5210/5261514513_f0ea2d10fa.jpg" alt="flickr:5261514513" class="image" /></a> <p>As soon as possible I will describe it in detail and will attach all files.</p> <p>Christoph</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-291261</guid>
				<title>Contraptor Firmware With XY, XZ, &amp; YZ arcs</title>
				<link>http://www.contraptor.org/forum/t-291261/contraptor-firmware-with-xy-xz-yz-arcs</link>
				<description></description>
				<pubDate>Mon, 13 Dec 2010 00:12:57 +0000</pubDate>
				<wikidot:authorName>MMarz</wikidot:authorName>				<wikidot:authorUserId>632172</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p><strong>Warning! I have not extensively tested this code. Do not leave your machine unattended while it is running. Let me know if you find any bugs. I take no responsibility for any damage that occurs from using this code.</strong></p> <p>I've modified the Contraptor firmware to include XZ and YZ arcs. The way I implemented this was by creating dummy indices I_Axis, J_Axis, &amp; K_axis. I-J is the plane that the arc resides in and K is always normal to it. So for XY arcs I = X, J = Y, &amp; K = Z. For XZ, I = X, J = Z, &amp; K = Y. Since the code originally only acted on the XY plane, I made it act on the new generic I-J plane. The way I set it up, the code will behave identically to the original unless you provide it with the g-codes G18 or G19. G18 = XZ plan. G19 = YZ plane. Although I did add a small fix to the way feedrates were handled after a change in the unit system. The original code would not change the units for the feedrate properly if an arc move immediately followed the unit change command.</p> <p>The syntax for arc moves goes like this:</p> <div class="code"> <pre> <code>G90 G20 G17 G1 X0.0 Y0.0 Z0.0 G3 X0.5 Y-0.5 I0.5 J0.0 G18 G1 X0.0 Y0.0 Z0.0 G3 X0.5 Z-0.5 I0.5 K0.0 G19 G1 X0.0 Y0.0 Z0.0 G3 Y0.5 Z-0.5 J0.5 K0.0</code> </pre></div> <p>That should draw the same quarter circle in all three planes. If you wanted to draw a helix, you can use the following command:</p> <div class="code"> <pre> <code>G90 G20 G18 G1 X0.0 Y0.0 Z0.0 G3 X0.5 Z-0.5 I0.5 K0.0 Y1.0</code> </pre></div> <p>G17 = XY plane, G18 = XZ plane, G19 = YZ plane.</p> <p><strong>Other bonuses in this code include:</strong><br /> -<a href="http://www.contraptor.org/forum/t-275140/reprap-new-firmware-1-16-microstepping-trouble#post-897494">arthurwolf microstepping fix</a> (I haven't tested this but he seems to know what he is doing)<br /> -<a href="http://www.contraptor.org/forum/t-192541/mini-cnc-case-study#post-749373">Albanetc's arc fix</a><br /> -Added M2, M3, M5 and M30 codes for starting and stopping your cutting head. Use TOOL_HEAD_PIN in _init to select which pin that will act on. Set it to -1 if you don't want to use it.<br /> -Added manual controls:</p> <ol> <li>-START_PAUSE pin is an analog pin connected to a pull down resistor and a high side switch. When switched to high, it exits all of the running code, and enters a while loop that allows you to jog the stage. The jogging isn't taken to account by the main program. So absolute positioning is not maintained. I used an analog pin for START_PAUSE, so that I can add other functions later.</li> <li>-TOOL_HEAD_SW_PIN will turn on the cutting head when the code is paused. If it is left high when you enter the paused loop, it must be toggled low and then high again to turn on the cutting head (safety feature).</li> <li>-HOLD_PIN will enable and disable all of the steppers. If it is left high when you enter the paused loop, it must be toggled low and then high again to turn on the steppers (safety feature).</li> <li>-MAX_MIN_PIN is an analog pin which all of the limit switches are connected to. A resistor ladder is used to differentiate between the limit switches. This is necessary when manually jogging if you want to back off of a limit switch. This also frees up more pins.</li> <li>-_LEFT_RIGHT are analog pins connected to pots to move the axis. 2.5V = no movement. 0V = fastest left. 5V = fastest right. All directions can be moved at once. I used an old gaming controller and wired the existing pots to my arduino.</li> </ol> <p>You can enable and disable the manual controls code by using MANUAL_ATTACH inside reprap_new_firmware_arc.pde. If you don't want the manual controls, set #define MANUAL_ATTACH 0 and the firmware should behave like the original.</p> <p>Here is the firmware: <a href="http://www.mediafire.com/?6756ivkwz7kk8ih">http://www.mediafire.com/?6756ivkwz7kk8ih</a></p> <p>(Small update: fixed an issue that caused the manual controls to not work.)</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-289349</guid>
				<title>Stepper motor driver problem</title>
				<link>http://www.contraptor.org/forum/t-289349/stepper-motor-driver-problem</link>
				<description></description>
				<pubDate>Sat, 04 Dec 2010 08:19:06 +0000</pubDate>
				<wikidot:authorName>MMarz</wikidot:authorName>				<wikidot:authorUserId>632172</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I am having a very strange issue. I am using a similar layout as the RepRap Stepper Motor Driver 1.2 except that I am wiring it together on perfboard myself. So three driver boards in all attached to three stepper motors. When everything is connected except the X stepper motor, the machine works fine. The Y and Z axis move smoothly. If I then connect the X stepper to its driver board (when everything is off) and then turn on the machine, the X axis works but the Y and Z stop functioning. The Y and Z hiss and stutter and sometimes they even start moving uncontrollably in one direction. The Y and Z motors also get hot. They act as if they are being short circuited in terms of heat output. My circuit deviates from version 1.2 in that all three drivers share a single V-ref pot. Also, they all share a single oscillator. I tried wiring the oscillator to one of the L297's and then connecting their sync lines, but the issue stayed the same. Can anyone think of what might be causing this? I don't see how adding the load on the x-driver board can cause the other two to stop working correctly.</p> <p>To show you visually what is happening:</p> <p>Arduino<br /> {X-driver}<br /> {Y-driver}-{Y-stepper}<br /> {Z-driver}-{Z-stepper}<br /> (Y and Z function correctly)</p> <p>Arduino<br /> {X-driver}-{X-stepper}<br /> {Y-driver}-{Y-stepper}<br /> {Z-driver}-{Z-stepper}<br /> (Only X functions correctly)</p> <p>Also, if the X stepper motor is attached, but I disable the X-driver using the L297 disable pin, then Y and Z works fine. I thought it might be a problem with my power supply. So I upgraded my power supply to one that had 3 times the calculated amperage, but the issue stayed the same. I know the motors are wired correctly because they all individually work. I only run into a problem when all of them are wired at once.</p> <p>Update: I tried replacing the L297 on the X driver but the problem remains. With X disabled, Y and Z function without hissing. With X enabled, strong hissing is heard and only X moves smoothly. I think my next step will be to try to replace the L298n on the X driver.</p> <p>Do you guys normally hear a hissing? I know the chopper is supposed to make a noise but when only Y and Z are enabled, I hear no hissing and they work perfectly.</p> <p>Update 2: <strong>Solved!!!</strong></p> <p>The problem had nothing to do with the X axis. I had combined all three stepper drives onto a single 3" by 4" board, and in doing so, I forgot to multiply the capacitor on the +5V line. When one of the steppers would stop at half a step, it would put a heavy load on the 5V side and the other chips would become unreliable (jitter, move, act crazy). I guess when I only had two motors enabled, the cap on the board could handle the load. I put a huge capacitor on the board and everything is running smoothly now. This is funny because I had assumed this was a problem with the 24V line. I already had a 4000uF cap on there and changed my power supply to a 24A one. I hope this helps someone else that runs into the same problem.</p> <p>Update 3: <strong>Solved Secondary Problem with Acrs</strong></p> <p>[<a href="http://www.contraptor.org/forum/t-192541/mini-cnc-case-study#post-749373">http://www.contraptor.org/forum/t-192541/mini-cnc-case-study#post-749373</a>]</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-287260</guid>
				<title>Gcode Sender Program</title>
				<link>http://www.contraptor.org/forum/t-287260/gcode-sender-program</link>
				<description>I made a GUI for sending gcode to arduino based CNC machines.</description>
				<pubDate>Fri, 26 Nov 2010 18:46:00 +0000</pubDate>
				<wikidot:authorName>MMarz</wikidot:authorName>				<wikidot:authorUserId>632172</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I didn't actually make this GUI. It was part of the <a href="http://cpwebste.blogspot.com/2010/05/hydra-mmm-v14-finally-released.html">Hydra MMM project</a>. I changed it so that it works with any arduino based cnc project. It is a GUI that connects to your Arduino, and then sends a gcode file, line by line to it. It has a visual representation of the tool head to show you the progress. It also shows you what lines it has already sent and the replies back from the Arduino. The only requirements are that your Arduino executes "println("start");" in setup{} and then uses "\n" to distinguish between lines of Gcode, and then the Arduino must send an "println("ok");" after each command it executes. If the Arduino sends a "huh", then that line will be skipped and the program will continue. If you use <a href="http://www.contraptor.org/arduino-gcode-interpreter">Chris Meighan's firmware</a>, you are good to go.</p> <p>The GUI is a Processing Sketch.<br /> You need to download the processing program <a href="http://processing.org/download/">here.</a><br /> Download the GUI sketch <a href="http://www.mediafire.com/?c3x163a90a9byex">here.</a></p> <p>Then run the processing.exe and open the GUI sketch, Gcode_Feeder_GUI.pde. Press the play button and the GUI pops up. The sketches have the same extension as Arduino sketches, so don't accidentally try to run the processing sketch with the Arduino IDE.</p> <p>To connect to the Arduino you can press "connect" and it will try every available port until it connects, or you can type in the com port and press enter. Example: "COM19" &lt;—The case matters.</p> <p>Let me know if you find any errors.</p> <p>This website has been a great help in my CNC build. Thanks for all of the information.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-286873</guid>
				<title>Iron ?</title>
				<link>http://www.contraptor.org/forum/t-286873/iron</link>
				<description></description>
				<pubDate>Wed, 24 Nov 2010 21:40:44 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>( sorry for the forum flood, I have time for contraptor these few days )<br /> What's the interrest of aluminium against other metals when choosing for something like contraptor ?</p> <p>I'm asking because I can get :</p> <ul> <li>1 meter of aluminium angle for 1,022 euros</li> <li>1 meter of cold rolled iron angle for 0,643 euros</li> </ul> <p>So the money concerns tell me to get iron, but something tells me aluminium was not choosen for nothing.<br /> What are the inconveniences and advantages of each and why was aluminium choosen for contraptor ?</p> <p>Thanks :)</p> <p>Edit : Also, in case this may be usefull to other metric folks, the website I'm planning to buy from ( delivers to France, Belgium and Netherlands ), it's the cheapest I found ( tell me if you find cheaper ) :&nbsp;<br /> The website is <a href="http://www.leboutte.be">leboutte.be</a><br /> Google translation : <a href="http://translate.google.fr/translate?js=n&amp;prev=_t&amp;hl=en&amp;ie=UTF-8&amp;layout=2&amp;eotf=1&amp;sl=auto&amp;tl=en&amp;u=http://www.leboutte.be/catalogue_FR_Metaux_aluminium.html&amp;act=url">Aluminium</a> and <a href="http://translate.google.fr/translate?hl=en&amp;sl=auto&amp;tl=en&amp;u=http://www.leboutte.be/catalogue_FR_Metaux_fer.html">Iron</a></p> <p>Edit 2: I just saw this : <a href="http://www.contraptor.org/forum/t-202736/">http://www.contraptor.org/forum/t-202736/</a> , gives me a short answer, but I'd still be curious to know a more.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-286763</guid>
				<title>Using the mini-cnc : needs documentation.</title>
				<link>http://www.contraptor.org/forum/t-286763/using-the-mini-cnc:needs-documentation</link>
				<description></description>
				<pubDate>Wed, 24 Nov 2010 10:53:30 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>So when you have finished building the mini-cnc and it's working, you have to generate gcode to use it.<br /> When you've never done it before, it's very hard to :&nbsp;<br /> - find tools that generate gcode<br /> - find documentation that makes sense<br /> - use them ( all of those I tried I gave up after an hour not understanding anything and not having generated any gcode, the interfaces and terms are very cryptic to me )</p> <p>Google did not give me any simple tutorial on anything, just bribes, and all suppose I already know a lot ( but maybe I&nbsp;also don't know what to look for ).</p> <p>Reprap has <a href="http://reprap.org/wiki/Mendel_User_Manual:_Host_Software">documentation</a> on how to use the reprap for 3d printing, but that's not of big use for everything else.</p> <p>Specifically what I'd like to learn how to do :&nbsp;<br /> - Drawing text ( <a href="http://www.timeguy.com/cradek/truetype">http://www.timeguy.com/cradek/truetype</a> produces gcode, but I don't get how to get the GUI, I just have CLI, and the gcode is filled with variables that need interpolation )<br /> - Drawing/Engraving circuit boards<br /> - Previewing the Gcode's effect before actually sending it to the machine ( something a bit like <a href="http://replicat.org/">http://replicat.org/</a> )<br /> - Carving 3D objects ( from Sketchup files ? :) )</p> <p>I'm sure there is a lot more to learn and a lot more to document also.<br /> Only basic info on how to get from 0 to a complete run for very simple cases ( with screenshots ) would help get on the train to learn further.</p> <p>Documentation on the contraptor site is very well done, but that part is missing ( in the Learn menu maybe ? ).<br /> This page has links : <a href="http://www.contraptor.org/motion-control">http://www.contraptor.org/motion-control</a>, I just saw cambam has <a href="http://www.cambam.info/vids/Introduction/">video</a> tutorials, going to look at them now.</p> <p>Just throwing an idea, I can't do it myself as I don't have the knowledge, and I&nbsp;think writing this documentation would take lots of work.</p> <p>Edit: spent a part of the day learning cambam, it' easier to get now that I have read the documentation, fills a lot of the gaps I'm asking here to fill, still, contraptor-centric documentation/introduction on it would be nice, maybe I can do it when I know more.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-284421</guid>
				<title>Easy first steps using contraptor</title>
				<link>http://www.contraptor.org/forum/t-284421/easy-first-steps-using-contraptor</link>
				<description>I need some help for an easy startup routine</description>
				<pubDate>Sun, 14 Nov 2010 18:26:01 +0000</pubDate>
				<wikidot:authorName>Buqpa</wikidot:authorName>				<wikidot:authorUserId>620840</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hello everyone and thanks in advance,<br /> First of all, I am a very newbie on Arduino and Contraptor, and I feel a little like "butter spread over too much bread"<br /> I have a contraptor machine, just XY axis one. I want it to make circles from a list of XY points but I can not find how to do it smoothly.<br /> I'm trying reading the contraptor routines, but I feel pretty lost.<br /> What I am trying to do is, from a list of X and Y coordinates, make the plotter do lines from one point to the other, just that, but I would like both axis to move at the same time (or at least as much as possible). Can anybody suggest me some code to start and have a look?</p> <p>Best,<br /> Diego</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-275140</guid>
				<title>Reprap_new_firmware + 1/16 microstepping = trouble</title>
				<link>http://www.contraptor.org/forum/t-275140/reprap-new-firmware-1-16-microstepping-trouble</link>
				<description></description>
				<pubDate>Wed, 13 Oct 2010 19:16:10 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hello.</p> <p>So, I'm still trying to get my mini-cnc to work with the pololu steeper drivers and my sanguino.<br /> I have run into some trouble, all of which seeming to be related to the fact that I use 1/16 micro steeping.</p> <p>This leads me to values like :</p> <div class="code"> <div class="hl-main"> <pre> <span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_STEPS_PER_MM</span><span class="hl-code"> </span><span class="hl-number">2500</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_MOTOR_STEPS</span><span class="hl-code"> </span><span class="hl-number">3200</span> </pre></div> </div> <p>Which the firmware seems not to like.</p> <p>First problem I ran into was the firmware didn't do accelerations for feed-rates superior to 217&nbsp;mm/m ( went directly to full speed ).<br /> I'm not sure who writes this firmware so I'm posting this here, tell me if you know who to report this to.<br /> Fix is, in stepper_control.pde , replace :</p> <div class="code"> <div class="hl-main"> <pre> <span class="hl-identifier">next_move_ptr</span><span class="hl-code">-&gt;</span><span class="hl-identifier">steps_to_accelerate</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-types">int</span><span class="hl-brackets">)</span><span class="hl-identifier">floor</span><span class="hl-brackets">(</span><span class="hl-identifier">square</span><span class="hl-brackets">(</span><span class="hl-identifier">master_axis_feedrate</span><span class="hl-brackets">)</span><span class="hl-code"> * </span><span class="hl-identifier">steps_per_unit</span><span class="hl-code"> / </span><span class="hl-brackets">(</span><span class="hl-code"> </span><span class="hl-number">120</span><span class="hl-code"> * </span><span class="hl-identifier">units_based_constants</span><span class="hl-brackets">[</span><span class="hl-identifier">MAX_ACCEL</span><span class="hl-brackets">]</span><span class="hl-code"> </span><span class="hl-brackets">))</span><span class="hl-code">;</span> </pre></div> </div> <br /> with: <div class="code"> <div class="hl-main"> <pre> <span class="hl-identifier">next_move_ptr</span><span class="hl-code">-&gt;</span><span class="hl-identifier">steps_to_accelerate</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-types">long</span><span class="hl-brackets">)</span><span class="hl-identifier">floor</span><span class="hl-brackets">(</span><span class="hl-identifier">square</span><span class="hl-brackets">(</span><span class="hl-identifier">master_axis_feedrate</span><span class="hl-brackets">)</span><span class="hl-code"> * </span><span class="hl-identifier">steps_per_unit</span><span class="hl-code"> / </span><span class="hl-brackets">(</span><span class="hl-code"> </span><span class="hl-number">120</span><span class="hl-code"> * </span><span class="hl-identifier">units_based_constants</span><span class="hl-brackets">[</span><span class="hl-identifier">MAX_ACCEL</span><span class="hl-brackets">]</span><span class="hl-code"> </span><span class="hl-brackets">))</span><span class="hl-code">;</span> </pre></div> </div> <br /> Otherwise you get negative values for values bigger than int, and it skips acceleration. <p>The second problem is one I'm still stuck with :<br /> During acceleration, at higher feedrates, the motor stops working after accelerating for a while. Depending on values, it might start working again when maximam speed is reached, then stop working again during deceleration.<br /> I asked on pololu forums, where I was told it may be resonnance from the stepper, or a problem with the signals my microcontroller sends.<br /> I disconnected the stepper driver, and connected a speaker on the step pin instead : the problem is with the signal the step pin sends.<br /> I have read most of the code for this pin, and still can't find where the problem is.<br /> Here is the detail of the problem:</p> <p>I have added the following code just before the end of the pin interrupt loop thing ( OCR1A = timer1LoadValue; ) :</p> <div class="code"> <div class="hl-main"> <pre> <span class="hl-code"> </span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-code"> </span><span class="hl-identifier">sequence_step_number</span><span class="hl-code"> % </span><span class="hl-number">100</span><span class="hl-code"> == </span><span class="hl-number">0</span><span class="hl-code"> </span><span class="hl-brackets">){</span><span class="hl-code"> </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">print</span><span class="hl-brackets">(</span><span class="hl-identifier">millis</span><span class="hl-brackets">()</span><span class="hl-code">-</span><span class="hl-identifier">last_dump</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">print</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string"> </span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">print</span><span class="hl-brackets">(</span><span class="hl-identifier">sequence_step_number</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">print</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string"> </span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">println</span><span class="hl-brackets">(</span><span class="hl-identifier">timer1LoadValue</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">last_dump</span><span class="hl-code"> = </span><span class="hl-identifier">millis</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-brackets">}</span> </pre></div> </div> <p>Note :&nbsp;the problem exists even without this debug code, it's not causing it, it just adds a bass line to the sound from the speaker.<br /> So now every 100 steps I get the time it took to do that step, the step's number, and the duration we will wait untill sending the next step signal.<br /> I made a graph with the data :&nbsp;</p> <a href="http://www.flickr.com/photos/arthurwolf/5079202984/"><img src="http://farm5.static.flickr.com/4108/5079202984_b3b47b8ede.jpg" alt="flickr:5079202984" class="image" /></a> <p>X is step number, green Y&nbsp;is timer1LoadValue, and red Y is the time the step took ( it's supposed to be the same as the green one ).</p> <p>What it looks like is that when the timer1LoadValue variable gets near 255 and 127, the steps take a lot longer to iterate than they should.<br /> These two values don't seem random, but I&nbsp;don't find the problem in the code.</p> <p>Anybody has an idea ?</p> <p>Thanks a lot !<br /> ( will post this in the reprap forums in a few days if no answer here )</p> <p>EDIT :&nbsp;</p> <p>To get only the iterations that are too long, I put the following debug code :</p> <div class="code"> <div class="hl-main"> <pre> <span class="hl-code"> </span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-code"> </span><span class="hl-brackets">(</span><span class="hl-types">double</span><span class="hl-brackets">)(</span><span class="hl-identifier">micros</span><span class="hl-brackets">()</span><span class="hl-code">-</span><span class="hl-identifier">last_dump</span><span class="hl-brackets">)</span><span class="hl-code"> &gt; </span><span class="hl-number">30000</span><span class="hl-code"> </span><span class="hl-brackets">){</span><span class="hl-code"> </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">print</span><span class="hl-brackets">((</span><span class="hl-types">double</span><span class="hl-brackets">)(</span><span class="hl-identifier">micros</span><span class="hl-brackets">()</span><span class="hl-code">-</span><span class="hl-identifier">last_dump</span><span class="hl-brackets">))</span><span class="hl-code">; </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">print</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string"> </span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">print</span><span class="hl-brackets">(</span><span class="hl-identifier">sequence_step_number</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">print</span><span class="hl-brackets">(</span><span class="hl-quotes">"</span><span class="hl-string"> </span><span class="hl-quotes">"</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Serial</span><span class="hl-code">.</span><span class="hl-identifier">println</span><span class="hl-brackets">(</span><span class="hl-identifier">timer1LoadValue</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-identifier">last_dump</span><span class="hl-code"> = </span><span class="hl-identifier">micros</span><span class="hl-brackets">()</span><span class="hl-code">;</span> </pre></div> </div> <p>Here is an example of the data this outputs :</p> <div class="code"> <pre> <code>start 1775536.00 2 23432 ok 32876.00 13308 246 32876.00 13315 246 32876.00 13322 246 32876.00 13379 244 32876.00 13510 244 32872.00 14889 232 32876.00 14910 232 32876.00 14916 232 32876.00 14964 232 32876.00 14989 232 32876.00 15010 232 32876.00 15183 230 32876.00 15218 230 32880.00 15234 230 32876.00 15249 230 32876.00 15252 230 32876.00 15265 230 32876.00 15330 228 32876.00 15334 228 32872.00 15367 228 32876.00 15383 228 32876.00 15589 226 32876.00 15748 226 32884.00 15758 226 32884.00 15764 226 32876.00 15779 226 32876.00 15791 226 32888.00 15793 226 32876.00 15795 226 32876.00 15797 226 32876.00 15799 226 32876.00 15801 226 32876.00 15805 226 32876.00 15807 226 32888.00 15809 226 32876.00 15811 226 32876.00 15813 226 32876.00 15815 226 32876.00 15817 224 32876.00 15831 224 32876.00 15841 224 32876.00 15853 224 32876.00 15862 224 32884.00 15866 224 32876.00 15870 224 32888.00 15877 224 32876.00 15881 224 32876.00 15886 224 32876.00 15896 224 32884.00 15930 224 32872.00 15962 224 32876.00 16030 224 32876.00 16036 224 32872.00 16053 224 32876.00 16063 224 32872.00 16068 224 32876.00 16073 224 32876.00 16096 222 32876.00 16103 224 32876.00 16119 222 32876.00 16130 222 32876.00 16133 222 32884.00 16136 222 32876.00 16148 222 32884.00 16152 222 32876.00 16159 222 32892.00 16182 222 32888.00 57610 214 32872.00 57661 214 32872.00 57666 214 32872.00 57676 216 32872.00 57682 216 32872.00 57726 216 32872.00 57880 216 32872.00 57891 216 32872.00 57899 216 32872.00 57927 216 32880.00 57935 216 32872.00 57939 216 32872.00 57950 216 32868.00 57956 216 32872.00 57968 216 32872.00 57979 218 32872.00 57989 218 32868.00 57991 218 32872.00 57993 216 32872.00 58015 218 32872.00 58024 218 32872.00 58026 218 32872.00 58035 218 32872.00 58050 218 32872.00 58055 218 32872.00 58067 218 32868.00 58073 218 32884.00 58099 218 32892.00 58129 218 32884.00 58498 220 32876.00 58538 220 32876.00 58558 220 32872.00 58571 220 32872.00 58574 220 32872.00 58601 222 32872.00 58612 222 32876.00 58614 222 32872.00 58616 222 32872.00 58661 222 32872.00 58803 222 32884.00 58823 222 32876.00 58838 222 32872.00 58850 222 32872.00 58866 222 32876.00 58872 222 32872.00 58878 222 32872.00 58886 224 32876.00 58898 224 32872.00 58922 222 32876.00 58935 224 32876.00 58952 224 32872.00 58958 224 32872.00 58973 224 32872.00 58997 224 32880.00 59086 224 32872.00 59166 224 32876.00 59183 226 32884.00 59200 226 32872.00 59217 226 32872.00 59252 226 32872.00 59258 226 32876.00 59301 226 32872.00 59426 226 32876.00 59435 226 32876.00 59456 226 32884.00 59489 228 32876.00 60514 236 32872.00 60942 238 32872.00 60949 238 32876.00 61045 240 32828.00 75002 120</code> </pre></div> <p>So it seems the loop lasts 32768 microseconds too long for some values.</p> <p>EDIT 2:</p> <p>Putting the last_dump = micros(); just after ISR(TIMER1_COMPA_vect) { shows the problem is not with the calculations being too long ( never lasts over 200microseconds ), so the problem is with the PWM thing.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-274259</guid>
				<title>Silenced motor mount.</title>
				<link>http://www.contraptor.org/forum/t-274259/silenced-motor-mount</link>
				<description></description>
				<pubDate>Mon, 11 Oct 2010 12:08:03 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>So, noise is a big concern for <a href="http://www.contraptor.org/forum/t-234948/mini-cnc-build-log">this build.</a><br /> I changed the threaded rods to not-bent ones, which made everything steadier, but it still made too much noise.</p> <p>So here is what I did to make it less noisy.<br /> The big idea is to not have metal touching metal between the motor and the machine.</p> <p>Material used:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5071448266/"><img src="http://farm5.static.flickr.com/4112/5071448266_6af034826f.jpg" alt="flickr:5071448266" class="image" /></a></p> <p>The small black rubber things come from a meccano set, I guess you can find something equivalent in an hardware store for cheap.<br /> I cut them in two to have more, and so that they are smaller.<br /> The black rubber band I don't know how it is named, it stretches, and becomes solid(er) once used, I use it a lot but I don't have a box for it, it's used for pipes I think.</p> <p>So step by step:</p> <p>Put rubber band around the bolt:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5070840817/"><img src="http://farm5.static.flickr.com/4127/5070840817_e63a80f881.jpg" alt="flickr:5070840817" class="image" /></a><br /> <a href="http://www.flickr.com/photos/arthurwolf/5071445418/"><img src="http://farm5.static.flickr.com/4153/5071445418_717aff3e68.jpg" alt="flickr:5071445418" class="image" /></a></p> <p>Add half rubber thingie:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5071446128/"><img src="http://farm5.static.flickr.com/4111/5071446128_007a6920e0.jpg" alt="flickr:5071446128" class="image" /></a></p> <p>Add to stepper:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5071450122/"><img src="http://farm5.static.flickr.com/4088/5071450122_7eaf8a7904.jpg" alt="flickr:5071450122" class="image" /></a></p> <p>Add another rubber thingie:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5070841251/"><img src="http://farm5.static.flickr.com/4085/5070841251_a39315d503.jpg" alt="flickr:5070841251" class="image" /></a></p> <p>Do that for two bolts:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5071449400/"><img src="http://farm5.static.flickr.com/4154/5071449400_0104150f4c.jpg" alt="flickr:5071449400" class="image" /></a></p> <p>Add motor mount:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5071448032/"><img src="http://farm5.static.flickr.com/4113/5071448032_c689b9f983.jpg" alt="flickr:5071448032" class="image" /></a></p> <p>Add rubber thingie:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5071447768/"><img src="http://farm5.static.flickr.com/4093/5071447768_a264356ed3.jpg" alt="flickr:5071447768" class="image" /></a></p> <p>Add nut:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5070839575/"><img src="http://farm5.static.flickr.com/4091/5070839575_9b60a9f231.jpg" alt="flickr:5070839575" class="image" /></a><br /> <a href="http://www.flickr.com/photos/arthurwolf/5071446538/"><img src="http://farm5.static.flickr.com/4128/5071446538_f36c29bff9.jpg" alt="flickr:5071446538" class="image" /></a></p> <p>It's the same thing to attach the motor mount to the machine:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5071445746/"><img src="http://farm5.static.flickr.com/4153/5071445746_8c6a10ff95.jpg" alt="flickr:5071445746" class="image" /></a></p> <p>And then:<br /> <a href="http://www.flickr.com/photos/arthurwolf/5071446908/"><img src="http://farm5.static.flickr.com/4124/5071446908_14b627474a.jpg" alt="flickr:5071446908" class="image" /></a></p> <p>And it's done.<br /> Once everything is together, parts can move a bit.<br /> That was not a problem for my X-axis, but for the Y-axis I had to add a third bolt ( but that may be due to another problem with the axis ).</p> <p>Now everything makes lots less noise, very calm and low sound :</p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/YtZvDgOBbwM?fs=1&amp;hl=fr_FR" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/YtZvDgOBbwM?fs=1&amp;hl=fr_FR" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-273788</guid>
				<title>Micro CNC / Laser</title>
				<link>http://www.contraptor.org/forum/t-273788/micro-cnc-laser</link>
				<description>Hacked a 3 Axis base from an old microscope, Busy converting it into a mini CNC</description>
				<pubDate>Sun, 10 Oct 2010 12:53:42 +0000</pubDate>
				<wikidot:authorName>Danieldk1</wikidot:authorName>				<wikidot:authorUserId>588971</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I'll post some more pictures later, but I am stuck with the contraptor software, I can control the rig perfectly with the current software config, but When I send the command to turn the laser off (I am using "extruder_speed" ) as my laser power control, because it controls pin 19 (analogue pin 5) which PWMs my laser…</p> <p>When I send the M code "M05" it should turn the laser off (pin 19 to GND), but instead, it turns it off, and before the next move starts, it turns back on again.. any suggestions ?<br /> The following snippet is from ""process_string.pde" where the commands are interpreted…</p> <div class="code"> <pre> <code> if (intCodesSeen &amp; M_CODE_SEEN) { switch (intVals[M_CODE_INDEX]) { //turn extruder on, case 03: // extruder_set_direction(1); extruder_set_speed(extruder_speed); //digitalWrite(EXTRUDER_MOTOR_SPEED_PIN,HIGH); //analogWrite(EXTRUDER_MOTOR_SPEED_PIN, extruder_speed); break; //turn extruder off case 05: // extruder_speed = 0; extruder_set_speed(0); //analogWrite(EXTRUDER_MOTOR_SPEED_PIN, 0); //digitalWrite(EXTRUDER_MOTOR_SPEED_PIN,LOW); break;</code> </pre></div> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-273404</guid>
				<title>Contraptor + Openstructures</title>
				<link>http://www.contraptor.org/forum/t-273404/contraptor-openstructures</link>
				<description>= contrapteur ?</description>
				<pubDate>Sat, 09 Oct 2010 20:00:40 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>So, now that I have my mini-cnc, I have this project of building a bigger machine ( with a moving area of about 90x40x15&nbsp;cm ).</p> <p>To do so, I want to use the <a href="http://www.openstructures.net/pages/1">openstructures</a> framework, but also contraptor, thus the idea of a 2cm-based contraptor clone. Work name is «contrapteur», that's how you would say contraptor in french if it were a word :)<br /> I already found a source for ( cheap I think, 1euro/m ) aluminium angles, 20mm sided, 2mm thick ( so 1/10 instead of 1/8, but I find contraptor parts heavy ( especially the finished mini-cnc is very heavy ) ) here : <a href="http://www.leboutte.be/catalogue_FR_Metaux_aluminium_corniere.html">http://www.leboutte.be/catalogue_FR_Metaux_aluminium_corniere.html</a><br /> I'm still searching for cheaper, I'll call local sellers when I get the phone installed.</p> <p>So angles will be 20mmx20mm, 2mm thickness, with 5mm holes.<br /> Here is a first draft:</p> <a href="http://www.flickr.com/photos/arthurwolf/5065150911/"><img src="http://farm5.static.flickr.com/4086/5065150911_42a3195c50.jpg" alt="flickr:5065150911" class="image" /></a> <p>Any idea, comments and critics are more than welcome.</p> <p>I want my big machine to be belt-driven, with X supporting Z supporting Y.<br /> I don't see how any of the contraptor moving elements could work of the X axis :</p> <ul> <li><a href="http://www.contraptor.org/make-sliding-elements">http://www.contraptor.org/make-sliding-elements</a> : too much friction, I think it would work good for Z like in the mini-cnc, but not for X</li> <li><a href="http://www.contraptor.org/make-linear-bearings">http://www.contraptor.org/make-linear-bearings</a> : the rails are at least 40cm away, that's very far for these, I don't see how to make it work.</li> <li>The <a href="http://www.flickr.com/photos/40642599@N07/5045628239/">beta</a> elements in vitaly's photostream seem nice, but I don't krow enough about these.</li> </ul> <p>At first I tough about using something like <a href="http://www.mcmaster.com/#catalog/116/1076/=97cjny">this</a> or <a href="http://www.mcmaster.com/#catalog/116/1070/=97cjus">this</a> but they are expensive, and not very contraptor-y.<br /> So I started designing something that works a bit like these, but can be made with contraptor components.<br /> It's based on very tiny ( 5mm ) bearings :</p> <a href="http://www.flickr.com/photos/arthurwolf/5065062061/"><img src="http://farm5.static.flickr.com/4150/5065062061_8544477b90.jpg" alt="flickr:5065062061" class="image" /></a> <p>Bolts not pictured here, but of course every bearing is supposed to be attached with 2mm bolts.</p> <p>For a rail bar with a 10mm diameter, the bearings fit just exactly inside the U element, and there is room at the bottom to support the rail so that it does not bend.</p> <p>Do you think this would work ?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-263107</guid>
				<title>Arduino G-code Interpreter</title>
				<link>http://www.contraptor.org/forum/t-263107/arduino-g-code-interpreter</link>
				<description></description>
				<pubDate>Mon, 06 Sep 2010 06:04:29 +0000</pubDate>
				<wikidot:authorName>sullivan21</wikidot:authorName>				<wikidot:authorUserId>557651</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hello,</p> <p>when I try to compile the reprap arduino firmware 1.3 I got this:</p> <p>error: 'char word [128]' redeclared as different kind of symbol</p> <p>what do I have to do ?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-257894</guid>
				<title>Question about construction of linear motion sets</title>
				<link>http://www.contraptor.org/forum/t-257894/question-about-construction-of-linear-motion-sets</link>
				<description></description>
				<pubDate>Mon, 09 Aug 2010 06:16:27 +0000</pubDate>
				<wikidot:authorName>Joheinz</wikidot:authorName>				<wikidot:authorUserId>528909</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hi all,</p> <p>I have a couple of questions about the construction of the linear motion sets:</p> <p><a href="http://www.contraptor.org/linear-rails-bearings-subset">http://www.contraptor.org/linear-rails-bearings-subset</a><br /> It says the rails use drill rod. Does that mean they have a thread? If yes, what for? Or is my understanding of English wrong, and a drill rod is a rod with a smooth surface?</p> <p><a href="http://www.contraptor.org/basics#toc5">http://www.contraptor.org/basics#toc5</a><br /> About the linear rails and ball bearings it says that the bearings are side loaded. Is that an engineering term which expresses that the bearings are fully on the rails, but a bit sideways? Is this design due to the fact that the slide can only move along one axis?</p> <p><a href="http://www.contraptor.org/make-shaft-mount">http://www.contraptor.org/make-shaft-mount</a><br /> The current design of shaft mounts uses screws to put the bearing in place. Why did'nt you simply drill a bigger hole in the angle and press the bearing inside?</p> <p>Thanks,<br /> Markus</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-257776</guid>
				<title>Metric Contraptor using lasercutting</title>
				<link>http://www.contraptor.org/forum/t-257776/metric-contraptor-using-lasercutting</link>
				<description>Use a lasercutter to create a metric contraptor prototype</description>
				<pubDate>Sun, 08 Aug 2010 17:37:52 +0000</pubDate>
				<wikidot:authorName>Joheinz</wikidot:authorName>				<wikidot:authorUserId>528909</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hi all,</p> <p>I started to prototype some angles using ponoko.com in order to create my own metric version of contraptor. My aim is to progress slowly as I am not so much an mechanical guy and I still need to figure out how some of the slinding elements, motor couplings, pulleys and rails work together.</p> <p>My first batch of laser cut angles can be seen here: <a href="http://justjoheinz.posterous.com/contraptor-teile">http://justjoheinz.posterous.com/contraptor-teile</a> It is just a small prototype production.</p> <p>MY next attempt will be to create linear motion kits and go large scale in the cutting of angles of bigger sizes. The acrylic parts seem to be reasonably stable. Of course they would not match the aluminium angles, but I guess it should be doable to construct e.g. the X-Y plotter.</p> <p>I would be delighted if others respond to this thread if there still exists interest in the metric version of contraptor. As I am not limited to exisiting aluminium profiles sizes, I can pretty much lasercut anything, as long as it is 3mm thick. So currently I try to design something which adheres to the grid style of contraptor, as I have not really found matching elements in metric versions of alumunium profiles, which would allow this.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-255992</guid>
				<title>Super mini bootstrap CNC</title>
				<link>http://www.contraptor.org/forum/t-255992/super-mini-bootstrap-cnc</link>
				<description></description>
				<pubDate>Wed, 28 Jul 2010 19:07:30 +0000</pubDate>
				<wikidot:authorName>Joheinz</wikidot:authorName>				<wikidot:authorUserId>528909</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hi all,</p> <p>I recently stumpled upon the contraptor site and love the idea of it. Since I live in Europe I would be looking into the metric contraptor and hope that it is still alive and kicking and making progress.</p> <p>Whilst I was thinking how I could acquire all the parts, I wondered if it is not possible to create a super mini cnc, which solves the only task of drilling the holes into say a 1m beam of the aluminium profiles. The meter could then be cut manually. That way one could basically bootstrap building parts of the complete kit, e.g. for building the CNC contraptor and one would require to purchase only a minimum set of new elements.</p> <p>When the material to be drilled is only the beams of profiles, it would save an axis and make the bootstrap CNC machine easier and simpler to build, wouldn't it? I'd love to hear from you,</p> <p>Markus</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-255283</guid>
				<title>sliding elements improvement</title>
				<link>http://www.contraptor.org/forum/t-255283/sliding-elements-improvement</link>
				<description>another way to make sliding elements</description>
				<pubDate>Sat, 24 Jul 2010 18:08:25 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I came up with a way of making the sliding elements for my X axis on my XY laser.</p> <p>I used ball bearings instead of the plastic channel.</p> <p>Each sliding element is powered by a belt (like the XY Plotter). Each sliding element has 4 bearings. Three to ride the angle frame and one for lateral stability. The three that ride the frame are two above and one below with an adjustable spacing.</p> <p>It seems to work really well.</p> <p>After I mount the pulleys, shafts and belts, I'll report back.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-255282</guid>
				<title>motor mount has extra material cut away?</title>
				<link>http://www.contraptor.org/forum/t-255282/motor-mount-has-extra-material-cut-away</link>
				<description>Why?</description>
				<pubDate>Sat, 24 Jul 2010 18:05:19 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Why does the motor mount have extra material cut away from the contraptor side?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-255135</guid>
				<title>shaft mount threads?</title>
				<link>http://www.contraptor.org/forum/t-255135/shaft-mount-threads</link>
				<description>What bit for the small bolts in the shaft mount?</description>
				<pubDate>Fri, 23 Jul 2010 20:52:15 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>The three little screws/bolts on the shaft mount. What drill size do I use to make the holes for them? Do I thread the holes?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-254011</guid>
				<title>making perforated angle</title>
				<link>http://www.contraptor.org/forum/t-254011/making-perforated-angle</link>
				<description>ideas of how to get the holes right</description>
				<pubDate>Sat, 17 Jul 2010 21:38:38 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I'm now cutting out aluminum angle to make the perforated angle.</p> <p>One of the suggested methods is "Using corner jig". Can someone tell me how to do that? I don't have any peg board and I'd like to get a few holes drilled.</p> <p>Thanks in advance…</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-253626</guid>
				<title>NEMA23 - which one</title>
				<link>http://www.contraptor.org/forum/t-253626/nema23-which-one</link>
				<description></description>
				<pubDate>Thu, 15 Jul 2010 17:23:12 +0000</pubDate>
				<wikidot:authorName>guibot</wikidot:authorName>				<wikidot:authorUserId>520367</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>hello all, my first post here :)</p> <p>I want to build a contraptor cnc, and for now I am gathering the best components list, and starting for the motors and looking at <a href="http://www.slidesandballscrews.com/stepper-motors-nema-stepper-motors-c-45_81.html">this list</a> I don't know what is the best nema23 to choose, looking for your best advice on this</p> <p>thank you in advance</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-251298</guid>
				<title>skin subset</title>
				<link>http://www.contraptor.org/forum/t-251298/skin-subset</link>
				<description>Under Subsets, what is the skin subset intended for?</description>
				<pubDate>Fri, 02 Jul 2010 21:34:06 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Under Subsets, what is the skin subset intended for?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-250305</guid>
				<title>Sliding elements</title>
				<link>http://www.contraptor.org/forum/t-250305/sliding-elements</link>
				<description>U channel substitute and longevity</description>
				<pubDate>Mon, 28 Jun 2010 04:18:06 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I've got two things on my mind for this.</p> <p>The U channel seems sort of tricky to get (I'll obviously break down and put in an order for it a McMaster if I can't find it locally). Is there another name for it or other materials that work?</p> <p>Second, what is the experience with longevity. My intuition is suggesting that the sliding elements might need a lot of adjustment. Any reports on that?</p> <p>Either way, I'll very likely use them on my first Contraptor since they clearly are simple and inexpensive.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-250303</guid>
				<title>XY Plot, teflon</title>
				<link>http://www.contraptor.org/forum/t-250303/xy-plot-teflon</link>
				<description>teflon-strip-0.5x0.125, is this required? Where does it go if so?</description>
				<pubDate>Mon, 28 Jun 2010 04:04:38 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I'm making an XY system and am using the XY Plot as a model. Where does the teflon-strip-0.5x0.125 go?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-250299</guid>
				<title>10 tooth pulley at sdp-si</title>
				<link>http://www.contraptor.org/forum/t-250299/10-tooth-pulley-at-sdp-si</link>
				<description>They are out of stock! Ahhhh!</description>
				<pubDate>Mon, 28 Jun 2010 03:03:33 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I just went to order some pulleys:</p> <p><a href="http://sdp-si.com/eStore/PartDetail.asp?Opener=Group&amp;PartID=29443&amp;GroupID=218">http://sdp-si.com/eStore/PartDetail.asp?Opener=Group&amp;PartID=29443&amp;GroupID=218</a>#</p> <p>They are out of stock!</p> <p>What to do? I was clicking around in <a href="http://www.mcmaster.com">http://www.mcmaster.com</a> but I'm a little unsure as there are a lot of parameters involved. Is this pulley in McMaster?</p> <p>Darcy</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-250092</guid>
				<title>Forum vs. Google Group</title>
				<link>http://www.contraptor.org/forum/t-250092/forum-vs-google-group</link>
				<description>What is the difference in purpose between these two systems?</description>
				<pubDate>Sat, 26 Jun 2010 21:37:43 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I'm curious if there is any intended difference between the two forums.</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-250045</guid>
				<title>belt drive for sliding elements</title>
				<link>http://www.contraptor.org/forum/t-250045/belt-drive-for-sliding-elements</link>
				<description>how to calculate contraptor belt sizes.</description>
				<pubDate>Sat, 26 Jun 2010 13:12:14 +0000</pubDate>
				<wikidot:authorName>generalSocial</wikidot:authorName>				<wikidot:authorUserId>506386</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I have two questions about belts.</p> <p>1) Given the contraptor 10 tooth pulleys, is the the forumla to get from shaft distance to belt size [Shaft Distance" * 2] + 2" = belt size. So if you need 100 inches between your shafts, then the belt size is XL202? Or if you want 30" between shafts, then it's XL600? Does this seem right?</p> <p>2) Is buying a bunch of open ended belt a good idea? Then we could support any contraptor shaft distance. I was thinking of this since belt sizes are not all even. At least with SPI and McMaster, not all shaft sizes (ones that are contraptor compatible) are supported.</p> <p>Any comments?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-234948</guid>
				<title>Mini-CNC Build log.</title>
				<link>http://www.contraptor.org/forum/t-234948/mini-cnc-build-log</link>
				<description>Day by day build log for my all new contraptor mini-cnc, will try documenting and hope it helps.</description>
				<pubDate>Sat, 17 Apr 2010 22:30:43 +0000</pubDate>
				<wikidot:authorName>arthurwolf</wikidot:authorName>				<wikidot:authorUserId>471107</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hello.</p> <p>I just received my mini-cnc subset ( thanks a lot ! ), and I'll try logging thing here as I build it.</p> <p>You can find all the pictures also on Flickr: <a href="http://www.flickr.com/photos/arthurwolf/sets/72157623876165406/">http://www.flickr.com/photos/arthurwolf/sets/72157623876165406/</a><br /> And the videos also on Youtube : <a href="http://www.youtube.com/user/chenillonage">http://www.youtube.com/user/chenillonage</a></p> <p>About the build, I'll build the miniCNC itself the exact way it is supposed to, but as I already have the electronics/motor, I'll use what I have, that is :<br /> - 3 x <a href="http://www.pololu.com/catalog/product/1201">Pololu Stepper motor driver</a> , 2A, 35V, Bipolar, 16 steps microstepping -&gt; 12,95$ each<br /> - 3 x <a href="http://www.alltronics.com/cgi-bin/item/28M066/search/Lin-Engineering-5718X-01E-01-bipolar-stepper-motor">5718X-01E Alltronics bipolar stepper motor</a>, nema23, 200 steps, 2A -&gt; 9,95 each<br /> - 1 x <a href="http://www.sparkfun.com/commerce/product_info.php?products_id=9218Sparkfun">Arduino pro mini</a> :&nbsp; 18.95$</p> <h1><span>Day 1.</span></h1> <p>Here = Spain, so it took like a week to ship.<br /> It came as two shipments, a tube for the long parts and a box for the rest.<br /> Nothing's missing, and everything is shinny and looks very cool.</p> <p>Picture of the package's content :</p> <img src="http://farm5.static.flickr.com/4067/4528270143_b9a6528da1.jpg" alt="4528270143_b9a6528da1.jpg" class="image" /> <p>Same thing, but with tape removed :</p> <img src="http://farm5.static.flickr.com/4014/4528941704_f1ed745348.jpg" alt="4528941704_f1ed745348.jpg" class="image" /> <p>So then I went online to <a href="http://www.contraptor.org/mini-cnc-subset">http://www.contraptor.org/mini-cnc-subset</a>, and started following instructions.</p> <p>For each part type I assembled, I recorded the last one I assembled and put it on Youtube.<br /> I had problems with finding a good spot for the camera, but then I realized I had tons of contraptor nearby :)<br /> So I made this camera stand wich worked perfectly :</p> <img src="http://farm5.static.flickr.com/4012/4528313857_9810d00a98.jpg" alt="4528313857_9810d00a98.jpg" class="image" /> <p>On this first day I assembled all components for which a detailed step by step instruction is available on the Wiki, namely :</p> <ul> <li><a href="http://www.contraptor.org/make-captive-nut#assembly">Captive nut</a></li> <li><a href="http://www.contraptor.org/make-shaft-mount#assembly">Shaft mount</a></li> <li><a href="http://www.contraptor.org/make-coupling-nut-clamp#assembly">Coupling nut clamp</a></li> <li><a href="http://www.contraptor.org/make-belt-clamp#assembly">Belt clamp</a></li> <li><a href="http://www.contraptor.org/make-sliding-elements#assembly">Sliding elements</a></li> <li><a href="http://www.contraptor.org/make-linear-bearings#assembly">Linear bearings</a></li> <li><a href="http://www.contraptor.org/make-linear-rail#assembly">Linear rails</a></li> </ul> <p>The assembly of the components was very easy, very fun, and took less long than I expected.<br /> The only difficulty was with the <a href="http://www.contraptor.org/make-coupling-nut-clamp#assembly">Coupling nut clamp</a>, the notches were not deep enough so I had to make them deeper, did not have the right tools, cut myself, but now it all fits good.</p> <p>Here are the videos for each of the 7 different component types :</p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/-__ebOzmz30&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/-__ebOzmz30&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/JQktCPAJxPk&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/JQktCPAJxPk&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/ny2UDbHv2uE&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/ny2UDbHv2uE&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/xitWQAEetAI&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/xitWQAEetAI&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/ItZXL3O19Wk&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/ItZXL3O19Wk&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/W0BrH1Pa5fA&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/W0BrH1Pa5fA&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/j5fR8xOQJTY&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/j5fR8xOQJTY&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p>Pictures of the finished components :</p> <p>Linear rails :<br /> <a href="http://www.flickr.com/photos/arthurwolf/4530293651/"><img src="http://farm5.static.flickr.com/4057/4530293651_61ae4b1390.jpg" alt="flickr:4530293651" class="image" /></a></p> <p>Linear bearings :<br /> <a href="http://www.flickr.com/photos/arthurwolf/4530291567/"><img src="http://farm5.static.flickr.com/4068/4530291567_fd73c56643.jpg" alt="flickr:4530291567" class="image" /></a></p> <p>Captive nut, Belt clamp, Shaft mount :&nbsp;<br /> <a href="http://www.flickr.com/photos/arthurwolf/4530922112/"><img src="http://farm5.static.flickr.com/4060/4530922112_935d93940e.jpg" alt="flickr:4530922112" class="image" /></a></p> <p>Sliding elements :<br /> <a href="http://www.flickr.com/photos/arthurwolf/4530285007/"><img src="http://farm5.static.flickr.com/4070/4530285007_07cd48161b.jpg" alt="flickr:4530285007" class="image" /></a></p> <h1><span>Day 2</span></h1> <p>So now I'm in no-documentation territory, the real fun begins.<br /> Well that's not completely true, there are lots of good pictures of the different steps, that should count as documentation.</p> <p>Today I assembled/filmed the assembly of the base, the y-axis rail, and the x-axis rail and wagon.<br /> Nothing much to be noted, except that you really really want to follow the instructions right.<br /> On day one for the linear bearing elements, I did not follow the part where you have to exactly ajust to 1/8", and today it caused me a lot of trouble when making the x-axis.</p> <p>Assembly of the y-axis rail :</p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/2fZsjLN_DdY&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/2fZsjLN_DdY&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p>Assembly of the base subassembly, made 3 videos, one for the back, one for the front, and one for joining them.</p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/7TlccLboE3w&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/7TlccLboE3w&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/YEi4jHxYcDo&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/YEi4jHxYcDo&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/TMt35Ey9noQ&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/TMt35Ey9noQ&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p>The x axis rail :&nbsp;</p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/veLR58g8YoQ&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/veLR58g8YoQ&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p>The x axis stage :</p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/RDh39LPVw3g&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/RDh39LPVw3g&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p>Now pictures of each finished subassembly :</p> <p>Y-axis rail subassembly :<br /> <a href="http://www.flickr.com/photos/arthurwolf/4534447303/"><img src="http://farm3.static.flickr.com/2680/4534447303_270c78d8f5.jpg" alt="flickr:4534447303" class="image" /></a></p> <p>Base subassembly :<br /> <a href="http://www.flickr.com/photos/arthurwolf/4534386541/"><img src="http://farm3.static.flickr.com/2718/4534386541_8cc89af7b3.jpg" alt="flickr:4534386541" class="image" /></a></p> <p>X-axis rail and stage subassembly :<br /> <img src="http://www.flickr.com/photos/arthurwolf/4534989048/" alt="4534989048" class="image" /></p> <h1><span>Day 3.</span></h1> <p>Bad surprise today, flickr does not want more pictures, have to wait until next month … so no pictures.</p> <p>Everytime I post a video, Albanetc checks it and give me tons of precisions and cool advices, it helps a lot. I try getting the more of that as I can into the video annotations. OSH things rock !</p> <p>So today I attached the Y-axis to the base, and made the Z-axis.<br /> Just following the pictures, simple, a few things to figure out, but nothing hard.</p> <p>Here are the videos :</p> <p>Y-axis to base subassembly :</p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/QLJIbG8acSs&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/QLJIbG8acSs&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p>Z-axis, 4 parts :&nbsp;</p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/L0Q7R-JaHIw&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/L0Q7R-JaHIw&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/BbQ02zdaFZ4&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/BbQ02zdaFZ4&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/oZYvjE0uOgc&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/oZYvjE0uOgc&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/efuB9sSBcJ8&amp;hl=en_US&amp;fs=1&amp;" /> <param name="allowFullScreen" value="true" /> <param name="allowscriptaccess" value="always" /> <embed src="http://www.youtube.com/v/efuB9sSBcJ8&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385" /></object></p> <p>Will make more when have time.<br /> Thanks for reading.</p> <p><sub>TODO: Make video to explain the 1/8" thing with the linear bearings</sub><br /> <sub>TODO: Add youtube's subtitle thing to the video where it can help understand</sub></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-230846</guid>
				<title>Contraptor firmware to replicatorg</title>
				<link>http://www.contraptor.org/forum/t-230846/contraptor-firmware-to-replicatorg</link>
				<description>unable to use replicatorg with the arduino software.</description>
				<pubDate>Wed, 31 Mar 2010 05:34:19 +0000</pubDate>
				<wikidot:authorName>toddtheman</wikidot:authorName>				<wikidot:authorUserId>462842</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>What is required to use replicatorg with the Arduino G-Code Interpreter? What are the correct machine.xml options? I have tried to use the standard cupcake driver with no success. I have also used the serial passthrough driver. Thanks</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-223220</guid>
				<title>Settings for Arduino G-Code Interpreter? (solved)</title>
				<link>http://www.contraptor.org/forum/t-223220/settings-for-arduino-g-code-interpreter-solved</link>
				<description>From Arduino Firmware v1.3 to reprap_new-firmware, basic Gcode, limit switches and so on</description>
				<pubDate>Mon, 01 Mar 2010 17:40:59 +0000</pubDate>
				<wikidot:authorName>gatonero</wikidot:authorName>				<wikidot:authorUserId>406275</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hi Contraptionists,</p> <p>I assembled my Mini CNC and I'm looking forward for making some controlles GCode movements. Until now it moves, but not as I expect.</p> <p>First of all a descripion of my environment with some specifications.</p> <h1><span>Hardware</span></h1> <ul> <li><a href="http://arduino.cc/en/Main/ArduinoBoardDuemilanove" >Arduino Board Duemilanove with Atmega328</a></li> <li><a href="http://reprap.org/bin/view/Main/Stepper_Motor_Driver_1_2" >Reprap Stepper Motor Driver v1.2</a></li> <li><a href="http://www.contraptor.org/mini-cnc" >Mini CNC</a> with threaded-rods 1/4-20</li> <li><a href="http://www.alltronics.com/cgi-bin/item/25M002/55/Applied-Motion-Products-44A501711-unipolar-stepper-motor" >Alltronics #44A501711 NEMA23 motors</a></li> </ul> <p>Unipolar stepper motor. This motor is a NEMA size 23. Specs are 60 in/oz Holding Torque, 200 steps/rev, 2.3V, 2.3A, DC, 80&nbsp;C degree Rise</p> <h1><span>Software, Firmware</span></h1> <ul> <li><a href="http://arduino.cc/en/Main/Software" >IDE Arduino 0018, Linux 64bit</a></li> <li><a href="http://sourceforge.net/projects/reprap/files/Arduino%20Firmware/" >Arduino Firmware v1.3</a></li> </ul> <p>According to the explanations on <a href="http://reprap.org/bin/view/Main/Arduino_GCode_Interpreter" >Arduino G-Code Interpreter</a> I'm using the following settings in the file _init.pde</p> <div class="code"> <div class="hl-main"> <pre> <span class="hl-comment">// define the parameters of our machine.</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_STEPS_PER_INCH</span><span class="hl-code"> </span><span class="hl-number">4000</span><span class="hl-code"> </span><span class="hl-comment">// 200 steps/rev + 20 threads per inch * steps in a revolution</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_STEPS_PER_MM</span><span class="hl-code"> </span><span class="hl-number">157.480315</span><span class="hl-code"> </span><span class="hl-comment">// *_STEPS_PER_INCH / 25.4</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_MOTOR_STEPS</span><span class="hl-code"> </span><span class="hl-number">200</span><span class="hl-code"> </span><span class="hl-comment">// to double because of half stepping? X_STEPS_PER_INCH also?</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Y_STEPS_PER_INCH</span><span class="hl-code"> </span><span class="hl-number">4000</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Y_STEPS_PER_MM</span><span class="hl-code"> </span><span class="hl-number">157</span><span class="hl-code">,</span><span class="hl-number">480315</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Y_MOTOR_STEPS</span><span class="hl-code"> </span><span class="hl-number">200</span><span class="hl-code"> </span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Z_STEPS_PER_INCH</span><span class="hl-code"> </span><span class="hl-number">4000</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Z_STEPS_PER_MM</span><span class="hl-code"> </span><span class="hl-number">157</span><span class="hl-code">,</span><span class="hl-number">480315</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Z_MOTOR_STEPS</span><span class="hl-code"> </span><span class="hl-number">200</span><span class="hl-code"> </span><span class="hl-comment">//our maximum feedrates</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">FAST_XY_FEEDRATE</span><span class="hl-code"> </span><span class="hl-number">1200.0</span><span class="hl-code"> </span><span class="hl-comment">// just a assumption</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">FAST_Z_FEEDRATE</span><span class="hl-code"> </span><span class="hl-number">1200.0</span><span class="hl-code"> </span><span class="hl-comment">// just a assumption</span><span class="hl-code"> </span><span class="hl-comment">// Units in curve section</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">CURVE_SECTION_INCHES</span><span class="hl-code"> </span><span class="hl-number">0.019685</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">CURVE_SECTION_MM</span><span class="hl-code"> </span><span class="hl-number">0.5</span><span class="hl-code"> </span><span class="hl-comment">// Set to one if sensor outputs inverting (ie: 1 means open, 0 means closed)</span><span class="hl-code"> </span><span class="hl-comment">// RepRap opto endstops are *not* inverting.</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">SENSORS_INVERTING</span><span class="hl-code"> </span><span class="hl-number">0</span><span class="hl-code"> </span><span class="hl-comment">// How many temperature samples to take. each sample takes about 100 usecs.</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">TEMPERATURE_SAMPLES</span><span class="hl-code"> </span><span class="hl-number">5</span><span class="hl-code"> </span><span class="hl-mlcomment">/**************************************************************************************** * digital i/o pin assignment * * this uses the undocumented feature of Arduino - pins 14-19 correspond to analog 0-5 ****************************************************************************************/</span><span class="hl-code"> </span><span class="hl-comment">//cartesian bot pins, settings for Contraptor wiring</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_STEP_PIN</span><span class="hl-code"> </span><span class="hl-number">3</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_DIR_PIN</span><span class="hl-code"> </span><span class="hl-number">4</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_ENABLE_PIN</span><span class="hl-code"> </span><span class="hl-number">5</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_MIN_PIN</span><span class="hl-code"> </span><span class="hl-number">6</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">X_MAX_PIN</span><span class="hl-code"> </span><span class="hl-number">7</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Y_STEP_PIN</span><span class="hl-code"> </span><span class="hl-number">8</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Y_DIR_PIN</span><span class="hl-code"> </span><span class="hl-number">9</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Y_ENABLE_PIN</span><span class="hl-code"> </span><span class="hl-number">10</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Y_MIN_PIN</span><span class="hl-code"> </span><span class="hl-number">11</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Y_MAX_PIN</span><span class="hl-code"> </span><span class="hl-number">12</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Z_STEP_PIN</span><span class="hl-code"> </span><span class="hl-number">14</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Z_DIR_PIN</span><span class="hl-code"> </span><span class="hl-number">15</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Z_ENABLE_PIN</span><span class="hl-code"> </span><span class="hl-number">16</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Z_MIN_PIN</span><span class="hl-code"> </span><span class="hl-number">17</span><span class="hl-code"> </span><span class="hl-prepro">#define</span><span class="hl-code"> </span><span class="hl-identifier">Z_MAX_PIN</span><span class="hl-code"> </span><span class="hl-number">18</span><span class="hl-code"> </span><span class="hl-comment">// I kicked off the extruder stuff</span> </pre></div> </div> <p>If I use these GCode commands</p> <div class="code"> <pre> <code>G3 X0 Y0 I1 J0 F10</code> </pre></div> <p>the Mini CNC just makes very little movements, but not movements you can see here for example <a href="http://www.flickr.com/photos/40642599@N07/4089099448/"><img src="http://farm3.static.flickr.com/2490/4089099448_2ab0c3b18b.jpg" alt="flickr:4089099448" class="image" /></a>. I also doubled the values for *_STEPS_PER_INCH, *_STEPS_PER_MM and *_MOTOR_STEPS without any success.</p> <p>Where is my shortcoming?</p> <p>Please help!</p> <p>Christoph</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-218353</guid>
				<title>Beta kits feedback</title>
				<link>http://www.contraptor.org/forum/t-218353/beta-kits-feedback</link>
				<description></description>
				<pubDate>Thu, 11 Feb 2010 18:37:55 +0000</pubDate>
				<wikidot:authorName>Albanetc</wikidot:authorName>				<wikidot:authorUserId>381022</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>This is the thread to discuss beta kits</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-217936</guid>
				<title>Production updates</title>
				<link>http://www.contraptor.org/forum/t-217936/production-updates</link>
				<description>This thread is for updates on the production of angle (and other components in the future)</description>
				<pubDate>Wed, 10 Feb 2010 06:39:21 +0000</pubDate>
				<wikidot:authorName>Albanetc</wikidot:authorName>				<wikidot:authorUserId>381022</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Today we started testing the jig for drilling the angle on Shopbot. Designed and cut by Mike Gittelsohn, the jig is basically a 2'x4' double-layered MDF bed with 9x2 symmetrical channels where 4' lengths of angle are placed and clamped by the third sheet of MDF that goes on top. Several dowels align the sheets relative to each other and to the Shopbot table.</p> <p>Opened up the jig after drilling one 4' length:<br /> <a href="http://www.flickr.com/photos/40642599@N07/4345624788/" target="_blank"><img src="http://farm5.static.flickr.com/4019/4345624788_5ceb03429d.jpg" alt="flickr:4345624788" class="image" /></a></p> <p>Small error in X (about 0.03", we didn't zero the head properly):<br /> <a href="http://www.flickr.com/photos/40642599@N07/4345624888/" target="_blank"><img src="http://farm5.static.flickr.com/4056/4345624888_cb9e15073f.jpg" alt="flickr:4345624888" class="image" /></a></p> <p>The angle looks pretty good and might require no countersinking which would be a huge time saver:<br /> <a href="http://www.flickr.com/photos/40642599@N07/4345625102/" target="_blank"><img src="http://farm5.static.flickr.com/4069/4345625102_3263907e41.jpg" alt="flickr:4345625102" class="image" /></a></p> <p>The holes were not exactly drilled, but cut with 1/4" spiral O-flute carbide router bit for aluminum: <a href="http://www.amanatool.com/cncroutingdetails/aluminum-cnc-spiral-bit-51402.html">http://www.amanatool.com/cncroutingdetails/aluminum-cnc-spiral-bit-51402.html</a>. We started out at about 10 IPM for Z down feedrate and quickly dropped it to 5 IPM, then to one pecking cycle and then to about 1 IPM.</p> <p>We still have the following problems to solve:</p> <ul> <li>Even though the channels seem to be tight, the angle moves lengthwise in the channels. This should be easily fixed by adding some restraints at one end of the channels.</li> <li>There is noticeable vibration in the gantry and Z stage when it's over the middle part of the jig. This might be more difficult to solve.</li> </ul> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-207116</guid>
				<title>Installing GCode Interpreter</title>
				<link>http://www.contraptor.org/forum/t-207116/installing-gcode-interpreter</link>
				<description></description>
				<pubDate>Sun, 27 Dec 2009 22:45:42 +0000</pubDate>
				<wikidot:authorName>gatonero</wikidot:authorName>				<wikidot:authorUserId>406275</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hi guys,</p> <p>I didn't understand the instructions how to install the GCode interpreter</p> <p>In <a href="http://www.contraptor.org/arduino-gcode-interpreter">arduino-gcode-interpreter</a> is written to get an idea to look at <a href="http://reprap.org/bin/view/Main/Arduino_GCode_Interpreter" >http://reprap.org/bin/view/Main/Arduino_GCode_Interpreter</a> but to use Chris Meighan's rewrite.</p> <p>How meets the rewritten interpreter the installation instructions on <a href="http://reprap.org/bin/view/Main/Arduino_GCode_Interpreter" >http://reprap.org/bin/view/Main/Arduino_GCode_Interpreter</a></p> <blockquote> <p>Installation</p> <p>Once you download the proper files, there are a couple steps you need to do:</p> <p>1. Copy the folders in reprap-arduino-firmware-x.y/library to arduino-00xx/hardware/libraries<br /> 2. Open the GCode_Interpreter sketch in reprap-arduino-firmware-x.y/gcode/GCode_Interpreter/GCode_Interpreter.pde with the Arduino software.<br /> 3. Configure the firmware (see below)<br /> 4. Upload the sketch to your Arduino.</p> </blockquote> <p>Step 1: Do I have to make a new folder under arduino-00xx/hardware/libraries for example arduino-00xx/hardware/libraries/reprap_new_firmware and put the files reprap_new_firmware.h, reprap_new_firmware.pde and ThermistorTable.h into it?</p> <p>Step 2: Do I have to download the original interpreter and open the files from step2?</p> <p>Maybe the answer should be posted in <a href="http://www.contraptor.org/arduino-gcode-interpreter">arduino-gcode-interpreter</a></p> <p>TIA<br /> Christoph</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-206390</guid>
				<title>ETA of Pre Order kits?</title>
				<link>http://www.contraptor.org/forum/t-206390/eta-of-pre-order-kits</link>
				<description></description>
				<pubDate>Wed, 23 Dec 2009 23:57:01 +0000</pubDate>
				<wikidot:authorName>sparr</wikidot:authorName>				<wikidot:authorUserId>394934</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>I was considering pre-ordering a set of beta kits (all of them) but am concerned that the page still lists an estimated shipping date in the past. Can anyone clear this up?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-204793</guid>
				<title>Experimeantal Ideas / Equipment</title>
				<link>http://www.contraptor.org/forum/t-204793/experimeantal-ideas-equipment</link>
				<description>A list of stuff that might be cool to incorporate into contraptor projects.</description>
				<pubDate>Wed, 16 Dec 2009 17:55:33 +0000</pubDate>
				<wikidot:authorName>ril3y</wikidot:authorName>				<wikidot:authorUserId>390237</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>This is a ad-hoc un-official thread to toss "neat" hardware designs / tools / equipment in. I will start it out.</p> <p>1/8" Mini-Drilling Head<br /> <a href="http://www.harborfreight.com/cpi/ctaf/displayitem.taf?Itemnumber=47869">http://www.harborfreight.com/cpi/ctaf/displayitem.taf?Itemnumber=47869</a></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-203008</guid>
				<title>Magnetic Linear Encoder</title>
				<link>http://www.contraptor.org/forum/t-203008/magnetic-linear-encoder</link>
				<description>Single Sided Magnetic Linear Encoder Board</description>
				<pubDate>Wed, 09 Dec 2009 14:26:17 +0000</pubDate>
				<wikidot:authorName>ril3y</wikidot:authorName>				<wikidot:authorUserId>390237</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <img src="http://farm5.static.flickr.com/4037/4170343861_a73cac42f2.jpg" alt="4170343861_a73cac42f2.jpg" class="image" /> <p><a href="http://www.example.com">http://blog.synthetos.com/magnetic-linear-encoder-and-it-works/</a> - Blog Link<br /> <a href="http://www.example.com">http://www.thingiverse.com/thing:1409</a> - Thingiverse Entry + Files</p> <p>Here is a board I designed (derivative work from Zach Hokken) that uses the AS5306 austriamicro systems chip. Its still in the beta stages here. But hopefully we will be able to close the loop on the mini cnc (or any other contraptions in the future). Meaning instead of saying take 5 clockwise steps then moving on. You can actually say take 5 steps…. Did you take 5 steps? Yup.. Then move on.</p> <p>Few challenges:</p> <ol> <li>Understand the multipole linear magent design needed</li> <li>Test with a Oscope/logic analyzer</li> <li>Code some more hello world programs to test with arduino</li> <li>Finalize connectors. Zach's board uses CDROM audio cables. Perhaps we stay with this.</li> <li>Change the BLUE LEDS!!! Wayy to bright.</li> </ol> <p>Ril3y</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-202736</guid>
				<title>Revising the design</title>
				<link>http://www.contraptor.org/forum/t-202736/revising-the-design</link>
				<description>Steel punched angle, and multitasked</description>
				<pubDate>Tue, 08 Dec 2009 04:42:05 +0000</pubDate>
				<wikidot:authorName>Hephyyc</wikidot:authorName>				<wikidot:authorUserId>413702</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>G'day Folks,</p> <p>Just looking for some input; found the contraptor - I like the general theory… But - want to make some revisions :)</p> <p>What I was thinking is a dual purpose design; Thinking about doubling the X-axis and running a reprap extruder on one side, and dremel on the other… Then depending on what task - it's able to do either (i'm thinking pcb routing/drilling (nothing too fine - typical dip components) and the occasional hunk of plastic/aluminum) Then have the extruder on the other side of the gantry - so there's little more than a flip of a switch to retask the machine…</p> <p>However, after some investigation - I'm having a hard time with the aluminum angle; stuffs rather expensive (I'm of scottish descent! this is a problem!) However I have this never ending supply of punched angle (steel) - 1.5"x1.5"x16ga - 5/16" holes at 1" o/c spacing. Nice thing is - it's cheap (looking today - about 1/4 the price of the aluminum - and no holes to drill) - easily found (home depot/lowes/canadian tire/rona/walmart carry it). One major difference, it has a rolled edge (~1/2" radius bend) instead of the nicely extruded sharp 90.</p> <p>Wondering - what you guys think - is my thinking flawed, any major issues I'll run into if I use the steel angle instead of the aluminum?</p> <p>Thanks in advance,</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-199776</guid>
				<title>Contraptor mechanical related questions</title>
				<link>http://www.contraptor.org/forum/t-199776/contraptor-mechanical-related-questions</link>
				<description>Questions about rails, angles, sliders etc.</description>
				<pubDate>Wed, 25 Nov 2009 11:26:44 +0000</pubDate>
				<wikidot:authorName>gatonero</wikidot:authorName>				<wikidot:authorUserId>406275</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>The photos of the sliding elements 1 and 2,5 show pattern of three little holes, the sketup files don't. Are these holes necessary, for what are they used?</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-193855</guid>
				<title>noise control</title>
				<link>http://www.contraptor.org/forum/t-193855/noise-control</link>
				<description></description>
				<pubDate>Wed, 04 Nov 2009 05:59:44 +0000</pubDate>
				<wikidot:authorName>tdrecordable</wikidot:authorName>				<wikidot:authorUserId>397238</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hey there crew,</p> <p>I've been looking at some of the videos out there using the contraptor and i noticed that they all put out quite a bit of noise. I was thinking about building one for an art project (eg gallery space.) and was wondering if the contraptor's steppers are loud or are there any views out there on contraptor noises?</p> <p>thanks,</p> <p>t</p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://www.contraptor.org/forum/t-193480</guid>
				<title>Testing out this concept.</title>
				<link>http://www.contraptor.org/forum/t-193480/testing-out-this-concept</link>
				<description>I came across this project from makezine. I really like the idea and have been doing a small number of trials to evaluate.</description>
				<pubDate>Mon, 02 Nov 2009 20:12:07 +0000</pubDate>
				<wikidot:authorName>cdegroot</wikidot:authorName>				<wikidot:authorUserId>397518</wikidot:authorUserId>				<content:encoded>
					<![CDATA[
						 <p>Hi guys,</p> <p>great work on the concept and web site, it is the best I have seen for this sort of maker project. Very impressive.</p> <p>I am based in Canada and have previously built a demo Cartesian CNC router. More for the build experience then the use. My background in a little more on the electronics side.</p> <p>I have found a couple things that I wanted to comment on.</p> <p>1. Drilling the aluminum is really hit or miss. Even with guiding the drill bit with a center punch or a smaller guiding hole. I gave up on that, I had a couple brass 1/4 inch bushings which I used to make a jig for guiding the holes. This was much more successful.<br /> 2. We have several sources of Aluminum angles (Home Depot, Canadian Tire, Princess Auto etc) but they are all much more expensive then www.metalsupermarkets.com. They seem to be about half the price and will cut to required lengths. I will try them if I decide to go ahead with a larger set.<br /> 3. I'm a but worried about mounting Motors. Especially steppers they can cause a lot of vibration. I will likely make a more elaborate mount and let you know how it goes.<br /> 4. I saw you had a question on micro stepping stepper motors. Yes this will reduce vibrations. For small bipolar steppers I find this driver to be good EasyDriver <a href="http://www.sparkfun.com/commerce/product_info.php?products_id=9402">http://www.sparkfun.com/commerce/product_info.php?products_id=9402</a>. For larger unipolar steppers it is hard to beat the kits from <a href="http://www.hobbycnc.com/">http://www.hobbycnc.com/</a>.<br /> 5. I'm definitely worried about the linear the linear components. Have a look at this website for some ideas <a href="http://buildyourcnc.com/default.aspx">http://buildyourcnc.com/default.aspx</a> , they have moved to v-groove bearings, but before that they used aluminum angles which may work for us here in some configuration.<br /> 6. I am likely going to use micro switches for stops. This allows a stop to break a closed circuit. It is also nice because it will not bind the motion of the axis.</p> <p>Hopefully this is helpful.</p> <p>Kind Regards C.</p> 
				 	]]>
				</content:encoded>							</item>
				</channel>
</rss>
