Vollautomatischer 3D-gedruckter brushless Nerf Blaster mit Arduino
Komponenten und Zubehör
| Bauteil | Anzahl | Spezifikation / Hinweis |
|---|---|---|
| Arduino Nano Every | 1 | Kompakt, passt in Nerf-Gehäuse, volle Funktionalität |
| Linearsolenoid 12 V DC | 1 | Hub 35 mm, 12 V Nennspannung |
| Brushless DC Motor (Outrunner) | 2 | Für Flywheel-Käfig, 12 V (3S LiPo) tauglich |
| Brushless ESC | 2 | Je Motor ein ESC, ≥20 % Stromreserve, 3S LiPo fähig |
| LiPo 3S 11,1–12,6 V, ≥1300 mAh, ≥25C | 1 | Entladerate: 25C × 1,3 Ah = 32 A Max. |
| Mikroschalter (Miniatur) | 2 | MS1 (Abzug), MS2 (Rev-Trigger) – Low-Current OK |
| N-Channel Power MOSFET (Logic Level) | 1 | >20 V, >15 A @ 5 V Gate (z. B. IRLZ44N) |
| Widerstand 10 kΩ | 1 | R3: Pull-down am MOSFET-Gate |
| Widerstand 4,7 kΩ | 1 | R1: Pull-up an MS2 |
| Widerstand 150 Ω | 1 | Für Status-LEDs (Muzzle Flash) |
| Widerstand 220 Ω | 1 | R2: Gate-Strombegrenzung (optional) |
| Diode 1N4007 | 2 | D1: Verpolungsschutz Arduino VIN; D2: Freilaufdiode Solenoid |
| Kondensator 100 µF (Elektrolyt) | 1 | C1: Puffer an Arduino VIN (Polarität beachten!) |
| Kondensator 100 nF (Keramik) | 1 | C2: Entstörung Arduino VIN |
Benötigte Werkzeuge
- 3D-Drucker (z. B. Artillery X1, 300×300×400 mm)
- Lötstation, Multimeter, Seitenschneider, Schraubendreher
Projekthintergrund
Nachbau der Kang Tao Smart Gun aus Cyberpunk 2077 als funktionsfähiger Nerf-Blaster. 3D-Druck für Optik & Mechanik, Arduino für Ansteuerung von Brushless-Motoren (Flywheels) und Solenoid (Dart-Vorschub). Fokus hier auf Elektronik & Code; Mechanik/3D-Druck siehe Links unten.

Funktionsweise: Dual-Trigger-System

- MS2 (Rev-Trigger, sekundär): Wird gehalten → Brushless-Motoren (Flywheels) drehen hoch
- MS1 (Hauptabzug, primär): Wird gedrückt/gehalten → MOSFET schaltet Solenoid taktend (Ein/Aus)
- Sicherheit: MS1 wirkt nur, solange MS2 gehalten wird (Verhindert Jams bei stehenden Flywheels)
- Leistungsstrom für Motoren/Solenoid fließt nicht über Mikroschalter → billige Schalter OK
Brushless-Motoren (Outrunner)

- Outrunner (Außenläufer) bevorzugt: flacher Bauform, Gehäuse rotiert mit → Flywheels direkt aufdruckbar
- Hintere Befestigungslöcher nötig
- Spannung: ≥ 12,6 V (3S LiPo)
- Strom: ≤ ESC-Nennstrom
- Leistung: > 60 W (hier: 12,6 V × 7 A ≈ 88 W)
- Drehzahl: ~25.000 U/min (kV × Voltage). Beispiel: 2600 kV × 12,6 V ≈ 32.760 U/min → im Code auf 50 % Drosselung (~16.000 U/min), reicht für 25 m Reichweite
Brushless ESCs
- Pro Motor ein eigener ESC (2 Motoren an 1 ESC → Back-EMF stört Timing → Zerstörung)
- Strom: ≥ 20 A (Motor zieht ~7 A)
- Spannung: ≥ 12,6 V (3S)
- BEC (5 V Ausgang) nicht anschließen (OPTO-ESCs bevorzugt). Nur GND + Signal an Arduino.
Akku & Stromversorgung

- Ein Akku für alles (XT60-Stecker empfohlen)
- 3S LiPo (12,6 V vollgeladen)
- Kapazität: ≥ 1300 mAh
- Max. Entladestrom: C-Rating × Ah (25C × 1,3 Ah = 32 A) → deckt ~25 A Last
MOSFET-Schaltung (Solenoid-Treiber)

