{"id":33,"date":"2014-03-24T14:38:00","date_gmt":"2014-03-24T14:38:00","guid":{"rendered":"https:\/\/blog.hslracing.com\/3dprinters\/2014\/03\/24\/its-alive\/"},"modified":"2021-06-08T18:46:28","modified_gmt":"2021-06-08T17:46:28","slug":"its-alive","status":"publish","type":"post","link":"https:\/\/blog.hslracing.com\/3dprinters\/2014\/03\/its-alive.html","title":{"rendered":"It&#8217;s Alive&#8230;"},"content":{"rendered":"<p>I finally managed to find some time to complete the wiring, well, not quite complete, because I still have yet to buy the pins for the extruder motor connector, but sufficiently complete that I could test it out.<\/p>\n<p>I cut a 200 x 200mm piece of glass from one of the many sheets I have saved from various scrapped scanners and all-in-one printers, using a glass cutter I bought on <a href=\"http:\/\/www.ebay.co.uk\/\">Ebay<\/a>&nbsp;for the Princely sum of \u00a31.85 with free postage.<\/p>\n<div style=\"clear: both;text-align: center\"><a href=\"http:\/\/1.bp.blogspot.com\/-FPOONitadp0\/Uy_4c6A_G8I\/AAAAAAAAA8I\/rSucYuwarKo\/s1600\/glass+cutter.png\" style=\"margin-left: 1em;margin-right: 1em\"><img loading=\"lazy\" decoding=\"async\" border=\"0\" src=\"http:\/\/1.bp.blogspot.com\/-FPOONitadp0\/Uy_4c6A_G8I\/AAAAAAAAA8I\/rSucYuwarKo\/s1600\/glass+cutter.png\" height=\"208\" width=\"320\" \/><\/a><\/div>\n<div>I then used 4 of an 8 pack of &#8220;binder clips&#8221; from <a href=\"http:\/\/www.wilko.com\/clips-pins-and-rubberbands\/wilko-binder-clips-8ctn\/invt\/0316960\">Wilkinson<\/a>&nbsp;(\u00a30.80) to attach it to the heated bed, which needed raising in order to accommodate them, so I replaced the 3 washers with springs (again salvaged from some scrapped printer) and used some longer M3 screws and then did an &#8220;eyeball&#8221; levelling job to ensure an even distance to the extruder nozzle across the surface of the glass. This partly aided by a spirit level to ensure the X axis and the Y axis were parallel to each other to start with.<\/div>\n<div><\/div>\n<div>The glass improved the flatness of the printing surface considerably. as the heated bed on its own was quite bowed towards the front, something that will only become worse when heated.<\/div>\n<div><\/div>\n<div>I believe the last firmware I burned onto the chip on the <a href=\"http:\/\/reprap.org\/wiki\/Sanguinololu\">Sanguinololu <\/a>was some version of <a href=\"https:\/\/github.com\/kliment\/Sprinter\">Sprinter<\/a>, and so I used this for the initial tests.<\/div>\n<div><\/div>\n<div>The motors seemed smooth and were not vibrating or making nasty noises, so the A4983 stepper drivers from China came pre-adjusted to a useful setting, unlike the ones I bought from Europe.<\/div>\n<div><\/div>\n<div>I was having issues yet again with the endstops, proven by shorting them out and then being able to move all axes in both directions, So I rechecked the endstop wiring and the activation by the magnets and re-did some of the connections and positioning of the hall effect sensors, still having issues, now almost certainly because I am using hall effect sensors rather than mechanical switches and the output needs to be inverted.<\/div>\n<div><\/div>\n<div>Sprinter only compiles with <a href=\"http:\/\/www.arduino.cc\/\">Arduino <\/a>0.23, and since I am not interested in firmware that doesn&#8217;t compile with at least version <a href=\"http:\/\/www.arduino.cc\/\">Arduino <\/a>1.0, that means either <a href=\"https:\/\/github.com\/ErikZalm\/Marlin\">Marlin <\/a>or <a href=\"http:\/\/www.repetier.com\/documentation\/repetier-firmware\/\">Repetier <\/a>based on what I have downloaded and played with already.<\/div>\n<div><\/div>\n<div>I opted for <a href=\"http:\/\/www.repetier.com\/documentation\/repetier-firmware\/\">Repetier <\/a>0.71 as that is what I made work with my I2C LCD, plus it compiles to smaller binary than&nbsp;<a href=\"https:\/\/github.com\/ErikZalm\/Marlin\">Marlin<\/a>&nbsp;and still fits on an&nbsp;<a href=\"http:\/\/www.atmel.com\/devices\/atmega644p.aspx\">ATmega644P<\/a>&nbsp;even with the LCD code enabled. The 0.91&nbsp;<a href=\"http:\/\/www.repetier.com\/documentation\/repetier-firmware\/\">Repetier<\/a>&nbsp;code did not want to compile out of the box, even after using the auto configuration web pages, so that will need some more investigation before I try that.&nbsp;<\/div>\n<div><\/div>\n<div>I disabled the LCD and SD code I had previously made to work, then loaded this up onto my <a href=\"http:\/\/www.atmel.com\/devices\/atmega644p.aspx\">ATmega644P<\/a> by removing the chip from the&nbsp;<a href=\"http:\/\/reprap.org\/wiki\/Sanguinololu\">Sanguinololu<\/a>&nbsp;and swapping it with the <a href=\"http:\/\/www.atmel.com\/devices\/atmega1284p.aspx\">ATmega1284P <\/a>on my breadboard before reprogramming it with my <a href=\"http:\/\/www.ladyada.net\/make\/usbtinyisp\/\">USBtinyISP<\/a>.<\/div>\n<div><\/div>\n<div>Since this was a laborious process, I had a closer look at the <a href=\"http:\/\/en.wikipedia.org\/wiki\/In_Circuit_Serial_Programming_(ICSP)\">ICSP <\/a>pins on the&nbsp;<a href=\"http:\/\/reprap.org\/wiki\/Sanguinololu\">Sanguinololu<\/a>&nbsp;board and they just happen to line up exactly with the six pin connector for the&nbsp;<a href=\"http:\/\/www.ladyada.net\/make\/usbtinyisp\/\">USBtinyISP<\/a>, looks like the guys who developed the&nbsp;<a href=\"http:\/\/reprap.org\/wiki\/Sanguinololu\">Sanguinololu<\/a>&nbsp;were following the industry standard&nbsp;<a href=\"http:\/\/en.wikipedia.org\/wiki\/In_Circuit_Serial_Programming_(ICSP)\">ICSP<\/a>&nbsp;header pinout.<\/div>\n<div>\n<div style=\"clear: both;text-align: center\"><a href=\"http:\/\/1.bp.blogspot.com\/-0oalPXlAU1E\/UzAe54dwB6I\/AAAAAAAAA8Y\/rXFJe1DVoVc\/s1600\/icsp_6pin.png\" style=\"margin-left: 1em;margin-right: 1em\"><img decoding=\"async\" border=\"0\" src=\"http:\/\/1.bp.blogspot.com\/-0oalPXlAU1E\/UzAe54dwB6I\/AAAAAAAAA8Y\/rXFJe1DVoVc\/s1600\/icsp_6pin.png\" \/><\/a><\/div>\n<\/div>\n<div>As I refused to install the FTDI chip on the&nbsp;<a href=\"http:\/\/reprap.org\/wiki\/Sanguinololu\">Sanguinololu<\/a>, previously when I programmed it&nbsp;I was using a <a href=\"http:\/\/www.circuitvalley.com\/2011\/04\/usbasp-usb-programmer-for-atmel-avr.html\">USBasp <\/a>programmer, which only had an 8 pin connector, so wiring it up was a little more involved than simply pushing on a 2&#215;3 connector from the&nbsp;<a href=\"http:\/\/www.ladyada.net\/make\/usbtinyisp\/\">USBtinyISP<\/a>, which has the option of 6 or 8 pin headers.<\/div>\n<div><\/div>\n<div>I am still having issues with the endstops &#8211;&nbsp;<a href=\"http:\/\/www.repetier.com\/documentation\/repetier-firmware\/\">Repetier&nbsp;<\/a>seems to completely ignore them, however it decides, based on where it thinks they should activate, to disable movement in a given direction after you pass that point.<\/div>\n<div><\/div>\n<div>I adjust a few more settings, mainly those for steps\/mm as the current 10mm move is more like 6mm, based on the actual belts and gears being used.<\/div>\n<div><\/div>\n<div>X and Y axes are using GT2 belts with 16 tooth gears, 1\/16 micro steps and 1.8 degree\/step motors, this equates to 200 steps\/turn (360 degrees\/degrees per step = 360\/1.8 = 200), and 100steps\/mm (steps per turn * micro steps\/(belt distance * grooves in pulley) = 200*16\/(2*16) = 100).<\/div>\n<div><\/div>\n<div>Z axis is using M5 threaded rod, so with a screw pitch of 0.8mm this gives 4000 steps\/mm (steps per turn * micro steps\/screw pitch = 200*16\/0.8 = 4000).<\/div>\n<div><\/div>\n<div>At least the axes now move the right distance when I choose a 0.1, 1, 10 or 100mm move even if it still completely ignores the end stops.&nbsp;<\/div>\n","protected":false},"excerpt":{"rendered":"<p>I finally managed to find some time to complete the wiring, well, not quite complete, because I still have yet to buy the pins for the extruder motor connector, but sufficiently complete that I could test it out. I cut a 200 x 200mm piece of glass from one of the many sheets I have&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[4],"class_list":["post-33","post","type-post","status-publish","format-standard","hentry","category-uncategorised","tag-prusa-i3"],"_links":{"self":[{"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/posts\/33","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/comments?post=33"}],"version-history":[{"count":1,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/posts\/33\/revisions"}],"predecessor-version":[{"id":245,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/posts\/33\/revisions\/245"}],"wp:attachment":[{"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/media?parent=33"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/categories?post=33"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/tags?post=33"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}