Earth Explorer Sphere: A DIY Robotic Globe That Opens Into Crust, Mantle & Core

Earth Explorer Sphere: A DIY Robotic Globe That Opens Into Crust, Mantle & Core | Kids Robotics Project
Robotics Project · Ages 9+

The Earth Explorer Sphere: a globe that opens itself up to show you the whole planet

Build a motorized globe that splits open in two stages — first the Crust, then the Mantle — glowing to reveal a molten Core underneath, with its own lights and sound effects. A full weekend robotics build using an Arduino, two servo motors, and a handful of craft supplies.

CRUST MANTLE CORE

What you're building

A hands-on Earth science model that teaches robotics, circuits, and geology in one project.

The Earth Explorer Sphere looks like a plain globe sitting on a stand. Press the button, and two hidden servo motors take over: the outer shell splits and swings open to show the Mantle layer glowing orange underneath, then the Mantle opens to reveal a pulsing, glowing Core at the center. Each stage triggers its own light color and a short sound clip explaining that layer, so the model teaches itself.

Crust

The thin, rocky outer shell we live on. Thinnest layer, but the one we know best.

Mantle

A thick layer of hot, slow-moving rock that makes up most of Earth's volume.

Core

A super-hot metal center, split into a liquid outer core and a solid inner core.

Materials list

Most parts can be reused from a beginner Arduino kit.

Electronics

  • 1x Arduino Uno (or Uno-compatible board)
  • 2x SG90 micro servo motors
  • 1x NeoPixel LED ring (12 LEDs)
  • 1x DFPlayer Mini MP3 module + micro SD card
  • 1x small 8-ohm speaker
  • 1x push button
  • 1x 220-ohm resistor
  • 1x 10k-ohm resistor (if not using internal pull-up)
  • Jumper wires + breadboard
  • External 5V 2A power supply (for the servos and LEDs)

Craft & build supplies

  • 1x foam ball or 3D-printed hollow sphere (15–20 cm), pre-cut into two hinged shells
  • 1x smaller inner ball for the Mantle layer
  • 1x tiny ball or bead for the Core
  • Acrylic paint (blue/green, orange, red/yellow)
  • Hot glue gun
  • Craft knife (adult use only)
  • Small wooden or 3D-printed display stand
  • Thin dowels or paperclip hinges

Circuit diagram

Every part connects back to the Arduino Uno. Double-check colors before powering on.

ARDUINO UNO USB / 5V power in SERVO 1 Crust hatch Signal → Pin 9 SERVO 2 Mantle hatch Signal → Pin 10 NEOPIXEL RING 12 LEDs Data → Pin 6 PUSH BUTTON Start sequence Pin 4 DFPLAYER MINI MP3 module RX/TX → Pins 2 & 3 SPEAKER 8-ohm, small 5V POWER Supply, 2A+ Shared 5V & GND

Tip: Power the two servos and the NeoPixel ring from the external 5V supply, not directly from the Arduino's 5V pin — servos can draw more current than the Arduino can safely provide. Connect all grounds together.

Wiring reference table

ComponentComponent PinArduino Pin
Servo 1 (Crust hatch)SignalPin 9
Servo 2 (Mantle hatch)SignalPin 10
NeoPixel RingData InPin 6
Push ButtonSignalPin 4 (internal pull-up)
DFPlayer MiniRXPin 3 (via 1k resistor)
DFPlayer MiniTXPin 2
All componentsGNDCommon GND rail

Step-by-step build instructions

