Once upon a time...

Once upon a time...
Christmas 2016
Showing posts with label Sanguinololu. Show all posts
Showing posts with label Sanguinololu. Show all posts

Monday, 9 April 2012

Hot Bed Heat Up - Resolution

Thanks to the feedback from nophead, Triffid_Hunter & yngndrw on the forums, I have updated my wiring to overcome the short comings (pun intended) of the Sanquinololu.

The summary is as follows (based on the information gleaned from the three above):

The issues:

  • The molex connectors are rated for c.1A per pin.
  • The HotEnd's typically draw sub 2A
  • The heated bed draws about 11A
  • The pcb tracks are dubious
The solutions:
  • Use screw connectors instead of molex.  These are recommended by nophead anyway due to all the movement/vibration that these printer's undergo.  Triffid_Hunter seems to agree as his Sanguinololu also has screw connectors.
  • Bypass/supplement the PCB traces with additional trace reinforcement, suggested by Triffid Hunter
  • Connect the heated bed ground to the tab on the mosfet and the positive directly the the power supply using 13A wire, suggested by nophead.
  • Double up by using all 4 of the molex pins.  Mentioned by both nophead and yngndrw.
The implementation:
  • As I didn't have the parts (or the inclination to be soldering on my Sanguinololu), I elected to go for nophead's mosfet tab fix, as it is relatively straightforward
  • I also took the time to connect up the additional 2 pins on the HotEnd molex while I had the soldering iron out.

Sunday, 8 April 2012

Hot Bed Heat Up - Be Careful

Just yesterday I was reading this thread on the forum about standards.  One of the points was about the connectors on the Sanguinololu boards not necessarily being up to the job for the currents that the heated bed need.

Lo and behold, today while calibration my bed stops heating.  This is what I found!!

Might looks innocuous enough to the casual observer, but that's a bit scary, as leaving the printer unattended could result in a fire.  Not that I've been brave enough to do that yet.

I then rates my scrap pile to see if I had a suitable relay which could be used instead.  There went about 2 hours or so of fiddling and the end result?!?  Didn't work.  So for now I am back to wiring it up the old way as it is Easter Sunday with no hope of buying any kind of spares today.

I'll be researching this further and posting on the forum about it, as I think this is something we really need to do something about.  I would have thought it shouldn't be that hard or costly to offload the heating so that it runs of a separate circuit and the Sanguinololu is merely doing the controlling, not actually providing the current.

Problem is, I can assemble and fiddle with electronics, but I don't know where to start when it comes to designing.

Saturday, 24 March 2012

Sanguinololu Sprinter Firmware

These are the steps I followed to be able to load the Sprinter firmware onto my hardware.