- N-Channel, Logic Level (voll durchgesteuert bei 5 V Gate)
- Low-Side Switch: MOSFET unterbricht GND-Pfad des Solenoids
- Gate: Arduino Pin 4 → 220 Ω (R2) → Gate; 10 kΩ (R3) Gate→GND (Pull-down)
- Freilaufdiode D2 (1N4007) parallel zum Solenoid (Kathode an 12 V) – schützt MOSFET vor Back-EMF
- Laststrom ~8 A, MOSFET 30 A max → keine Kühlung nötig (kurze Einschaltzeiten)
Solenoid
- 12 V, 35 mm Hub (kürzer = Dart wird nicht ganz in Flywheels geschoben)
- Feder upgraden: 0,9 mm Draht, 14 mm Außendurchmesser, 40 mm Länge (verhindert Jams)
- Kurzzeitbetrieb → ~40 °C, keine Kühlung nötig
- Günstig bei eBay/AliExpress
Sicherheitsschalter
2-Stellungs-Schieberschalter (3 Kontakte, 2 genutzt). Schaltet Arduino-Strom ab → ESCs verlieren Signal → Safe Mode → Motoren aus.
Schutzschaltung (Wichtig!)

- C1 (100 µF) + C2 (100 nF) an Arduino VIN – glätten Spannungseinbrüche (C1 polaritätsempfindlich: Streifen = Minus!)
- D1 (1N4007) in Serie an Vin – Verpolungsschutz
- D2 (1N4007) parallel zum Solenoid – Freilaufdiode
- R1, R2 (4,7 kΩ) Pull-up an MS1, MS2 (verhindern Floating)
- R3 (10 kΩ) Pull-down am MOSFET-Gate
- R4 (150 Ω) für optionale Muzzle-Flash-LEDs (blinken synchron zum Solenoid)
Arduino-Code
const int buttonPinF = 2; // MS2: Flywheel Rev
const int buttonPinS = 5; // MS1: Solenoid
int buttonStateF = 0;
int buttonStateS = 0;
int solenoidPin = 4; // MOSFET Gate
#include <Servo.h>
Servo throttle;
int pos = 0;
int pin = 3; // ESC Signal Pin
void setup() {
pinMode(buttonPinF, INPUT);
pinMode(buttonPinS, INPUT);
throttle.attach(pin);
pinMode(solenoidPin, OUTPUT);
// ESC Arming Sequence
for (pos = 90; pos <= 91; pos += 1) {
throttle.write(pos); // 90 = Stop, 91 = minimal
delay(3700); // ESC-Arming Zeit (3,7 s). Bis 10000 (10 s) erhöhen falls nötig.
}
}
void loop() {
buttonStateF = digitalRead(buttonPinF);
// Flywheel Steuerung
if (buttonStateF == HIGH) {
throttle.write(92); // Idle Speed (leicht drehend für schnelleres Hochfahren)
} else {
throttle.write(97); // Vollgas (~50-60% je nach ESC/Motor). Max ~115.
}
buttonStateS = digitalRead(buttonPinS);
// Solenoid: NUR wenn MS2 (Flywheel) NICHT gedrückt (LOW) UND MS1 gedrückt (LOW)
// Achtung: Pull-ups → gedrückt = LOW!
if (buttonStateF == LOW && buttonStateS == LOW) {
digitalWrite(solenoidPin, HIGH);
delay(90); // Ein-Dauer (Feuerrate einstellen)
digitalWrite(solenoidPin, LOW);
delay(100); // Aus-Dauer
} else {
digitalWrite(solenoidPin, LOW);
}
}
Code-Erklärung
- Arming: Beim Start (Safety-Switch an) fährt ESC-Arming-Sequenz (3,7 s, an ESC anpassen).
- Flywheels: MS2 gedrückt (HIGH) →
throttle.write(92)(Idle). Losgelassen →97(Feuer-Modus). Werte an ESC/Motor anpassen. - Solenoid: Feuer nur bei
MS2 LOW (gedrückt) && MS1 LOW (gedrückt). Takt: 90 ms AN / 100 ms AUS → ~5 Schuss/s. - Safety: Schalter AUS → Arduino stromlos → ESCs ohne Signal → Safe Mode.
3D-Druckdateien
Thingiverse: https://www.thingiverse.com/thing:3984125
- Nerfhaven Forum: Build-Log
- Reddit: r/nerfhomemades
- YouTube: Build-Videos
Schaltplan (Gesamt)

Hinweis: Diode- und Kondensator-Polaritäten genau beachten! Gezeichnet mit AutoCAD.
Herstellungsprozess
- DIY Hausaufgaben-Schreibmaschine zu Hause bauen
- Monitor-Ambilight selbst bauen mit Arduino Nano & WS2812B LEDs
- Deckenventilator per Alexa steuern – Schritt-für-Schritt-Anleitung
- Universelle Android-Fernbedienung mit Arduino, 1Sheeld & IR-Steuerung
- Smartes Sparschwein: Münzprüfer mit Arduino Nano steuern
- Arduino Power Control Center: N-FET, P-FET, Relais & RTC Kit
- LED per Bluetooth mit Arduino steuern – Einfache DIY-Anleitung
- Funktionaler 3D-gedruckter Roboterarm mit Arduino – Schritt-für-Schritt-Anleitung
- DIY Arduino Luftbefeuchter-Steuerung mit Relais – Sichere Hochspannungs-Installation
- Zwei Schrittmotoren mit Arduino Nano & Joystick steuern – Einfaches Tutorial