Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

How to Use SKR V1.4: Examples, Pinouts, and Specs

Image of SKR V1.4Design with SKR V1.4 in Cirkit Designer

Introduction

The SKR V1.4, manufactured by BTT (BigTreeTech) with part ID 001, is a powerful 32-bit control board designed for 3D printers. It is based on the ARM Cortex-M3 processor, offering enhanced performance and flexibility compared to traditional 8-bit boards. The SKR V1.4 supports a wide range of stepper motor drivers, multiple connectivity options, and is compatible with popular open-source firmware like Marlin, making it a versatile choice for custom 3D printer builds and upgrades.

Explore Projects Built with SKR V1.4

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Arduino Uno R3 Controlled Pan-Tilt Security Camera with Night Vision: A project utilizing SKR V1.4 in a practical application
Arduino Uno R3 Controlled Pan-Tilt Security Camera with Night Vision

This circuit features an Arduino Uno R3 microcontroller connected to a Huskylens (an AI camera module), an IR LED Night Vision Ring, and a Tilt Pan module. The Huskylens is interfaced with the Arduino via I2C communication using the SDA and SCL lines, while the Tilt Pan module is controlled by the Arduino through digital pins 10 and 11 for signal and output control. The IR LED ring and Tilt Pan are powered directly from the Arduino's 5V output, and all components share a common ground.

Open Project in Cirkit Designer
Image of Arduino-Controlled Rhino Motor Driver for Multi-Motor Robotics Platform: A project utilizing SKR V1.4 in a practical application
Arduino-Controlled Rhino Motor Driver for Multi-Motor Robotics Platform

This circuit features an Arduino UNO microcontroller interfaced with two Rhino motor drivers to control four DC motors, powered by a 12V battery. The Arduino is also connected to a FLYSKY FS-IA6 receiver to receive remote control signals, which likely dictate the motor operation. The code provided for the Arduino is a template with empty setup and loop functions, indicating that the specific control logic for the motors and interaction with the receiver is yet to be implemented.

Open Project in Cirkit Designer

Common Applications and Use Cases

Technical Specifications

Key Technical Details

Pin Configuration and Descriptions

Main Connectors

Pin Name Description
X, Y, Z, E0, E1 Stepper motor driver sockets for axis and extruder control
HE0, HE1 Outputs for hotend heaters
BED Output for heated bed
FAN0, FAN1, FAN2 Controllable fan outputs
TH0, TH1, THB Thermistor inputs for temperature monitoring
EXP1, EXP2 Connectors for LCD or touchscreen displays
BLTouch Dedicated port for auto bed leveling sensor
USB USB Type-B port for firmware upload and PC communication
SD SD card slot for offline printing

Power Inputs

Pin Name Description
VIN Main power input (12V–24V DC)
5V 5V power supply for logic circuits

Communication Interfaces

Pin Name Description
UART Serial communication interface
SPI Serial Peripheral Interface
I2C Inter-Integrated Circuit interface

Usage Instructions

How to Use the SKR V1.4 in a Circuit

  1. Power Supply: Connect a 12V–24V DC power supply to the VIN and GND terminals. Ensure the power supply can handle the current requirements of your 3D printer.
  2. Stepper Drivers: Insert compatible stepper drivers (e.g., TMC2208, A4988) into the X, Y, Z, E0, and E1 sockets. Ensure the drivers are oriented correctly.
  3. Motors and Sensors: Connect stepper motors, thermistors, and endstops to their respective ports.
  4. Heaters and Fans: Attach the hotend heater, heated bed, and fans to the HE0, BED, and FAN ports.
  5. Firmware: Flash the board with compatible firmware (e.g., Marlin) using the USB port or SD card. Configure the firmware to match your hardware setup.
  6. LCD/Touchscreen: Connect an LCD or touchscreen display to the EXP1 and EXP2 ports if required.
  7. Additional Features: Attach optional components like a BLTouch sensor or filament runout sensor to their dedicated ports.

Important Considerations and Best Practices

Example Code for Marlin Firmware Configuration

Below is an example of configuring the SKR V1.4 for use with an Arduino IDE-compatible Marlin firmware:

// Example Marlin configuration for SKR V1.4
// Ensure you select the correct board in the Marlin configuration file

#define MOTHERBOARD BOARD_BTT_SKR_V1_4
#define SERIAL_PORT -1  // Use USB for communication
#define SERIAL_PORT_2 0 // Optional second serial port

// Define stepper motor settings
#define DEFAULT_AXIS_STEPS_PER_UNIT   { 80, 80, 400, 500 } // X, Y, Z, E
#define DEFAULT_MAX_FEEDRATE          { 300, 300, 5, 25 }  // mm/s
#define DEFAULT_MAX_ACCELERATION      { 3000, 3000, 100, 1000 }

// Define thermistor types
#define TEMP_SENSOR_0 1  // Hotend thermistor
#define TEMP_SENSOR_BED 1 // Heated bed thermistor

// Enable BLTouch for auto bed leveling
#define BLTOUCH
#define AUTO_BED_LEVELING_BILINEAR
#define Z_SAFE_HOMING

Troubleshooting and FAQs

Common Issues and Solutions

  1. Board Not Powering On:

    • Ensure the power supply is connected correctly and providing the correct voltage (12V–24V).
    • Check for loose or damaged wires.
  2. Stepper Motors Not Moving:

    • Verify the stepper drivers are installed correctly and configured for the correct current.
    • Check the firmware configuration for motor settings.
  3. Temperature Readings Incorrect:

    • Ensure the thermistors are connected to the correct ports (TH0, TH1, THB).
    • Verify the thermistor type is correctly defined in the firmware.
  4. USB Connection Not Recognized:

    • Install the correct USB drivers for the SKR V1.4.
    • Try a different USB cable or port.
  5. Firmware Not Flashing:

    • Ensure the firmware file is named correctly (e.g., firmware.bin) and placed on the SD card.
    • Use a freshly formatted SD card (FAT32 format).

FAQs