RemRam

From RepRap
Revision as of 07:57, 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:

  1. 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
  1. define BAUDRATE 115200
  2. define MOTHERBOARD BOARD_REMRAM_V1
  1. define X_DRIVER_TYPE TMC2130
  2. define Y_DRIVER_TYPE TMC2130
  3. define Z_DRIVER_TYPE TMC2130
  4. define E0_DRIVER_TYPE TMC2130
  1. define ENDSTOP_INTERRUPTS_FEATURE
  1. define SDSUPPORT

These are the board specific Configuration_adv.h changes:

  1. define MINIMUM_STEPPER_DIR_DELAY 20
  2. define MINIMUM_STEPPER_PULSE 0
  3. define MAXIMUM_STEPPER_RATE 400000
  1. 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
  1. endif

src/pins/pins_REMRAM_V1.h

// Use only one or the other

  1. 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.