EinsyRambo
English • العربية • български • català • čeština • Deutsch • Ελληνικά • español • فارسی • français • hrvatski • magyar • italiano • română • 日本語 • 한국어 • lietuvių • Nederlands • norsk • polski • português • русский • Türkçe • українська • 中文(中国大陆) • 中文(台灣) • עברית • azərbaycanca • |
Release status: Working
Description | 3D Printer controller with TMC2130 stepper drivers.
|
License | Creative Commons Attribution-ShareAlike 3.0
|
Author | |
Contributors | |
Based-on | |
Categories | |
CAD Models | |
External Link |
RAMBo Pages: RAMBo .:. RAMBo v1.0-1.1 .:. RAMBo v1.2 .:. RAMBo v1.3 .:. RAMBo v1.4 .:. RAMBo Firmware .:. RAMBo Development .:. MiniRambo .:. MiniRambo Development .:. EinsyRambo .:. EinsyRambo Development
Contents
Summary
This board is based off MiniRambo, the Arduino MEGA design, and the work of RepRap community. It has 4 Trinamic TMC2130 stepper drivers and 4 mosfet switched outputs.
Differences from MiniRambo
- 4 tmc2130 1/256 microstepping drivers vs. 4 a4982 1/16 microstepping drivers
- Sensorless homing vs. No sensorless homing (Requires advanced tuning)
- 2 mechanical endstop inputs (2pin) + ZProbe (4pin) vs. 6 optical endstop inputs
- SPI control of motor current vs. PWM control of stepper current
- FANS are powered by 5 Volt rail and have tachometer feedback using a 3pin connector vs. 12-24V powered with no feedback.
- Max motor current per driver is RMS 940mAh vs. RMS 1.4A
Powering
Power must be connected to the Primary Power input for the board to operate. The USB connection is isolated from the rest of the board and cannot be a power source.
Features
Logic
- Arduino MEGA compatible Atmega2560 and Atmega32u2 processors are compatible with all RAMPS class firmware
- Crystals for both usb and mcu (timing accurate to 10ppm)
- 3 Thermistor jacks + 4th Thermistor circuit on ZProbe.
Motor Drivers
- 4 Trinamic TMC2130 1/256th microstep motor drivers(2 connectors on Z for Prusa Mendel and other dual Z printer designs)
- SPI Control of stepper current instead of PWM.
- Microstep mode configured by MCU through firmware (SPI, no jumpers needed)
PWM DC outputs (Extruders, Fans, Etc.)
- 4 outputs (1 Extruder, 1 BED, 2 low power (fan,etc)
- Low resistance mosfets for cool running
- Indicator led for each channel
- FANS have 3pin fan connector.
- FANS have 5V instead of 12-24V power source.
- FAN connectors have tachometer feedback pin to the MCU to measure fan speed in capable firmware.
Power
- 2 power input rails
- Heated Bed, 15A 12-24V (15A dedicated fuse)
- Primary Power 10A 12-24V: Motors, Logic & Fans (5A dedicated fuse) + Extruder (5A dedicated fuse)
- Built in SMPS for 5V generation from the Motors, Logic & Fans rail
- Provides 5V power to FANS
PCB
- 6 layer
- 2oz copper on all layers
- High quality, High temperature FR4-TG130 PCB
- Gold ENIG finishing
Connectors
- 4-pin motor,zprobe plug - Molex 5057-9404
- 3-pin fan plug - Molex 5057-9403
- 2-pin thermistor, mech. endstop plug - Molex 5057-9402
Schematic
Fuses
There are 3 user replaceable ATO fuses (the type found in many automotives).
- F1 5A supplies the motors + logic & fans .
- F2 5A supplies the extruder heater.
- F3 15A supplies the heated bed output.
Firmware
Firmware Requirements
Just like Rambo ArduinoAddons need to be installed to make use of all the pins. Not installing ArduinoAddons can result in only partially working features. ArduinoAddons can be installed manually or by the new board manager third party url feature. Rambo_firmware#Arduino_1.6.4.2B_Board_Manager_Plugin
Install TMC2130Stepper Library:
- Select the menu Sketch -> Include Library -> Manage Libraries -> Search for TMC2130Stepper -> Click Install.
MarlinFirmware
- Branch: bugfix-1.1.x
- https://github.com/MarlinFirmware/Marlin/tree/bugfix-1.1.x
- In Configuration.h: Set motherboard. Enable and configure the TMC2130 settings.
#define MOTHERBOARD BOARD_EINSY_RAMBO #define X_DRIVER_TYPE TMC2130 #define Y_DRIVER_TYPE TMC2130 #define Z_DRIVER_TYPE TMC2130 #define E0_DRIVER_TYPE TMC2130
- In Configuration_adv.h: Set sense resistor. Note: Do not set the motor current higher than the max setting 960 mAh.
#define R_SENSE 0.22
- If you have: #error "Update TMC2130Stepper library to 2.2.1 or newer then see section: Firmware Requirements
Marlin fork
https://github.com/ultimachine/Marlin/tree/marlin-1.1.5-einsy0.5c
USB Driver
Windows 10, Linux, Mac have built in CDC driver.
- Boards sourced from UltiMachine can reuse the same Windows CDC driver as the RAMBo USB driver.
- Boards sourced from Prusa3D use their driver.
5V Fans
Noctua: https://noctua.at/en/noctua-expands-5v-fan-line-up-2018
Sunon: https://www.digikey.com/product-detail/en/sunon-fans/ME40100V1-000U-G99/259-1707-ND/
RepRapDiscount Full Graphic Controller Smart Controller
http://reprap.org/wiki/RepRapDiscount_Full_Graphic_Smart_Controller
Install U8glib Library:
- Select the menu Sketch -> Include Library -> Manage Libraries -> Search for U8glib -> Click Install.
Settings for Configuration.h:
#define SDSUPPORT #define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER #define ST7920_DELAY_1 DELAY_0_NOP #define ST7920_DELAY_2 DELAY_4_NOP #define ST7920_DELAY_3 DELAY_0_NOP
For Marlin 1.1.9 use this syntax to set the proper timing delays:
#define ST7920_DELAY_1 DELAY_NS(0) #define ST7920_DELAY_2 DELAY_NS(4) #define ST7920_DELAY_3 DELAY_NS(0)
When using the DELAY_NS syntax you may need to specify higher values for ST7920_DELAY_2 since it is specified nanoseconds. Starting at a value of 800 and reducing until just above the point that you experience display instability. If the P1 port is connected correctly to EXP1 on the LCD then the backlight should be on. If it is not on then the LCD controller is not getting power. The connection is most likely reversed.
RED LCD: The connectors on this version are reversed compared to the original version. This is a problem because the connectors are now keyed on both ends. One solution is to cut the stub on one side of the cables so the connection can be oriented correctly.
BLTouch example
In this example the PWM signal we need is on the ZMIN pin. It is repurposed to deploy the BLTouch. The YMIN port is remapped to serve as a Z Min endstop.
Configuration.h settings:
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN #define Z_ENDSTOP_SERVO_NR 0 // Defaults to SERVO 0 connector. #define Z_SERVO_ANGLES {10,90} // Z Servo Deploy and Stow angles #define NUM_SERVOS 1
Remap pins_EINSYRAMBO.h
#define SERVO0_PIN 10 #define Z_MIN_PIN 11 //Y-MIN on board.
Here is a preconfigured Marlin example firmware. https://github.com/ultimachine/Marlin/tree/Einsy-1.1.5-servo-example
High Temp Sensor
You can use an External thermocouple board or PT100 amplifier board connected to a spare analog pin for higher temp readings.
There External thermocouple board based on ExtThermoCouple_1.0:
https://e3d-online.com/external-thermocouple-board-v1-0
PT100 amplifier board:
https://e3d-online.com/pt100-amplifier-board
https://e3d-online.com/v6-pt100-sensor-kit
Wire the signal from the sensor board to a spare analog pin 8 (PK0) on the P3 header. A pin map reference for P3 is shown here: EinsyRambo_development#Digital_Pin_Locations
Set the right temp sensor type in Configuration.h or Configuration_prusa.h:
#define TEMP_SENSOR_0 20 //PT100 #define TEMP_SENSOR_0 -1 //Thermocouple with AD595
Remap pins_EINSYRAMBO.h or pins_Einsy_1_0.h
#define TEMP_0_PIN 8
Changelog
1.1a Revision Summary
- Added 2Mb serial flash
- Added voltage translators for serial flash
- Added tri-state buffer to block 3.3V MISO on the SD Card from the 5V MISO bus
- Added barrel-relief to bottom side of thermal vias for TMC2130, FETs and SMPS
- Added 3.3V LDO for serial flash
Troubleshooting
This is a generic troubleshooting guide. These steps may vary depending on manufacturer configuration. Contact your supplier if these steps do not help.
- Cannot connect with 3D printing control software
- Is the power indicator LED on?
- Is correct driver installed? USB Driver
- Is there firmware installed on your Mini-Rambo? Firmware
- All Heater and Fan LEDs stay lit when board is powered.
- Check that the power source is not plugged into the Heater outputs.