Sanguino for windows (link)
  1. Install Arduino software (I got version 1.0)  (But this doesn't work for Sprinter yet (see below), so I also got 0023)
    1. Which means download it and unzip to a suitable folder.  Then we skip to Sanguino steps
  2. Download latest Sanguino version from Google code. (I got version 0023r3)
  3. Copy /sanguino into arduino-xxxx/hardware
    1. So I ended up with arduino-1.0/hardware/Sanguino
  4. Start Arduino
    1. I put a shortcut on my Quick Launch bar
  5. Choose Sanguino from the Tools -> Board menu.
  6. Choose Com x from Tools -> Serial Port menu (where x is your printer com port.  Mine is 6)
The above should now put me back to where I was when installing firmware on the TechZone Gen 3 stuff back in 2010.

The one thing I know I have to setup is the Thermistors.  It's great to see that a number of the thermistors have now been loaded into the firmware config by default so you simply need select the correct one. (Thanks again to Think3dPrint3d)

//// Thermistor settings:
// 1 is 100k thermistor
// 2 is 200k thermistor
// 3 is mendel-parts thermistor
// 4 is 10k thermistor
// 5 is ParCan supplied 104GT-2 100K
// 6 is EPCOS 100k
// 7 is 100k Honeywell thermistor 135-104LAG-J01

My heated bed uses the EPCOS 100k (#6) and I have a ParCan HotEnd so I presume #5 (he didn't say).

I'll tweak these settings so long and use this as a test as I know I will need to make changes for the motors (having started this sidebar due to discovering my X-axis isn't performing as expected.

Basic Configuration Steps
  1. Open Arduino software
  2. Load sprinter.pde sketchbook (BTW: On saving, Arduino now changes the extension from .pde to .ino)
  3. Open configuration.h and read through, tweaking settings as you go.  These are the ones I changed.
    1. MOTHERBOARD = 62
    2. THERMISTORHEATER = 5
    3. THERMISTORBED = 6
    4. I have a Metric Sells Mendel (not Prusa) with Wade extruder, so leaving the defaults in for Calibration until I get around to actual calibration.
    5. INVERT_X_DIR= true
    6. *_MAX_LENGTH I need to figure these out during calibration.  Leaving as default at the moment.
  4. Save changes
  5. Choose Sketch -> Verify/Compile. Any Errors?
    1. Yes!! Sprinter.cpp:63:21: error: Arduino.h: No such file or directory
    2. So off to figure this one out.
      1. I found someone listing the same error in a comment  on Dust's Reprap Blog.  The answer is apparently to use Arduino 0022 as the firmware won't currently compile on v1.0.
      2. So, off to get 0022 (I saw 0023, so thought I would try that - sucker for punishment).
      3. Copy the Sanguino folder (which includes the edited values above) into the hardware folder.
        1. I actually moved the folder as I didn't want to confuse myself later with which was the correct one.
        2. I also deleted my Arduino 1.0 shortcut and replaced it with the new one.
      4. Select the appropriate board and com port as mentioned above.  It remembered the settings, so probably stored as part of the sketchbook.
      5. Now repeat Steps 1,2,4 & 5 above till we have a success.
    3. Yay!! Done compiling!!!
  6. Switch on and connect to the printer (USB)
  7. Select File -> Upload to I/O Board.
    1. Yay!! Done uploading!!!
    2. So Arduino 0023 compiles and uploads Sprinter.
That's all for the firmware loading post.  I will now be able continue with the calibration.



Sunday, 18 March 2012

Sanguinololu Setup

According to the supplier "Think3DPrint3D", my electronics was already flashed with Sprinter by Kliment and they user Kliment's Printrun/Pronterface to control it all, so after connecting it should just run.  Great!!!

I went ahead and installed the pre-compiled version of Pronterface.  When that didn't work I moved on to the latest version from GitHub (linked above).  I wasn't really thinking straight, as the fact that Pronterface was only showing Com 1 should have immediately pointed me at the problem.

What he hadn't accounted for (not his fault) is that I had already messed up my PC while trying to get the Tech Zone stuff working.  The device wasn't being recognised by my PC.  After some googling, forum reading, etc, I figured out I needed to remove and upgrade the FTDI drivers (I'm running XP, so it's a pain, but this doc on the FTDI website helps).

So, now, I have the latest Pronterface, so let's see if this all works?

Brilliant, it connected, so on the testing of the motors.  These are all working brilliantly, however I noted that I have wired the limit switches incorrectly, not finding clear instructions elsewhere I followed a random article which appears to have gotten it wrong.  I need to go and do some reading, but I think I read somewhere that this can be swapped in the firmware, it's either that or redo the wiring.

I'll need to think about this and decide on the best approach.  They are currently wired to normally open, whereas I guess normally closed would make more sense as the accidental disconnection of the limit switch would cause the machine to stop, thinking it is home (which appears the safer option).

I will need to sort out alternate wiring for the extruder motor as the wires are too short.  I am thinking of following nophead's DB9 connector idea.

Next step on the electronics front will be to calibrate the system.  Before that however I'm going to focus on some remaining hardware work.  Namely mounting the bed and the extruder.


Saturday, 17 March 2012

Sanguinololu Installation

As mentioned earlier, I bought a Prusa Heated Bed and Sanguinololu kit from Think3dPrint3D.

Communication was fantastic and all the goods arrived this morning as promised, well packaged and labeled.


I then started assembling the electronics. This is much simple than the TechZone ones due to being a single board, so basically the only issues were mounting the board on the frame and wiring all the molex connectors.

For mounting the board, I rough cut a piece of plywood, figuring I could do something better in the future when I can print.

The other difference between these electronics and the TechZone ones is that these use micro switches for the end stops instead of opto's.  Much easier for non-electronics guys like me, but of course I had to find mounting locations.  I figured some out, but they may change in the future when I am able to print some brackets.

Next up I'll be figuring out the Tool Chain updates and trying to switch it on for the first time.