Line 567: Line 567:
GLUT not found; gcview will not be built
GLUT not found; gcview will not be built
  exit
  exit
  cd /usr/bin
  cd ~/Ralith-reprap-utils-xxxxx/gcgen
  ./gcdump
  ./gcdump
  echo M105 (returns T:21 B:-15 ok)
  echo M105 (returns T:21 B:-15 ok)

Revision as of 20:49, 8 September 2010

RepRap[1] is an open-source 3D printer, presently under community development. It is being designed to produce as many of it's own parts as possible, and hence self-replicate. This appropedia page describes the build process that Queen's Applied Sustainability Group is taking to build one, and contains a general build trajectory. Detailed documentation of each step is being filled in as the machine is built.

To Do List (in order)

  1. Build hotend/extruder
  2. Figure out how to incorporate an MK4 Plastruder into a Mendel - mechanical mounting, weight a problem?, test mendel firmware to run a DC gear motor (not a stepper). (doesnt work; use replicatorG cupcake firmware)
  3. Program and test electronics boards; all except two stepper boards tested, functional determine which firmware we will use (http://reprap.org/wiki/Mendel_User_Manual:_Host_Software)
  4. Print mendel RP parts
  5. Print part II of the extruder mounts (the one with the square)
  6. Build opto-endstops
  7. Solder pins onto I2C connector on mobo before connecting to extruder
  8. Add molex connectors to stepper motors
  9. Build IDC cables (cable lengths are in brackets (cm) on this wiring diagram. The thick lines represent a connection with multiple wires, the bold numbers are the number of wires in these connections.
  10. Test electronics
  11. Test acetone for RP parts
  12. Cut threaded rods
  13. Learn how to splice and cut belts
  14. Other smaller non-RP mechanical tasks?
  15. Put it all together
  16. Build mendel boards for mounting electronics, printing board - look into laser, water cutting the boards out of various materials
  17. Calibrate new RapMan extruder - looks good so far
  18. Order a few more components from digikey, TTL-USB cable
  19. Cut non-threaded rods

Future/Improvement ideas to do in down time:

  1. Look into recovering from a print crash
  2. Look into a filament wheel with bearings which may reduce jamming
  3. Look into adding an extruder motor fan, as the extruder motor becomes very hot and will likley burn out if not addressed
  4. Create an electrical watchdog to monitor prints
  5. Add dive-preventers to only allow the bed to move down
  6. Look into maintenance required for both RapMan and RepRap
  7. Create photographic encyclopedia of reprap terms, actions, and parts
  8. Solve SD card/extruder head diving problem
    1. Search on RapMan forum for solutions
    2. Possible - build mechanical blocker to prevent head damage
    3. Possible - build electronic watchdog that warns of head dive/shuts off machine (kill switch)

Electrical Components Build and Test

BEFORE ANY CIRCUIT BOARDS ARE TAKEN OUT OF THEIR PACKAGING, TOUCH THE SINK FAUCET WITH BOTH HANDS TO GROUND YOURSELF AND GET RID OF ELECTROSTATIC CHARGE

If you are new to electronics, there is an excellent Beginners guide to electronics on the reprap wiki.
The wiring of all the components together is described on a circuit diagram here, and small mods required are described here. The instructions below are for GEN3 electronics (v1.2 motherboard, v2.2 extruder controller, v2.3 stepper driver). Gen3Elec

Making Additional Mods
The makerbot boards pre-fabbed for Cupcake work with RepRap with a few very small modifications. You can also modify them further to get rid of chunky RJ45 cabling, described here which links from here. It also discusses the minor adaptations needed to keep the boards more or less how they came. For our first RepRap, we are going to keep the boards how they came as much as possible; this is described here
Other links for editing the boards:
How to modify the power to not use an ATX power supply info: briefly mentioned here and here and described in more detail here.

How to Solder

  1. Wet your solder sponge.
  2. Plug in the soldering iron (about 3 minutes to heat up).
  3. Ensure your components are placed properly in the PCB board, with the leads bent 45 degrees to hold them in place (less for components which will not fall out; a slight bend will ensure the component lead touches the edge of the PCB and there is a strong solder connection between them).
  4. Break off a hand-length piece of solder.
  5. When hot, wipe the soldering iron tip on the sponge.
  6. Touch the soldering iron to the solder to apply a bit of solder and "tin" the tip. If it does not flow easily and quickly your iron is not hot enough yet.
  7. Wipe off the solder from the iron tip. You should now have a silver tip which will conduct heat quickly.
  8. Touch the soldering iron tip to both the lead of the component and the PCB pad and wait 1 second to allow them to heat up.
  9. Touch the solder to the lead and the PCB (not the iron) and keep both soldering iron and solder in place until the solder flows onto the board and up the lead (3 seconds maximum; if it is not flowing and your component does not have a large heat sink, either your tip is not tinned properly, is damaged, is not hot enough, or you are holding it improperly and not contacting the surfaces).
  10. Remove the solder and soldering iron.
  11. If done correctly, there will be a cone of solder extending up the lead, with a solid base wrapped all the way around the lead on the PCB pad.
  12. Snip off the excess lead with side-cutters.

Parts

Scrounged:

  • ATX power supply
  • 0.1" spaced, thin headers

Digikey: - to come

5D Firmware Installing

Note: There is a branch in programming and a few options to choose from. To run a DC-motor driven extruder, you must use the ReplicatorG firmware (5D will not work) and ReplicatorG to run the machine.

How to install 5D RepRap programming software on Windows

These instructions are meant to be an additional support to the ones on RepRap.org. Follow the instructions on the RepRap wiki. The instructions are also outlined in less detail here, with different links to download the install package (reprap-mendel-20100702.zip vs. reprap-gen3-firmware-1.2.zip). There may be discrepancies between the two *.zip sources, and the dated one (which has been used below as stated here) may be unstable. This needs to be sorted out.

  1. Get arduino-0018 (it doesnt "install" on windows) and unzip it to where you want it installed. It is now installed.
  2. Unzip sanguino-0018 and follow the directions in sanguiono.txt to copy the files into arduino.
  3. Start arduino.exe; select tools->board->sanguino. You are now set up with sanguino.
  4. Get java V 6; the website will tell you if you already have it installed.
  5. Set the user PATH environment variable manually for JAVA. instructions for Windows 7 here ensure there is a ; at the end, and no space at the beginning (before or after the ; ) or it wont work.
  6. Reboot to allow the PATH variable to update. If it doesnt work, try adding java to the admin PATH environment variable
  7. Get the RepRap software we may have to get an updated version, we presently have reprap-mendel-20100702.zip and unzip it to C:/Program Files/RepRap (you must use this default path, or the script files wont work)
  8. Run reprap.bat in the RepRap folder to ensure it is working. This did not work the first time for us due to no USB connection, but it should be able to find java. If it cant find java, your PATH variable has not been setup correctly.
  9. Close the RepRap program.

Now you're all set up to program your motherboard, and extruder controllers.

How to install the FiveD_GCode_Interpreter Mendel Code onto the RepRap (cupcake) motherboard

Starting arduino.exe
Opening configure.h to read and modify if necessary
Access denied error is caused by not setting folder permissions to writable.
Change the board type to Sanguino to compile the motherboard code. When complete it will say Done compiling at the bottom of the GUI
  1. Make a USB<->serial & power cable Actually, dont. We'll use an ATX (computer) power supply, which plugs into all the boards, and a separate USB-TTL cable, described here. The green wire in this cable should be connected on the end labeled GRN on the motherboard.
  2. Add two 2-pin headers to the I2C ports, described here, and add a two pin header and jumper next to the TTL programming port; headers are shown here at A and B. The motherboard is described here.
  3. Follow the directions here to install the FiveD_Gcode_interpreter RepRap code onto the motherboard alternatives here, check to make sure that FiveD can run a non-stepper extruder
    1. Copy configuration.h.dist, located in C:\Program Files\RepRap\mendel\firmware\FiveD_GCode\FiveD_GCode_Interpreter to a new file, named configuration.h in the same directory
    2. Run arduino.exe
    3. Click File -> Open and navigate to C:\Program Files\RepRap\mendel\firmware\FiveD_GCode\FiveD_GCode_Interpreter. Select FiveD_GCode_Interpreter.pde
    4. Click the arrow to switch tabs; select configuration
    5. Read the file and make changes, or, for the Queen's machine use the file provided here configured to our machine File:Mendel-config-queens.odt. This is where you make settings for how the motors are running, and tell the firmware which kind of hardware you have.
    6. Click File->Save. If you get access denied error, this is because your user account does not have write permissions on configuration.h. Navigate to the folder immediately above configuration.h, right-click on the folder, select properties. Ensure "read-only" attribute is not set. Select Security -> User permissions -> Edit and ensure modify permissions are checked. Try again to save the file.
    7. Select Tools->Board->Sanguino then select Sketch->Verify/Compile.
    8. Follow these directions to upload: Ensure there is a jumper fitted beside C8. this seems unnecessary, uploaded fine without
    9. Ensure your ATX power supply is turned off and the motherboard is turned OFF with it's switch.
    10. Plug the ATX supply into the motherboard.
    11. Turn on the ATX power supply. (if you want to check that the motherboard is working normally at this point, turn on the motherboard power; the green power LED should turn on and no other lights; remember to turn off the motherboard power after).
    12. Plug the TTL end of your USB:TTL cable into the motherboard (debug light flashes red pattern: 3 - pause - 2) [ignore the mention of plugging the USB cable into the USB-B connector but not the computer yet in the reprap.org directions, that does not apply to our cable setup as we do not have a USB-B connector, simply the USB:TTL cable.]
    13. Turn on the power switch on the motherboard (power LED will turn on)
    14. In arduino.exe select tools->serial ports and check what is available (this is so you know which serial port to upload to).
    15. Plug the USB end of the USB:TTL cable into the computer. When plugged into the computer, Windows detected the USB device and "installed drivers", the debug light flashes series of double and triple flashes, the power LED on the board should remain on.
    16. In arduino.exe select tools->serial ports and select the new device (for us, COM3).
    17. In arduino.exe, click upload. If it is working properly, the debug light will flicker randomly and arduino.exe will say "Uploading to board...". .
    18. If uploading over-top of replicatorG firmware, press the Reset button the motherboard as soon as Binary sketch size: 22514 bytes (of a 63488 byte maximum) appears.
    19. When uploading is complete, "Done uploading" will appear in arduino.exe, and the debug light will flash at 1Hz
  4. Test the motherboard, instructions here; use the ATX supply to power it, there is no power from the USB/TTL cable unless you make mods to the boards
    1. Turn off the motherboard.
    2. Turn off the ATX supply. (debug light should stop blinking at 1Hz now)
    3. Remove the jumper.
    4. Plug in the USB:TTL cable if it was removed.
    5. Turn on the ATX supply.
    6. Turn on the motherboard.
    7. Run reprap.bat to start the RepRap program.
    8. Click Preferences.
    9. Change commsDebug to true.
    10. Change Port(name) to your USB port (COM3 for us).
    11. Click OK.
    12. Exit the reprap software.
    13. Restart the reprap software.
    14. In the DOS console, you should see output from the extruder scrolling by; this means your motherboard is working properly. C Blair 02:33, 18 August 2010 (UTC)This is not working after upgrading from ReplicatorG firmware; skeinforge is running in the background, possible interference? Completely powered down electronics, unplugged everything, now it's working.


Debugging

This was all due to not flipping the power switch on the motherboard:

  • The Power LED (labelled power, next to the TTL connection) did not turn on on our motherboard as expected.
  • Plugged in an ATX supply, debug light flickered three times fast, pause, two times fast, off. Cycled power; no lights. Nothing on the board is warm. There is the correct voltage from the ATX power supply when not connected to the RepRap. When the reset button is pressed, the debug light again flashes the same pattern. The ATX supply fan does not turn on at all. Same behavior with or without the jumper installed next to the TTL connection.
  • motherboard had an error when uploading to board. Problem uploading to board Binary sketch size: 22514 bytes (of a 63488 byte maximum) avrdude: stk500_getsync(): not in sync: resp=0x48 avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x48 Possible help with this error: here to change the uploader to sanguino, here a very similar timing error with the wrong board selected
  • voltage from the USB:TTL cable is 5V across red and black.
  • when plugged into the extruder board, the power light comes on, debug light flashes, then LED4&8 lights flash a bit -> cable is working
  • perhaps the power LED is blown on the motherboard board?
  • tried to program extruder board, errors:

Binary sketch size: 7054 bytes (of a 14336 byte maximum)

avrdude: stk500_getsync(): not in sync: resp=0x00

avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

  • followed directions to hold reset button, release, and directly after click upload: errors: debug flash once, LED4&8 flash and then turn off

Binary sketch size: 7054 bytes (of a 14336 byte maximum)

avrdude: stk500_getsync(): not in sync: resp=0x00 avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

  • hit upload in arduino.exe then immediately reset button on extruder board; held until "Binary sketch size.." message appeared and then released reset; "Done uploading" HOORAY. LED5 is flashing. (note: debug LED was never flashing, LED4&8 were off) -> extruder board is programmed.

Motherboard:

  • flipped motherboard "on"
  • set board to Sanguino
  • compiled 5D_gcode interpreter again
  • clicked upload -> same errors
  • tried to hit upload in arduino.exe then immediately reset button on motherboard; held until "Binary sketch size.." message appeared and then released reset: same errors
  • tried to hold reset button, release, and directly after click upload: same errors
  • switched motherboards; didnt solder 2nd one, just put a wire across jumper
  • no lights when plugged in, or when reset is hit.
  • upload: no lights, errors.
  • ATX power supply, flipped on switch: supply is on, power LED is on (green), no other lights
  • same with other board, with and without jumper; left jumper in: before I wasnt flipping the power switch on the board. turned off board.
  • when TTL cable plugged in, debug light flashes red pattern: 3 - pause - 2
  • flipped power switch on on board: power LED is on
  • plugged in USB, debug light flashed series of double and triple flashes, power LED still on
  • hit upload (no fiddling with reset button). Debug light flickered randomly, and then "Done uploading"; debug light flashing 1Hz -> done!

How to install the 5D Mendel Code onto the RepRap (cupcake) extruder controller board

The extruder itself is described here, with links to the thingiverse schematics, usage instructions, somewhere (appropedia ate a big edit where I traced all the extruder information) these is a link to the makerbot extruder board firmware

  1. Ensure your motherboard has been tested (above)
  2. Check the info about the extruder boards here (make any cable connector changes: can swap out RJ45 for separate power, signal pins; we arent doing this).

These are the directions to use the RepRap firmware. See here for the ReplicatorG firmware for the plastruder. We may have to switch over to using ReplicatorG if we cant drive a gear motor with the RepRap host software/gcdump/skeinforge.

  1. Follow the directions to install the RepRap code onto the extruder controller board. This is very similar to the motherboard program, described above. Be careful to make changes where necessary for the extruder board code, do not simply follow the same directions as for the motherboard.
    1. Copy configuration.h.dist, located in C:\Program Files\RepRap\mendel\firmware\FiveD_GCode\Extruder to a new file, named configuration.h in the same directory
    2. Run arduino.exe
    3. Click File -> Open and navigate to C:\Program Files\RepRap\mendel\firmware\FiveD_GCode\Extruder\. Select Extruder.pde
    4. Click the arrow to switch tabs; select configuration
    5. Read the file and make changes, or, for the Queen's machine use the file provided here configured to our machine File:Mendel-e-config-queens.odt. This is where you make settings for how the extruder motor runs, and tell the firmware which kind of hardware you have.
    6. Click File->Save. If you get access denied error, this is because your user account does not have write permissions on configuration.h. Navigate to the folder immediately above configuration.h, right-click on the folder, select properties. Ensure "read-only" attribute is not set. Select Security -> User permissions -> Edit and ensure modify permissions are checked. Try again to save the file.
    7. Click the arrow to switch tabs; select temperature.h.
    8. Ensure that the thermistor selected is correct for your thermistor. The model for Plastruder MK4 is a 100K Epcos NTC Thermistor, part number B57560G104F. Information on how to generate a custom temperature table to insert into temperature.h is available here; Type createTemperatureLookup.py -h for the help file of the thermistor script. Do not enter values for R1 or R2 as the default is fine (I believe these are used to calculate the actual current, ie including the effects of the output resistance of the ADC, though I am still looking for info). File:Mendel-et-config-queens.odt.
    9. Select Tools->Board->Arduino Diecimila or Duemilanove w/ ATmega 168 then select Sketch->Verify/Compile. It should have a Done Compiling message at the bottom when it has successfully compiled
    10. Connect the TTL end of your USB:TTL cable to the extruder board.
    11. Connect the USB end to your computer.
    12. Ensure the proper port is selected in Tools->Boards (com3 for us).
    13. Click upload in arduino.exe then immediately reset button on extruder board; hold until "Binary sketch size.." message appears and then immediately release reset.
    14. "Done uploading" will appear in arduino.exe when it is complete, and LED5 will flash.
  2. Follow the steps to test your motherboard, and continue directly from the last step there to test your extruder controller (instructions to check power, make a cable, and test the extruder communication with the motherboard; these will tell you what the console should be outputting, all you have to do is plug the extruder into your motherboard though)
  3. Plug in your extruder controller to the motherboard with an RJ45 cable. The Power LED on the extruder board should turn on, LED5 will flash occasionally; the console output of reprap.bat will now include a GCode acknowledged line and T:xx (xx non-zero) if your motherboard and extruder are working properly.

Testing 5D Extruder and Motherboard

  1. Power everything down.
  2. Plug in the ATX supply to the motherboard.
  3. Connect SCL <-> D9
  4. Connect SDA <-> D10
  5. Connect the RJ45 from the motherboard to the extruder (note some of the jacks on the motherboard seem to be loose).
  6. Connect the thermistor (green wires on our hotend) to the thermistor connectors.
  7. Connect the heater (red wires on our hotend) to C+/C-
  8. Connect the stepper motor.
    A - 1A (blue)
    B - 1B (red)
    C - 2A (green)
    D - 2B (black)
  9. Connect the TTL:USB cord to the motherboard and computer.
  10. Turn on the ATX supply.
  11. Turn on the motherboard.
  12. Run reprap.bat to start the RepRap program.
  13. Click Preferences.
  14. Change commsDebug to true.
  15. Change Port(name) to your USB port (COM3 for us).
  16. Click OK.
  17. Exit the reprap software.
  18. Restart the reprap software.
  19. In the DOS console, you should see output from the extruder scrolling by; this means your motherboard is working properly.
  20. If the extruder is working, should see T: 25 rather than T:0.
  21. Test the heater.
    1. Click Extruder 0.
    2. Set the Target Temperature to 100
    3. Click Switch heater on. The hotend should heat up, come to temperature and say there. LED7 will light as it heats.
    4. Click Switch heater off.
  22. Test the motor.
    1. Set the Extrude speed to 300mm/min.
    2. Click extrude. The motor should move, for us about 1/8 turn and stop. LED2,3,4 and 8 will flash as it turns.
    3. Click reverse and repeat. The motor should turn the other way.
    4. Press the reset button on the extruder board to stop the humming noise after.

If you reset the motherboard, the GCODE will stop scrolling by; seems like Reprap host lost connection to the boards. Restart reprap host to fix this.

Replicator G Firmware Installing

Follow these instructions.

Note: reprap.bat does not run machines with this firmware; only ReplicatorG, and maybe gcdump (yet to test). This firmware is required to run any DC motor driven extruder

Extruder

  1. Download the latest ReplicatorG software.
  2. Extract the zip to where you want it installed.
  3. Run ReplicatorG.exe.
  4. Remove any motors or heaters, thermistors attached to the extruder board.
  5. Plug the USB:TTL cable into the extruder board (if yours doesnt power the board, you will also have to plug in your motherboard and power it up ie via ATX)
  6. In replicatorG navigate through the menus: Machine -> Upload new firmware -> Extruder Controller 2.2 -> v2.3 release 1 -> COM3 -> Upload and immediately press and release the reset button upon clicking upload; no lights will flash, ReplicatorG will say that the upload suceeded if it worked. (note: it wont work if you dont reset the board; holding reset for 3 to 5 seconds after clicking upload you will see flashing LED 5 after a bit and then it will fail)

Motherboard

  1. Remove any circuit boards or wires connected to the motherboard.
  2. Plug in the USB:TTL cable to the motherboard, and the ATX supply; turn the power supply on as well as the motherboard.
  3. In replicatorG navigate through the menus: Machine -> Upload new firmware -> Motherboard v 1.x -> v2.2 release 0 -> COM3 -> Upload (hit reset immediately after upload); debug light will flash as the program is uploaded and then ReplicatorG will say that the upload succeeded if it worked.

Debugging notes

  1. After installing replicatorG firmware to extruder board only: Check the firmware preferences. This doesnt work with only the extruder connected via USB:TTL (requires motherboard?)
    1. Plugged in mobo and extruder.
    2. Selected Machine -> Driver -> 3-Axis simulator. Then Machine -> Control panel; menu flashes up and disappears. Same for CupCake CNC..?
    3. After clicking around a bit (hit simulate, tried to connect to machine, etc), Machine -> Serial Port has COM3 option - selected it
    4. Hit connect machine:
[22:12:37] Loading driver: replicatorg.drivers.gen3.Sanguino3GDriver
[22:12:42] Read timed out.
[22:12:42] Read timed out; giving up on query.
[22:12:49] Read timed out.
[22:12:49] Read timed out; giving up on query.
[22:12:49] No connection; trying to pulse RTS to reset device.
[22:12:56] Read timed out.
[22:12:56] Read timed out; giving up on query.
[22:12:56] Unable to connect to firmware.
    1. Changed firmware to 3-axis sim -> this appears to actually just be a simulator; back to cupcake
    2. Replicator G cannot connect to the reprap firmware.
    3. Ran reprap.bat; plugged motors, thermistor, heater back in; getting Gcode acknowledged messages back, at 0 temp? same messages as when theres no extruder control board; the two firmware versions cant talk to each-other. (tested the thermistor in case, at 80Kohm)
  1. Upload ReplicatorG firmware to motherboard?

Looks like we'll need to use ReplicatorG to drive RepRap

    1. when running random gcode from a build file (paste into the ReplicatorG main window and click Gcode->build), hotend heats up; motor sings, but doesn't run. Reached "end of build"?? even though no motors or optostops
  • NOTE: extrude 0 connector on motherboard seems to have intermittent power to extruder board (loose wire).

How to test the stepper motor drivers

  1. Ensure your motherboard has been tested (above)
  2. Put female molex connectors on the stepper motors, ensuring the correct order of wires here and here (or can swap out some connectors on the driver boards for the reprap versions, described here)
  3. To test the motor drivers with replicatorG firmware follow a similar procedure as described below, except using the ReplicatorG interface (if it's not working, switch firmware to 5D and test that the components are functional).
  4. Follow the stepper driver test instructions to build a cable, test power, and test the motor driver board communication with the motherboard
    1. Turn off your motherboard.
    2. Plug in the USB:TTL cable from your motherboard to the computer.
    3. Start reprap.bat.
    4. Plug in the IDC cable to the stepper motor board. Plug the other end to the X axis IDC slot.
    5. Turn on your motherboard.
    6. Plug in a molex connector from the ATX supply to your stepper control board: the power LED and LEDC and LEDA will turn on.
    7. Follow the stepper driver test instructions to setup the reprap software to nudge.
    8. When you click the right X button in reprap.bat, the LEDs around the stepper motor connectors should flash a lot, for about 3 seconds. When you click the left X button, no lights flash (I believe this is because you dont have access to jumpering the opto-switch to "untriggered" when your using the ethernet cables; the firmware thinks it's at the end of it's road and doesnt move the stepper further.)
    9. Unplug and turn eveything off.
    10. Plug the motor in
* A = blue,
* B = red,
* C = green,
* D = black. 
    1. Plug everything else back in, turn on.
    2. Restart reprap.bat.
    3. In the XYZ tab, clicking the X right button will turn the motor counterclockwise (it thinks it's homed the other way, so wont respond)

How to test the opto-switches

  1. Build your opto switches, we have makerbot ones which are described here, we're building the first set with RJ45 connectors.
  2. Ensure your motherboard and stepper drivers have been tested (above)
  3. To test the opto-endstops with replicatorG firmware follow a similar procedure as described below, except using the ReplicatorG interface.
  4. Follow the optoswitch test instructions to build a cable, test power, and test the board communication with the motherboard.
    1. After testing the stepper motor driver board, plug in the optoswitch with a RJ45 cable into the MIN position on the stepper motor driver board.
    2. In reprap.bat, clicking left should now allow the stepper to turn clockwise until the position reaches zero.
    3. Insert a piece of metal into the opto gate; the LED on the optoswitch board will turn on. Now clicking left should not do anything. Your opto-switch is working.

Testing the MK4 Extruder

Note: The MK4 extruder uses a DC motor. This is not supported by 5D firmware. The only known working firmware that can run this extruder motor is the ReplicatorG firmware. Ensure you are following the directions for ReplicatorG firmware.

  1. First, install all the firmware and build the extruder (directions elsewhere on this page).
  2. Connect the thermistor, motor, and heater to the extruder board.
  3. Plug the extruder board into the motherboard via R45 cable.
  4. Connect the USB:TTL cable to the motherboard.
  5. Plug in the ATX power supply and turn it on.
  6. Turn on the motherboard.
  7. Restart replicatorG.
  8. Ensure Machine -> Driver -> Cupcake CNC is selected in ReplicatorG.
  9. Select Machine -> Serial Port -> COM3 (or different if machine is connected to different port)
  10. Select Machine -> Control panel. Follow directions to test the extruder.

Testing with RepRap.bat

Note: this test failed. RepRap host cannot run the MK4 extruder, as it does not presently work with any firmware which can run a DC motor

  1. With RepRap.bat
  • click on extruder 0 tab
  • click Switch Heater On
  • LED5 blinking, mainly on; debug blinking, mainly on. In reprap.bat reads current temp at 23 degrees
  • wasnt heating up (extruder 0 tab)
  • measured 12V at A-, A+ with firmware set to:
#define BED_OUTPUT 15
#define FAN_OUTPUT 11
#define HEATER_OUTPUT 12
  • moved heater wires to A-, A+ (instead of B-/B+ as in the instructions)
  • logic is inverted? seems to be heating intermittently. Something is humming on the board,... oh, need SCD SCA connections?
  • Mendel wiring instructions show the heater at C-/C+. Rewired to have heater wires at C, and to include the SDA, SCL lines to D9, D10. Note: D9, D10 are only the left-most pins ion the header labelled D9, D10: the other two pins on the header are +5 and ground, so that you can plug a servo motor in directly
  • error with reprap.bat - access denied in bob/ something folder - restarted, ok.
  • Smells like hot - 7805 heating up (either that or the capacitors beside it) on the extruder board; removed SDA/SCL connectors; not heating.
  • working without SDA/SCL; regulator warm, but not hot; hotend smells a little
  • extruder motor not working (no surprise)...
  • plugged SDA/SCL back in properly.. hope I didnt blow anything, had +5 connected to SDA and D10; heats up fine again; motor sings when turned on, doesnt turn though.
  • swapped motor for stepper:
A - 1A (blue)
B - 1B (red)
C - 2A (green)
D - 2B (black)
  • working; turn 1/8 turnish when click the extrude button (requires SDA/SCL lines to both be plugged into D9, D10 (the servo connections); these lines carry the motor signals I suppose
  1. replace firmware with makerbot extruder firmware and reprap motherboard firmware and see if it works -> nope

Assembly

After this is all tested, you should be ready to assemble the electronics onto the machine.

  1. Follow instructions to mount electronics (requires some Rapid Protoyped (RP) parts).
  2. Follow instructions to wire electronics.

Mechanical non-RP Build

Follow these instructions for materials preparation, and see the reprap wiki notes about procurement.

  1. Cut threaded rods to lengths *.ods given here
  2. Cut print bed and circuit mounting boards to size, *.ods given here, there is also duplicate information available somewhere on the RepRap.org site (needs to be compared to the *.ods). Kristen has some information compiled on alternative print beds
  3. Cut belts
  4. Build extruder following excellent assembly instructions here (see below for mounting on mendel)
  5. prepare studs, thin sheet
  6. Build, follow mechanical building instructions and build tips, and creating photographic build instructions (this is dependant on having RP'ed parts printed).

Instructions should be:

  • universal language (pictures) with lots of arrows
  • exploded assembly view of how to put together
  • include parts list for each picture
  • include method to differentiate between very similar parts (IKEA-esk)

Building X-Axis

http://reprap.org/wiki/Mendel_X-axis

This is the start of the mechanical build.

Watch the video about bearings in mendel which explains how the bearings constrain movement, and how to adjust the bearings to obtain the proper angles.

When building sections, use the bill of materials and separate these parts from your supplies. This will ensure all parts are used correctly (there wont be any left over).


Building Wade's Geared NEMA17 Extruder

This extruder is meant for mendel.

  1. Prepare your M8 50mm bolt. This will be the biting part of the extruder.
    1. Cut a slot in the bolt where the filament passes. (depth of slot??)
    2. Hob the slot (add teeth)
  2. Put it together.

Mounting MK4 Extruder on Mendel

After we built the MakerBot MK4 extruder (following excellent assembly instructions here), we found that it doesnt mount on the mendel.

Some links:

MK4 background information here

how to mount a makerbot extruder on mendel

reprap forums thoughts on MK4 (no)

using the CupCake electronics and drive software

mendel user manual for the extruder

  • The extruder's large stabilizing washer interferes with the mendel carriage mounts. Need to look into making modified mendel extruder parts, or cutting down the washer, or taking out the washer to put the mounts together and putting it all together with the carriage embedded. Instructions on the mendel extruder mount are here.
  • Look into the distances of the mendel extruder here to see what we have to deal with and where the nozzle end should be. Maybe we can swap out the nozzle from the makerbot extruder onto a wades extruder or something?

Tips on where to get parts for RepRap

See the reprap wiki notes about procurement. If you are trying to build a Reprap using your Rapman here are some useful tips:

1) A RepRap supplies site has just started for people to buy and sell important components for RepRap www.reprapstores.com
2) Another site that supplies parts for RepRap : www.ultimachine.com
3)A European equivalent exists http://www.mendel-parts.com
4) Here is a is a list of the parts I ordered in Canada and their prices: Media:parts_for_reprap.odt
5) Putting a bit of acetone on the parts allows the layers to meld together better (make sure to wash after)

Boards for Reprap

Get all solid edge parts here:([2])

Motherboard plate

  • place to mount extruder controller and motherboard
  • made from MDF
  • schematics
  • solid edge file is located in this area in the downloaded files: reprap-mendel-20100308/mendel/mechanics/solid-models/Temporary/SolidEdge/circuit-boards motherboard-plate.par


Stepper motor mounting board:

  • place to mount stepper motor drivers and usb-female pcb
  • made from MDF
  • schematics
  • solid edge file is located in this area in the downloaded files: reprap-mendel-20100308/mendel/mechanics/solid-models/Temporary/SolidEdge/circuit-boards stepper-plate.par


Bed

  • where the plastic is printed
  • made from MDF
  • schematics
  • solid edge file is located in this area in the downloaded files: reprap-mendel-20100308/mendel/mechanics/solid-models/Temporary/SolidEdge/m4-standard-bot bed.par


other possibilities for bed:


Y-Chassis

  • set-up for the y-axis
  • made from MDF
  • schematics
  • solid edge file is located in this area in the downloaded files: reprap-mendel-20100308/mendel/mechanics/solid-models/Temporary/SolidEdge/m4-standard-bot y-chassis.par


Purge Plate

  • on the y-axis
  • made from MDF
  • schematics
  • solid edge file is located in this area in the downloaded files: reprap-mendel-20100308/mendel/mechanics/solid-models/Temporary/SolidEdge/m4-standard-bot purge-plate.par


MDF: this needs to be 4-6mm width a 42cmx40cm sheet


Flags

  • Note:Flags can be cut from pop cans C Blair 22:28, 16 July 2010 (UTC)
  • three one for each axis
  • aluminum sheet, <2mm in thickness, 8cm x 5cm
  • solid edge file is located in this area in the downloaded files: reprap-mendel-20100308/mendel/mechanics/solid-models/Temporary/SolidEdge/m4-standard-bot x-flag.par, y-flag.par, z-flag.par, x-flag-flat.par, y-flag-flat.par, z-flag-flat.par

Print RP parts

  1. Download *.stl files from the official site or user-submitted grouped part files from thingiverse 24 sheets one sheet, rearrange parts to print
    1. The original drive pulleys can be replaced with nopheads drive pulleys to avoid having to file down the drive shafts (needs an extra nut and grub screw)
  2. Convert to GCODE following directions on the 3D Model to G-Code File for Rapman protocol
  3. Print, following instructions on the Rapman protocol page
  4. Clean up parts
    1. Drill or file out bolt holes
    2. Remove plastic threads
    3. File uneven mating edges
    4. Acetone (test with one to see if quality difference is worth it) acetone + shavings to make glue, google "ABS acetone" for lots of results on using it as a glue. See Rapman_protocol#How_to_Dip_ABS_part_in_Acetone

Running RepRap

There is poor documentation on the options available for programming. The bottom of this motherboard page (which is the page linked from the makerbot store) links to here for reprap firmware and here for makerbot firmware.

This page and this page mention gcdump to transmit GCODE to a reprap from a command prompt.

We have to ensure that the extruder driver firmware provided by makerbot to drive the plastruder is compatible with the RepRap motherboard firmware, as there is some information on extruder steppers in the (File:Mendel-config-queens.odt) configuration.h file of the motherboard code. Answer: It's not.


Once the machine is all assembled and tested separately, now we have to drive it with the computer. We have the Gen3 Electronics, how to drive it is described here. A recommended driving software is ReplicatorG.
This page describes how to drive the machine with the Java RepRap.bat software, while this page is the least hardware intensive method. It is not clear which hardware electronics version they are meant to drive. Alternative software

Mendel user manual, with firmware links

Generation3 Firmware page "Host Device - This is your computer that controls the RepRap and issues commands and queries. As of this writing, the only software that is capable of acting as a Host device is ReplicatorG. "

Alternative driver software

description of host software

ReplicatorG driver list, with Gen3 mendel driver.

Changing the extruder thermistor settings with Replicator G

How to update firmware in replicatorG

Firmware with arduino? unrelated page about driving steppers with the arduino?

"If you are using G3 electronics and DC motor I think the only option is Makerbot firmware and replicatorG. They no longer use G code so you can't test from a terminal as far as I am aware" - Ian also Pelrun has reprap host/gcdump running a DC extruder motor

"cant use 5D with a DC motor for extrusion"

OLPC Setup (follow these)

  1. Reflash the OLPC to clear up space, to version 767: how to upgrade and wipe everything off to clear up space
  2. Remove all activities (in Home view, hover over the icons and select Erase) except
    Write
    Record
    Log
    Terminal
    Measure
    Help
    Etoys
    Browse
    Chat
    Calculate
    Analyze
  3. Update remaining programs
    1. Connect to internet (in Neighbourhood view, click on the circle of the network)
    Use these settings:
    Key Type: Hex (40/128-bit)
    Key: xxxxxxxxxx
    Authentication Type: Open System
    1. Hover over the X icon in home view
    2. Select Control Panel
    3. Select Software Update
    4. Remove the check mark from any program that says New (these are the ones just removed); the remaining programs should be about 3 to 10 MB of updates
  4. Reboot
  5. Install necessary programs
sudo yum install cmake make gcc

gcdump

gcdump and gcgen instructions.

su
cd /home/olpc
wget http://github.com/Ralith/reprap-utils/tarball/master
cd download.github.com
tar -xvf Ralith-reprap-utils-xxxxx.tar.gz
cd Ralith-reprap-utils-xxxxx
cmake . && make && make install

GLUT not found; gcview will not be built

exit
cd ~/Ralith-reprap-utils-xxxxx/gcgen
./gcdump
echo M105 (returns T:21 B:-15 ok)
echo M104 S100 (hotend is now heating up; stabilized around 100)
echo M104 S0 (hotend cooling)
CTRL+D (to exit)
  • seems to be working on the OLPC, but may need some gcode replacement for the extruder

GCODE listing, 5D gcode

ModBus Support

cutecom can send hex: (but this didn't work with sending modbus hex commands)

sudo yum install cutecom

math library

sudo yum install bc
echo 'obase=16; ibase=10; 108' | bc    (dec to hex)

upgrade libtools to 2.2:

yum remove libtool (note on our system we manually installed libtool-1.5.24; therefore we can yum remove and have two versions installed)
wget http://ftp.gnu.org/gnu/libtool/libtool-2.2.10.tar.gz
tar -zxvf libtool-2.2.10.tar.gz
cd libtool-2.2.10.tar.gz
./configure --prefix=/usr/
make
make install

install libmodbus

cd ~
(rm -r stephane-c.. if have already installed before)
wget "http://github.com/stephane/libmodbus/tarball/master"
tar -xvf stephane-....tar.gz
cd stephane...
nano configure.ac
AC_PROG_LIBTOOL (add this under # check for programs)
^X 
Y
<enter>
./autogen.sh
./configure
make
sudo make install

GCdump on OLPC

  1. Version 767 of the OLPC firmware is required to run Java. Additional functionality such as powersave is also provided by this update. Follow directions here:How to update. (how to upgrade and wipe everything off to clear up space)
  2. Click the centre of the Queen's Applied Sustainability Lab icon in the neighbourhood view to connect to the internet.
  3. In the local view, click Check Now for updates.
  4. I turned off (saved 110MB) but then it came back and wanted to update them again; removed them by:
# rm -rf /usr/share/activities/TamTam*.activity/ <- this didnt actually do much, files were in the home dir
# cd /home/olpd/Activities
# rm -rf TamTam*.act*
Biology - Biol* -> not in home
Distance - Dis*
Gmail - Gma*
Implode - Implod* 
JamendoMusic - Jamendo* -> not in home
Maze - Maz*
Memorize - Mem*
Moon - Moo*
NatureImages - Nature* -> not in home
Scratch - Scr*
Speak - Spe*
TamTamEdit - TamTam*
TamTamJam
TamTamMini
TamTamSynthLab
TranslationDictionary - Translation* -> not in home
TurtleArt - Tur*
WikiBooks - Wiki*
WikiPedia
WikisliceChemistry
WorldDigitalLibrary - World*
WorldFactbookMaps
Xaos - Xao*

Note: Measure can act as an oscilloscope.

OLPC Internet Settings

Use these settings:

Key Type: Hex (40/128-bit)
Key: xxxxxxxxxx
Authentication  Type: Open System

Typical OLPC Tasks

List of linux commands

Some terminal commands

list of linux command line tasks

configure.ac files

Shutdown

sudo shutdown -h now

or

su
reboot

How much of my disk is full?

# df

Where am I?

pwd

Whats here?

file *

I want to edit a text file...

nano filenamehere

What are the environment variables? (ok, not typical task but..)

env

To Install Python

Python 2.5.14 was already installed.. but...

yum install python python-tk python-psyco

python is installed in

/usr/lib/python2.5

how to get tkinter installed (need tcl, tk) How to install Tkinter

yum install tcl tk
yum install tkinter
python
import _tkinter
import Tkinter
Tkinter._test()  (window opened after a few seconds)

Old Way (didnt work) To Install Psyco

download the files to the directory you were in when running wget/codespeak/svn/psycho/dist

cd ~/olpc/
su
wget -r http://codespeak.net/svn/psycho/dist -I /svn/psycho/dist/

If gcc is required:

su
yum install gcc

To install psyco?

su olpc
cd ~/codespeak.net/svn/psyco/dist
python setup.py install

This didn't work; perhaps python-dev wasn't installed? Errors:

/usr/include/python2.5/pyconfig.h:1:27 error: bits/wordsize.h: No such file or directory
/usr/lib/gcc/i386-redhat-linux/4.1.2/include/limits.h:122:61 error: limits.h: No such file or directory
/usr/include
yum install gcc-dev

Java

su
yum -y install java-1.6.0-openjdk

yum install openjdk-6-jdk doesnt work

had to clear out some activities to make room for java; failed due to space first few times.

C

yum install glibc-headers
yum install gcc
yum install tcl tk cmake make 
yum install gcc-c++

gcdump

gcdump and gcgen instructions.

su
cd /home/olpc
wget http://github.com/Ralith/reprap-utils/tarball/master
cd download.github.com
tar -xvf Ralith-reprap-utils-xxxxx.tar.gz
cd Ralith-reprap-utils-xxxxx
cmake . && make && make install

GLUT not found; gcview will not be built

exit
cd /usr/bin
./gcdump
echo M105 (returns T:21 B:-15 ok)
echo M104 S100 (hotend is now heating up; stabilized around 100)
echo M104 S0 (hotend cooling)
CTRL+D (to exit)
  • seems to be working on the OLPC, but may need some gcode replacement for the extruder

GCODE listing, 5D gcode

ReplicatorG on OLPC

cd /home/olpc
wget http://replicatorg.googlecode.com/files/replicatorg-0018-linux-r0.tgz
tar -xzf replicatorg-0018-linux-r0.tgz
cd replicatorg-0018
./replicatorg (opens)

Errors (cant connect to firmware):

no rxtxSerial in java.library.path (as starts)
java.lang.NoClassDefFoundError: Could not initialize class gnu.io.CommPortIdentifier

Need these libraries:

yum install autoconf automake libtool gnu 

adding environment variables environment variables and more

which java (/usr/bin/java) (though java open jdk is at /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre) [5]
JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre
export JAVA_HOME

RXTX.org, get the zip from here

wget -r http://rxtx.qbang.org/pub/rxtx/rxtx-2.1-7r2.zip
cd rxtx.qbang.org/pub/rxtx
unzip rxtx-2.1-7r2.zip
cd rxtx-2.1-7r2
sh ./configure (this has errors; not sure rxtx is compatible with openjdk)

info

[

RS232 OLPC Connection

su
yum install minicom
minicom -s

To create the config file, set the following information

Download directory: /home/olpc/minicomdata/
Upload directory: /home/olpc/
Prompt for download directory: Yes
Serial device (default /dev/modem): /dev/ttyUSB0
Serial port setup->Bps/.. :19200 8N1
Save setup as dfl

Test with reprap:

  1. plug in and power up reprap on ttyUSB0 (the USB port on the left side below the mic and speaker jacks)
  2. Run minicom
minicom
M105 (ok)
M104S100 (ok)
M105 (T:71 B:12 ok)
M104S0 (ok)

Prolific USB:Serial Driver

cd /sys/module/usbserial/
cd /sys/bus/usb-serial/drivers/generic
modprobe usbserial
sudo dmesg|grep –i ttyUSB (finds the reprap boards; this should work to find the PL-2303)

Driver download from prolific

mailing list post about testing prolific drivesr on olpc

XO serial adapters

installing PL2303 drivers on UnSlung, OpenSlug

Patch for SuSe

driver info

PL2032 works out of the box

how to setup a USB modem

ModBus Support

cutecom can send hex: (but this didn't work with sending modbus hex commands)

sudo yum install cutecom

math library

sudo yum install bc
echo 'obase=16; ibase=10; 108' | bc    (dec to hex)

upgrade libtools to 2.2:

yum remove libtool (note on our system we manually installed libtool-1.5.24; therefore we can yum remove and have two versions installed)
wget http://ftp.gnu.org/gnu/libtool/libtool-2.2.10.tar.gz
tar -zxvf libtool-2.2.10.tar.gz
cd libtool-2.2.10.tar.gz
./configure --prefix=/usr/
make
make install

install libmodbus

cd ~
(rm -r stephane-c.. if have already installed before)
wget "http://github.com/stephane/libmodbus/tarball/master"
tar -xvf stephane-....tar.gz
cd stephane...
nano configure.ac
AC_PROG_LIBTOOL (add this under # check for programs)
^X 
Y
<enter>
./autogen.sh
./configure
make
sudo make install

Now: - test /tests/ functions - test with tristar

[6] modbus specs (1996)

com0com null modem emulator

modbus emulator

Didnt Work

wget "http://downloads.sourceforge.net/project/qmodbus/qmodbus/0.1.0/qmodbus-0.1.0.tar.bz2" -O qmodbus-0.1.0.tar.bz2
tar -xvf qmodbus-0.1.0.tar.bz2
sudo yum install qmake
qmake (doesnt work)
cmake . && make && make install (error, cant find Qt qmake)


wine to run tristar program

sudo yum install wine
wget -r http://www.morningstarcorp.com/en/support/library/MSview.1.3.14.zip
cd www.morningstarcorp.com/en/support/library/
cp MSView.1.3.14 /home/olpc/MSView1.3.14.zip
cd ~
unzip MSView.1.3.14.zip
wine setup.exe
cd .wine/drive_c/Program\ Files/MSView
wine MSView.exe (cant find the MSView/devices.xml; the file is there... maybe corrupted, power was lost as it installed;
cd ~
wine setup.exe -> repair


libmodbus using libtool 1.5.24

wget "http://github.com/stephane/libmodbus/tarball/master"
tar -xvf stephane-....tar.gz
cd stephane...
./autogen.sh
 error: libtool library used but LIBTOOL is undefined.  

Soln: http://lists.freebsd.org/pipermail/freebsd-questions/2007-June/152653.html

sudo ln -s /usr/share/aclocal /usr/local/share/aclocal  didnt work

http://labs.buyscripts.in/projects/1/wiki/Libtool_library_used_but_LIBTOOL_is_undefined

sudo yum remove libtool
sudo yum install libtool
./autogen.sh : same error

adding to configure.ac:

nano configure.ac

add

AC_PROG_LIBTOOL under # check for programs
^X Y
./autogen.sh 
 error: ./configure: line 20847 syntax error near unexpected token 'disable-static'  'LT_INIT(disable-static)'
./configure
 error: ./configure: line 20847 syntax error near unexpected token 'disable-static'  'LT_INIT(disable-static)'

possibly libtool version problem: http://bugs.mysql.com/bug.php?id=51009

libtool --version
 1.5.24
sudo yum remove libtool
wget http://ftp.gnu.org/gnu/libtool/libtool-1.5.24.tar.gz
tar -zxvf libtool-1.5.24.tar.gz
cd libtool-1.5.24
./configure --prefix=/usr/
make
sudo make install
./autogen.sh same errors

External XO links

User's experience with yum to install on XO yum options and commands Deprecated yum libraries for OLPC OpenBox May want to use this; low resource load.

Cookies help us deliver our services. By using our services, you agree to our use of cookies.