Work through these in order — each step builds on the last one.

  1. Prep the three shells

    Cut or 3D print the outer sphere into two hemisphere shells (Crust), a smaller inner sphere for the Mantle, and a tiny center ball for the Core. Paint the Crust shell blue-green, the Mantle orange, and the Core bright yellow-red.

  2. Mount Servo 1 in the base

    Fix Servo 1 inside the stand so its horn connects to a hinge on the Crust shell. When the servo rotates, the top half of the Crust should swing open like a lid.

  3. Mount Servo 2 on the Mantle layer

    Attach Servo 2 inside the Mantle shell in the same way, so it opens the Mantle only after the Crust has already opened and exposed it.

  4. Install the NeoPixel ring

    Glue the NeoPixel ring around the Core, facing outward, so its glow lights up both the Mantle and Core cavities once the shells open.

  5. Wire up the DFPlayer and speaker

    Load your SD card with three short MP3 clips (Crust fact, Mantle fact, Core fact) named 0001.mp3, 0002.mp3, 0003.mp3. Mount the speaker inside the base, facing a small grille cut into the stand.

  6. Add the push button

    Mount the push button on the front of the stand, wired with an internal pull-up so it reads LOW when pressed.

  7. Connect everything to the Arduino

    Follow the wiring table above. Power the servos and LEDs from the external 5V supply, and share a common ground between the Arduino and the external supply.

  8. Upload the code and test

    Upload the sketch below, place the Sphere in its closed position, and press the button. The Crust should open first, then the Mantle, with lights and sounds at each stage.

Arduino code

Copy this into a new sketch in the Arduino IDE. Install the Servo, Adafruit_NeoPixel, and DFRobotDFPlayerMini libraries first from the Library Manager.

#include <Servo.h>
#include <Adafruit_NeoPixel.h>
#include <SoftwareSerial.h>
#include <DFRobotDFPlayerMini.h>

// ---- Pin setup ----
#define SERVO1_PIN     9   // Crust hatch
#define SERVO2_PIN     10  // Mantle hatch
#define BUTTON_PIN     4
#define NEOPIXEL_PIN   6
#define NUM_LEDS       12
#define DF_RX_PIN      2
#define DF_TX_PIN      3

Servo crustServo;
Servo mantleServo;
Adafruit_NeoPixel ring(NUM_LEDS, NEOPIXEL_PIN, NEO_GRB + NEO_KHZ800);
SoftwareSerial dfSerial(DF_RX_PIN, DF_TX_PIN);
DFRobotDFPlayerMini dfPlayer;

bool isOpen = false;

void setup() {
  pinMode(BUTTON_PIN, INPUT_PULLUP);

  crustServo.attach(SERVO1_PIN);
  mantleServo.attach(SERVO2_PIN);
  crustServo.write(0);   // closed position
  mantleServo.write(0);  // closed position

  ring.begin();
  ring.show();           // all LEDs off at start

  dfSerial.begin(9600);
  dfPlayer.begin(dfSerial);
  dfPlayer.volume(20);   // 0 to 30
}

void loop() {
  if (digitalRead(BUTTON_PIN) == LOW && !isOpen) {
    delay(40); // simple debounce
    if (digitalRead(BUTTON_PIN) == LOW) {
      runExploreSequence();
    }
  }

  if (digitalRead(BUTTON_PIN) == LOW && isOpen) {
    delay(40);
    if (digitalRead(BUTTON_PIN) == LOW) {
      resetSphere();
    }
  }
}

void runExploreSequence() {
  // Stage 1: Crust opens
  setRingColor(90, 169, 201);   // crust blue
  dfPlayer.play(1);             // 0001.mp3 - crust fact
  crustServo.write(100);
  delay(2500);

  // Stage 2: Mantle opens
  setRingColor(224, 138, 62);   // mantle orange
  dfPlayer.play(2);             // 0002.mp3 - mantle fact
  mantleServo.write(100);
  delay(2500);

  // Stage 3: Core glows
  dfPlayer.play(3);             // 0003.mp3 - core fact
  pulseCore(6);                 // glowing pulse effect, 6 cycles

  isOpen = true;
}

void resetSphere() {
  setRingColor(0, 0, 0);
  crustServo.write(0);
  mantleServo.write(0);
  delay(1000);
  isOpen = false;
}

