Merge pull request #208 from allartburns/master

Merge Docs for Arduino build
This commit is contained in:
midopple 2013-01-02 06:42:15 -08:00
commit f84de85ec9
2 changed files with 159 additions and 29 deletions

89
README
View file

@ -1,38 +1,62 @@
The leading developers of Sprinter are currently Kliment, caru and midopple, though many others contribute with their patches.
The leading developers of Sprinter are currently Kliment, caru and
midopple, though many others contribute with their patches.
This is a firmware for RAMPS and other reprap single-processor electronics setups. It supports printing from SD card, active heatbed control, and ATmega internal pullups.
This is a firmware for RAMPS and other reprap single-processor
electronics setups. It supports printing from SD card, active heatbed
control, and ATmega internal pullups.
This work is licensed under the GNU GPL v3 or (at the user's discretion) any later version.
This work is licensed under the GNU GPL v3 or (at the user's
discretion) any later version.
It is based on Tonokips's firmware, which was licensed under GPL v2 or later.
It is based on Tonokips's firmware, which was licensed under GPL v2 or
later.
WARNING: This version (April 19th, 2011) fixes a bug that caused speeds to be lower than what
set in GCODE. So before attempting any print, you will have to check all
your axis max speed, including the extruder retract speed. Not following
this guidelines can seriously damage your printer.
NEW ARDUINO BUILDS, 2012:
If you are running a current version, after October 2012, see the
file Arduino-build.txt in Sprinter for build instructions.
The configuration file now has an option to set the wanted temperature table file. If you copy and paste a temperature file from older versions, make sure that the configuration is pointing to it. For example:
#include "ThermistorTable.h"
WARNING: This version (April 19th, 2011) fixes a bug that caused
speeds to be lower than what set in GCODE. So before attempting
any print, you will have to check all your axis max speed,
including the extruder retract speed. Not following this
guidelines can seriously damage your printer.
In addition, you can optionally use a different thermistor table for hot-end and bed. To do so, comment out the following lines in configuration.h:
The configuration file now has an option to set the wanted temperature
table file. If you copy and paste a temperature file from older
versions, make sure that the configuration is pointing to it. For
example: #include "ThermistorTable.h"
In addition, you can optionally use a different thermistor table for
hot-end and bed. To do so, comment out the following lines in
configuration.h:
#define BNUMTEMPS NUMPTEMPS
#define bedtemptable temptable
Then add a line pointing to your second thermistor table, for example:
#include "BedThermistorTable.h"
Finally, make sure that the nozzle thermistor table, inside ThermistorTable.h in this case, is defined as "temptable" and that the bed thermistor table is defined as "bedtemptable", and that the number of temps is defined as NUMTEMPS for the heater and BNUMTEMPS for the bed.
There are examples of all these configurations in the configuration.h file. Please look at them before you change anything.
Finally, make sure that the nozzle thermistor table, inside
ThermistorTable.h in this case, is defined as "temptable" and that the
bed thermistor table is defined as "bedtemptable", and that the number
of temps is defined as NUMTEMPS for the heater and BNUMTEMPS for the
bed.
There are examples of all these configurations in the configuration.h
file. Please look at them before you change anything.
Complete beginners guide
=======================
From a fresh Ubuntu install how to update the firmware of your Prusa Mendel ?
(the specifics are for the Prusa Mendel built at the Bath RepRap masterclass.
This version uses the http://reprap.org/wiki/Sanguinololu.
Some details may not fit your hardware, be sure to check what you are doing)
From a fresh Ubuntu install how to update the firmware of your Prusa
Mendel ? (the specifics are for the Prusa Mendel built at the Bath
RepRap masterclass. This version uses the
http://reprap.org/wiki/Sanguinololu. Some details may not fit your
hardware, be sure to check what you are doing)
Steps 3,10,11 are hardware-specific to the Sanguinololu and Bath Prusa and should be skipped or modified accordingly for other hardware such as the Arduino Mega 2560
Steps 3,10,11 are hardware-specific to the Sanguinololu and Bath Prusa
and should be skipped or modified accordingly for other hardware such
as the Arduino Mega 2560
Software installation
----------------------
@ -40,8 +64,9 @@ Software installation
1. Install the required packages (gcc-avr, avr-libc, etc.)
sudo apt-get install arduino-core
2. Get the arduino software version 0023, uncompress it in a directory.
Arduino software v1 has not been tested much, but is known to work with some boards.
2. Get the arduino software version 0023, uncompress it in a
directory. Arduino software v1 has not been tested much, but is known
to work with some boards.
http://www.arduino.cc/en/Main/Software
3. Get the sanguino software, version 0023
@ -61,10 +86,12 @@ Optionally, switch to the desired branch
Firmware compilation and upload
-------------------------------
5. Edit INSTALL_DIR inside Sprinter/Makefile (do not mind the default reference to arduino 0022)
5. Edit INSTALL_DIR inside Sprinter/Makefile (do not mind the default
reference to arduino 0022)
6. Run make. If everything goes well Sprinter/applet/Sprinter.cpp should have been created.
You can safely ignore the error message mentioning arduino-0023/hardware/arduino/cores/arduino/WString.o
6. Run make. If everything goes well Sprinter/applet/Sprinter.cpp
should have been created. You can safely ignore the error message
mentioning arduino-0023/hardware/arduino/cores/arduino/WString.o
7. Connect your Sanguinololu to your computer
http://reprap.org/wiki/Sanguinololu
@ -81,7 +108,8 @@ You can safely ignore the error message mentioning arduino-0023/hardware/arduino
float axis_steps_per_unit[]
set values that match your hardware. For the special cast gears of the Bath Masterclass Prusa Mendel, these values are
set values that match your hardware. For the special cast gears of the
Bath Masterclass Prusa Mendel, these values are
float axis_steps_per_unit[] = {91.42857, 91.42857, 3200/1.25,700};
also for the mentioned hardware setup
@ -90,10 +118,12 @@ also for the mentioned hardware setup
// "no touch == closed circuit == SIG connects to GND"
// see http://reprap.org/wiki/Sanguinololu#Endstops
12. Click on the "play" button to compile. If everything goes well you should see a "Binary sketch size: " message.
12. Click on the "play" button to compile. If everything goes well you
should see a "Binary sketch size: " message.
13. Click on "the arrow going to the right" button to upload (you had done steps 7,8,9 before, right ?).
If everything goes well you should see the message "Done uploading".
13. Click on "the arrow going to the right" button to upload (you had
done steps 7,8,9 before, right ?). If everything goes well you should
see the message "Done uploading".
if GEN7 with 20 Mhz is in use set the Fuses for Bootloader to
lfuse= 0xF7 hfuse = 0xD4 efuse = FD
@ -101,8 +131,9 @@ Brownout must be 2,7 V
Congratulations, you have just upgraded the firmware of your RepRap !
You can use pronterface.py to do some manual verifications by moving the printer's tip along
the axes and verifying that the physical displacements match the ones indicated on the interface.
You can use pronterface.py to do some manual verifications by moving
the printer's tip along the axes and verifying that the physical
displacements match the ones indicated on the interface.

View file

@ -0,0 +1,99 @@
Arduino build docs rev 0001
jet@allartburns.org
31 Oct 2012 (Merry Goth Xmas!)
[TODO insert boilerplate for FSF/GPL copyright process docs or
Sprinter license]
These docs were written under
Arduino: Arduino-1.0.1
Host: OSX 10.6.8
Sprinter: kliment/experimental clone on 31 Oct 2012
These docs where tested under
Arduino: Arduino-1.0.1
Host: Win7
Sprinter: kliment/experimental clone on 31 Oct 2012
Tester: jet
Status: NOT DONE
Arduino: Arduino-1.0.1
Host: Win8
Sprinter: kliment/experimental clone on 31 Oct 2012
Tester: jet
Status: NOT DONE
Arduino: Arduino-1.0.1
Host: Ubuntu 12
Sprinter: kliment/experimental clone on 31 Oct 2012
Tester: jet
Status: NOT DONE
#####################
# BUILD REQUIREMENTS
#####################
These instructions only apply if you are required to build the code
from source. If you are not required to do this, fetch the compiled
binaries and follow their instructions.
This is not an instructional document on how to use github, avr
utilities, or other development packages. If you do not know how to
use these, find a local friend and ask for their assistance.
On all platforms the build is similar:
- verify that Arduino 1.0.1 or later is installed and generates
code for your specific Arduino.
- get a copy of the Sprinter code. Since we are building from source,
you should branch kliment/Sprinter and clone that code.
The currently supported platforms are
OSX 10.6.8 TODO
OSX 10.7 TODO
Win7/32 TODO
Win7/64 TODO
Win8 TODO
Ubuntu12 TODO
##################
#BUILD STEPS FLASH
##################
1) Launch arduino-1.0.1, set the board and port, verify that it can
see your RAMPS controller.
2) Open the Sprinter.pde or Sprinter.ino file. Arduino-1.0.1 suports
the old format, the name will change now or in the future.
3) Verify (compile) the Sprinter sketch. If it does not compile
completely, exit these instructions and resolve the problem[
This could be as simple as changing a variable in Sprinter.pde or
as complex as installing new/different Arduino software.
4) Upload the sketch to the board. As of 1.0.1, Arduino still
re-compiles everything before an upload, this is a bug in Arduino
not in Sprinter software.
5) If "Done uploading." appears in the dialog box
reset the RAMPS unit
If anything else appears, correct the problem and retry this step
6) Open the Serial Port Monitor and verify the port and bps rate of
your connection. This should trigger a RAMPS reset and you should
see the software announcement in the Serial Monitor.
7) Restart the RAMPS controller by pushing the resset pin. After the
reset, the Serial Monitor should update.
8) At this point the installation should be considered complete.
Exit Arduino
###################
#BUILD STEPS CLIENT
###################
No client software is included in Sprinter. An open-source client
designed to work with RAMPS will be your best test subject. I test
with pronterface, but am happy to test with other clients if
pronterface works and they don't.