Stufin
Home Quick Cart Profile

3D Printing Pen

Buy Now on Stufin

Weight

200-300 grams

Dimensions

150mm x 50mm x 30mm

Temperature Range

160C - 240C

Speed

10-30 mm/s

Filament Compatibility

PLA, ABS, and other thermoplastic materials

Power Supply

Rechargeable battery, USB charging

Operating System

None (standalone device)

Conclusion

The 3D Printing Pen is an innovative tool that empowers users to create complex 3D objects with ease. Its portability, ease of use, and versatility make it an ideal tool for artists, designers, educators, and hobbyists alike. With its adjustability, safety features, and compatibility with various filaments, the 3D Printing Pen is a powerful tool for anyone looking to explore the world of 3D printing.

Pin Configuration

  • 3D Printing Pen Documentation
  • Pinout Explanation
  • The 3D Printing Pen has a total of 6 pins, which are used to connect to a microcontroller or a computer to control the pen's operations. Below is a detailed explanation of each pin:
  • Pin 1: VCC (positive power supply)
  • Function: Provides power to the 3D Printing Pen
  • Voltage: 5V to 12V DC (dependent on the specific pen model)
  • Connection: Typically connected to the positive voltage rail of a power supply or a battery
  • Pin 2: GND (ground)
  • Function: Provides a reference ground connection for the pen
  • Voltage: 0V
  • Connection: Typically connected to the negative voltage rail of a power supply or a battery
  • Pin 3: CLK (clock signal)
  • Function: Clock signal input for the pen's motor control
  • Frequency: Typically 16 kHz to 20 kHz (dependent on the specific pen model)
  • Connection: Connected to a digital output on a microcontroller or a clock signal generator
  • Pin 4: DIR (direction control)
  • Function: Controls the direction of the motor (forward or reverse)
  • Logic Level: TTL (Transistor-Transistor Logic) compatible
  • Connection: Connected to a digital output on a microcontroller
  • Pin 5: EN (enable signal)
  • Function: Enables or disables the motor operation
  • Logic Level: TTL compatible
  • Connection: Connected to a digital output on a microcontroller
  • Pin 6: T (temperature sensor input)
  • Function: Analog input for the temperature sensor (optional)
  • Voltage Range: Typically 0V to 3.3V or 0V to 5V (dependent on the specific pen model)
  • Connection: Connected to an analog input on a microcontroller or a dedicated temperature sensor amplifier
  • Connection Structure
  • To connect the 3D Printing Pen to a microcontroller or a computer, follow this structure:
  • VCC (Pin 1) -> 5V to 12V Power Supply or Battery +
  • GND (Pin 2) -> Power Supply or Battery - / Microcontroller GND
  • CLK (Pin 3) -> Microcontroller Digital Output (e.g., Pin 13 on Arduino Uno)
  • DIR (Pin 4) -> Microcontroller Digital Output (e.g., Pin 12 on Arduino Uno)
  • EN (Pin 5) -> Microcontroller Digital Output (e.g., Pin 11 on Arduino Uno)
  • T (Pin 6) -> Microcontroller Analog Input (e.g., A0 on Arduino Uno) or Dedicated Temperature Sensor Amplifier
  • Important Notes
  • Ensure proper voltage and current supply to the 3D Printing Pen to avoid damage.
  • Use a suitable motor driver or controller to drive the pen's motor, if not already integrated into the pen.
  • For temperature sensor input (Pin 6), a dedicated amplifier or analog-to-digital converter (ADC) might be required, depending on the specific pen model and microcontroller used.
  • Consult the microcontroller's documentation for pinouts and connection guidelines.
  • By following this documentation, you can successfully connect and control your 3D Printing Pen using a microcontroller or computer.

Code Examples

3D Printing Pen Documentation
Overview
The 3D Printing Pen is a handheld device that allows users to create 3D objects by extruding melted plastic filament in a controlled manner. This component is a versatile tool for artists, designers, and makers, enabling them to bring their ideas to life.
Technical Specifications
Input voltage: 12V
 Input current: 2A
 Filament type: PLA, ABS
 Temperature range: 180C - 220C
 Printing speed: 10 mm/s - 50 mm/s
Communication Protocols
USB (serial communication)
Bluetooth Low Energy (BLE)
Code Examples
### Example 1: Basic Line Drawing using Arduino
In this example, we will use an Arduino board to control the 3D Printing Pen and draw a simple line.
Hardware Requirements
3D Printing Pen
 Arduino Board (e.g., Arduino Uno)
 USB cable
Software Requirements
Arduino IDE (version 1.8.x or later)
Code
```cpp
// Define the pen's serial communication pin
#define PEN_SERIAL_PIN 9
void setup() {
  // Initialize the serial communication
  Serial.begin(9600);
  pinMode(PEN_SERIAL_PIN, OUTPUT);
}
void loop() {
  // Set the pen's temperature to 200C
  Serial.print("M104 T:200
");
  delay(500);
// Move the pen to the starting position (x, y, z)
  Serial.print("G1 F100 X10 Y10 Z10
");
  delay(100);
// Draw a line from (10, 10, 10) to (50, 50, 10)
  Serial.print("G1 F100 X50 Y50 Z10
");
  delay(1000);
// Turn off the pen's motor
  Serial.print("M18
");
  delay(500);
}
```
### Example 2: Creating a Simple Shape using Python and BLE
In this example, we will use a Python script to control the 3D Printing Pen over Bluetooth Low Energy (BLE) and create a simple square shape.
Hardware Requirements
3D Printing Pen
 BLE module (e.g., HM-10)
 Python-compatible microcontroller (e.g., Raspberry Pi)
Software Requirements
Python 3.x
 BlueZ library (for BLE communication)
Code
```python
import bluez
# Initialize the BLE connection
pen_ble_address = "12:34:56:78:90:AB"
pen_ble_service_uuid = "0000abcd-1234-5678-90ab-cdef01234567"
pen_ble_characteristic_uuid = "0000abcd-1234-5678-90ab-cdef01234568"
pen_ble = bluez.BlueZ()
pen_ble.connect(pen_ble_address)
# Set the pen's temperature to 200C
pen_ble.write_characteristic(pen_ble_service_uuid, pen_ble_characteristic_uuid, b"M104 T:200
")
# Move the pen to the starting position (x, y, z)
pen_ble.write_characteristic(pen_ble_service_uuid, pen_ble_characteristic_uuid, b"G1 F100 X10 Y10 Z10
")
# Draw a square shape
pen_ble.write_characteristic(pen_ble_service_uuid, pen_ble_characteristic_uuid, b"G1 F100 X20 Y10 Z10
")
pen_ble.write_characteristic(pen_ble_service_uuid, pen_ble_characteristic_uuid, b"G1 F100 X20 Y20 Z10
")
pen_ble.write_characteristic(pen_ble_service_uuid, pen_ble_characteristic_uuid, b"G1 F100 X10 Y20 Z10
")
pen_ble.write_characteristic(pen_ble_service_uuid, pen_ble_characteristic_uuid, b"G1 F100 X10 Y10 Z10
")
# Turn off the pen's motor
pen_ble.write_characteristic(pen_ble_service_uuid, pen_ble_characteristic_uuid, b"M18
")
# Disconnect from the pen
pen_ble.disconnect()
```
Note: The above examples are simplified and intended to provide a basic understanding of how to interact with the 3D Printing Pen. You may need to modify the code to suit your specific use case and requirements.