void setRingColor(int r, int g, int b) {
  for (int i = 0; i < NUM_LEDS; i++) {
    ring.setPixelColor(i, ring.Color(r, g, b));
  }
  ring.show();
}

void pulseCore(int cycles) {
  for (int c = 0; c < cycles; c++) {
    for (int b = 0; b < 255; b += 15) {
      setRingColor(255, min(b, 200), 20);
      delay(15);
    }
    for (int b = 255; b > 0; b -= 15) {
      setRingColor(255, min(b, 200), 20);
      delay(15);
    }
  }
}

Beginner tip

If your Sphere is opening in the wrong direction, just swap the servo angles in crustServo.write() and mantleServo.write() — try 0 and 100 the other way around.

Safety notes for young makers

Ask an adult to help with the craft knife, hot glue gun, and any soldering. Always plug in the external power supply last, after every wire is double-checked. Keep drinks away from the electronics, and never open the Sphere while it's mid-motion.

Why this project works so well for learning

The Earth Explorer Sphere ties together three subjects at once. Kids practice basic circuitry by wiring servos, LEDs, and a sound module to a single board. They get an introduction to programming by editing a real Arduino sketch — changing colors, delay times, or sound clips. And because the model physically opens layer by layer, the Earth science sticks: seeing the Crust swing away to reveal the Mantle, and the Mantle open onto a glowing Core, makes the relative thickness and nature of each layer easier to remember than any diagram.

Frequently asked questions

What age group is this robotics project best suited for?

Ages 9 and up can build this with an adult helping on the craft-knife and wiring steps. Ages 12+ with some Arduino experience can usually manage most of it independently.

Do I need to know how to code to build this?

No. The code above is ready to upload as-is. Basic edits — like changing colors or timing — are a great first step into programming, but not required to get the project working.

Can I build this without the DFPlayer Mini sound module?

Yes. Skip the DFPlayer and speaker wiring, remove the related lines from the code, and use a simple piezo buzzer with tones instead, or skip sound entirely and rely on the lights and motion.

What size foam ball works best?

A 15–20 cm foam or 3D-printed ball gives enough room for two servos, a NeoPixel ring, and the inner layers without feeling cramped.

Why use two servos instead of one?

Two independent servos let the Crust and Mantle open in sequence rather than all at once, which is what creates the reveal effect and lets each layer get its own light color and sound clip.

Built for curious young engineers. Always build and power on electronics with adult supervision.

Comments

Product Cards
Buddy Bot eBook
⭐ New 2026 Release
Build Your
Own Robot!
3D design, wiring &
Arduino coding.
Young inventors love it!
🖨️
3D Print
All parts
Wire it
Circuit guide
💻
Code it
Arduino IDE
🤖
Watch it
Walk & react
📋 Your Details
Enter your name
Valid 10-digit no.
Enter a valid email
Special Website Offer
₹499 300
🌍 International: $5 USD
One-time · Instant digital delivery
🔒 Secured by Razorpay · Your data is safe
📄 Download Free Sample Copy
🔒 Secured by Razorpay · Your data is safe
🍓
Raspberry Pi Pico Mastery
21 Projects
⚡ Launch Price — 80% OFF
Learn Pico
Build 21 Projects!
MicroPython · Wokwi
IoT · Certificate
Perfect for beginners!
🖥️
Wokwi
No hardware
🐍
MicroPy
From zero
🔨
21 Projects
IoT + sensors
📄
Certificate
Verified cert
📋 Your Details
Enter your name
Valid 10-digit no.
Enter a valid email
Special Launch Offer
₹999 200 80% OFF
🌍 International: $5 USD
One-time · Lifetime access · No subscription
🔒 Secured by Razorpay · UPI · Cards · NetBanking
🎉

You're in!

Payment successful! Your Buddy Bot eBook is ready. Time to build!

📖 Access Your eBook Now
🎉

Enrolled!

Payment successful! Lifetime access to all 21 Pico Projects is yours!

🍓 Go to My Course