RemRam

From RepRap
Revision as of 08:01, 24 November 2018 by Le-Seaw (talk | contribs) (Configure Marlin)
Jump to: navigation, search
Crystal Clear action run.png
RemRam

Release status: working

Remram-v1-4-front.jpg
Description
RemRam 32bit Board
License
Author
Contributors
Based-on
Categories
CAD Models
External Link


RemRam 32bit Board für Marlin V2.0


Features

  • 32bit STM32F765VI
       216 MHz
       512 KBytes RAM
       2 MBytes flash
  • 4x TMC2130 stepper driver
       stealthChop
       spreadCycle
       coolStep
       stallGuard
  • 24V main power rail
       heatbed output (15A)
       heater output (5A)
       stepper driver and logic (5A)
  • 5V secondary power rail (3A)
       FAN1 and FAN2
  • 2x 3.3V tertiary power rail (2x 0.5A)
       MCU power (IO)
       SD card power
  • Robust connectors
  • Quality, high powered MOSFET
  • 4 layer board with single side component placement

PCB design

Software used KiCad 5.0

Alternative Parts

You can substitute the TPS5408 with a TPS5402. In this case you also need to replace R4 with a Zero Ohm resistor.

Compiling the firmware

Configure Marlin

Following change is needed, until a bug is fixed:

Marlin/src/HAL/HAL_STM32/HAL_timers_STM32.h:


 #elif defined STM32F7xx
 #define HAL_TIMER_RATE (F_CPU/2) // frequency of timer peripherals
 #ifndef STEP_TIMER
   #define STEP_TIMER 2 // <- Was originally "5"
 #endif
 #ifndef TEMP_TIMER
   #define TEMP_TIMER 7
 #endif
 #endif

These are the board specific Configuration.h changes:

#define SERIAL_PORT 1 // 1 = UART connection on EXT3
                      // -1 = Serial over USB (see: Virtual COM Port Support (Serial over USB))
                      // You can also configure SERIAL_PORT_2

#define BAUDRATE 115200
#define MOTHERBOARD BOARD_REMRAM_V1

#define X_DRIVER_TYPE  TMC2130
#define Y_DRIVER_TYPE  TMC2130
#define Z_DRIVER_TYPE  TMC2130
#define E0_DRIVER_TYPE TMC2130

#define ENDSTOP_INTERRUPTS_FEATURE

#define SDSUPPORT

These are the board specific Configuration_adv.h changes:

#define MINIMUM_STEPPER_DIR_DELAY 20
#define MINIMUM_STEPPER_PULSE 0
#define MAXIMUM_STEPPER_RATE 400000

#if HAS_TRINAMIC

  // You can change ever value EXCEPT R_SENSE based on your setup.
  // Example values of my HEVO setup

  #define R_SENSE           0.12  // DO NOT CHANGE! Need to be 0.12 for RemRam V1
  #define HOLD_MULTIPLIER    0.3  // Scales down the holding current from run current
  #define INTERPOLATE       true  // Interpolate X/Y/Z_MICROSTEPS to 256

  #define X_CURRENT          750  // rms current in mA. Multiply by 1.41 for peak current.
  #define X_MICROSTEPS       256  // 0..256

  #define Y_CURRENT          750
  #define Y_MICROSTEPS       256

  #define Z_CURRENT          750
  #define Z_MICROSTEPS       256

  #define E0_CURRENT         400
  #define E0_MICROSTEPS      256


  #define STEALTHCHOP
  #define MONITOR_DRIVER_STATUS

  #if ENABLED(MONITOR_DRIVER_STATUS)
    #define CURRENT_STEP_DOWN     50  // [mA]
    #define REPORT_CURRENT_CHANGE
    #define STOP_ON_ERROR
  #endif

  #define SENSORLESS_HOMING // If you want to use sensorless homing

  #if ENABLED(SENSORLESS_HOMING) || ENABLED(SENSORLESS_PROBING)
    #define X_STALL_SENSITIVITY  2
    #define Y_STALL_SENSITIVITY  2
    #define Z_STALL_SENSITIVITY  2
  #endif

  #define TMC_DEBUG // Helpfull when setting up your system

#endif


src/pins/pins_REMRAM_V1.h

// Use only one or the other
#define SDSS               57   // Onboard SD card reader
//#define SDSS              9   // LCD SD card reader

Of course you need to aditionally change the configuration files based on your particular printer setup.