3D-Drucker/Building Firmware: Unterschied zwischen den Versionen

Aus Wiki CCC Göttingen
Zur Navigation springen Zur Suche springen
(Konfiguration von Merlin)
(configuration v2 added)
 
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt)
Zeile 18: Zeile 18:
  MCU = atmega644p
  MCU = atmega644p
  HARDWARE_MOTHERBOARD    = 62
  HARDWARE_MOTHERBOARD    = 62
  INSTALL_DIR = ../../arduino-0023
  INSTALL_DIR = ../../arduino-0023g


danach sollte das ganze mit einem einfachen make durchbauen (im Verzeichnis <main>/Marlin/Marlin).
danach sollte das ganze mit einem einfachen make durchbauen (im Verzeichnis <main>/Marlin/Marlin).
Zeile 26: Zeile 26:
  avrdude -c avrispmkII -P usb -p atmega644p -U flash:w:applet/Marlin.hex:i
  avrdude -c avrispmkII -P usb -p atmega644p -U flash:w:applet/Marlin.hex:i


<gallery widths=300px heights=200px perrow=3 >
Datei:AlexN900 02 20130308 001.jpg
Datei:AlexN900 02 20130308 002.jpg
</gallery>


== [https://github.com/ErikZalm/Marlin/commit/b3ebb71704dcba61d3f1f2c7e5dcc306ff2fcb9c ErikZalm/Marlin@b3ebb71704] ==
== [https://github.com/ErikZalm/Marlin/commit/b3ebb71704dcba61d3f1f2c7e5dcc306ff2fcb9c ErikZalm/Marlin@b3ebb71704] ==


=== Version (hefee, 1) ===
Makefile anpassen:
Makefile anpassen:


Zeile 58: Zeile 64:
   #define DEFAULT_MAX_FEEDRATE          {500, 500, 50, 45}    // (mm/sec)
   #define DEFAULT_MAX_FEEDRATE          {500, 500, 50, 45}    // (mm/sec)


=== Version (hefee, 2) ===
all changes are in Configuration.h.
==== Max Pos ====
  #define X_MAX_POS 200
  #define Y_MAX_POS 174
  #define Z_MAX_POS 105
==== PID Extruder ====
  // Mendel Parts V9 on 12V
  #define  DEFAULT_Kp 63.0
  #define  DEFAULT_Ki 2.25
  #define  DEFAULT_Kd 440
==== Velocity, Feedrate and Acceleration (max start/stop feedrate) ====
  #define DEFAULT_AXIS_STEPS_PER_UNIT  {78.7402,78.7402,200*16/1.25,760*1.1*.84}  // default steps per unit
  #define DEFAULT_MAX_FEEDRATE          {500, 500, 10, 43}        // (mm/sec)
  #define DEFAULT_MAX_ACCELERATION      {9000, 1000, 20, 20}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.





Aktuelle Version vom 20. März 2013, 20:18 Uhr

Erstmal das tar, was uns als "orginal firmware" gegeben wurde [1]. Leider kann das nicht passen, weil da Änderungen drin, sind die nach dem Workshop passiert sind. Deswegen Flucht nach vorne und neue Version selber bauen :)

Toolchain einrichten[Bearbeiten]

<main>
-> arduino-0023
-> Marlin

Anpassen an unser Board[Bearbeiten]

  • Makfile anpassen (<main>/Marlin/Marlin/Makefile)
MCU = atmega644p
HARDWARE_MOTHERBOARD    = 62
INSTALL_DIR = ../../arduino-0023g

danach sollte das ganze mit einem einfachen make durchbauen (im Verzeichnis <main>/Marlin/Marlin).

da wir den komischen Booloader nicht verstehen, schuppsen wir das ganze nun einfach via avrispmkII zum Board:

avrdude -c avrispmkII -P usb -p atmega644p -U flash:w:applet/Marlin.hex:i


ErikZalm/Marlin@b3ebb71704[Bearbeiten]

Version (hefee, 1)[Bearbeiten]

Makefile anpassen:

 HARDWARE_MOTHERBOARD ?= 62
 ARDUINO_INSTALL_DIR  ?= ../../arduino-0023
 ARDUINO_VERSION      ?= 23


Configuration.h (must have):

 #define TEMP_SENSOR_0 1    //NTC 100k
 #define TEMP_SENSOR_BED 1  //NTC 100k
 #define EXTRUDE_MINTEMP 155  //We print PLA with ~160°C
 //#define ENDSTOPPULLUPS // Comment this out
 const bool X_ENDSTOPS_INVERTING = false; // X is not inverted
 const bool Y_ENDSTOPS_INVERTING = false; // Y is not inverted
 #define DISABLE_MAX_ENDSTOPS             // We don't have max endstops
 #define DISABLE_Z true 
 #define INVERT_Y_DIR true
 #define DEFAULT_AXIS_STEPS_PER_UNIT   {78.7402,78.7402,200*16/1.25,760*1.1}  // Anzahl der Schritte pro Umdrehung: 200, 16 Micoschritte, 1,25mm Steigung pro Umdrehung


Configuration.h nice to have (all a little bit faster):

 #define TEMP_RESIDENCY_TIME 5   // schneller starten, weil der nur 5sec wartet auf der Soll temperatur
 #define HOMING_FEEDRATE {50*60, 50*60, 5*60, 0}  // set the homing speeds (mm/min)
 #define DEFAULT_MAX_FEEDRATE          {500, 500, 50, 45}    // (mm/sec)


Version (hefee, 2)[Bearbeiten]

all changes are in Configuration.h.

Max Pos[Bearbeiten]

 #define X_MAX_POS 200
 #define Y_MAX_POS 174
 #define Z_MAX_POS 105

PID Extruder[Bearbeiten]

 // Mendel Parts V9 on 12V
 #define  DEFAULT_Kp 63.0
 #define  DEFAULT_Ki 2.25
 #define  DEFAULT_Kd 440

Velocity, Feedrate and Acceleration (max start/stop feedrate)[Bearbeiten]

 #define DEFAULT_AXIS_STEPS_PER_UNIT   {78.7402,78.7402,200*16/1.25,760*1.1*.84}  // default steps per unit
 #define DEFAULT_MAX_FEEDRATE          {500, 500, 10, 43}        // (mm/sec)
 #define DEFAULT_MAX_ACCELERATION      {9000, 1000, 20, 20}     // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.


Original Firmware[Bearbeiten]

koeln.bin

  • lfuse reads as FF
  • hfuse reads as DC
  • efuse reads as FD


avrdude -c avrispmkII -P usb -p atmega644p -U lfuse:w:0xff:m -U hfuse:w:0xdc:m -U efuse:w:0xfd:m



Denk[Bearbeiten]

unterschiedliche Firmware[Bearbeiten]

  • Sprinter
    • Tonokips's firmware
    • Kliment
    • Sprinter #
    • last update Oct 14, 2012
  • Marlin
    • Based-on: Sprinter and grbl
    • Marlin
    • last update Mar 01, 2013
  • grbl
    • vermutlich für cnc Fräsen
    • grbl
    • last update Jan 18, 2013

Board[Bearbeiten]

  • Sanguinololu Release Version 1.3a
  • Hotend
    • NTC 100kΩ
  • Bed
    • NTC 100kΩ