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

Aus Wiki CCC Göttingen
Wechseln zu: Navigation, Suche
(configuration v2 added)
 
(6 dazwischenliegende Versionen von 2 Benutzern werden 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 27: Zeile 27:
  
  
 +
<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] ==
 +
 +
=== Version (hefee, 1) ===
 +
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) ===
 +
 +
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.
  
  
Zeile 45: Zeile 103:
  
 
== Denk ==
 
== Denk ==
 
+
=== unterschiedliche Firmware ===
  
 
* Sprinter
 
* Sprinter
 
** Tonokips's firmware
 
** Tonokips's firmware
 
** Kliment
 
** Kliment
** [https://github.com/kliment/Sprinter Sprinter] last update Oct 14, 2012
+
** [https://github.com/kliment/Sprinter Sprinter] #
 +
** last update Oct 14, 2012
  
 
* Marlin
 
* Marlin
 
** Based-on: Sprinter and grbl
 
** Based-on: Sprinter and grbl
** [https://github.com/ErikZalm/Marlin Marlin] last update Mar 01, 2013
+
** [https://github.com/ErikZalm/Marlin Marlin]
 +
** last update Mar 01, 2013
  
 
* grbl
 
* grbl
 
** vermutlich für cnc Fräsen  
 
** vermutlich für cnc Fräsen  
**[https://github.com/grbl/grbl/commits/master grbl] last update Jan 18, 2013
+
**[https://github.com/grbl/grbl/commits/master grbl]  
 +
** last update Jan 18, 2013
  
 +
===Board===
 +
* Sanguinololu Release Version 1.3a
 +
* Hotend
 +
** NTC 100kΩ
 +
* Bed
 +
** NTC 100kΩ
  
 
[[Category:3D-Drucker]]
 
[[Category:3D-Drucker]]

Aktuelle Version vom 20. März 2013, 21: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

<main>
-> arduino-0023
-> Marlin

Anpassen an unser Board

  • 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

Version (hefee, 1)

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)

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.


Original Firmware

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

unterschiedliche Firmware

  • 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

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