Close
0%
0%

Stationery Unit D2

It's an Interactive R2-D2 desk assistant, powered by ESP32 P4, and serves as an astromech companion that plays custom GIFs via a web app.

Similar projects worth following
0 followers
Greetings everyone, and welcome back!

Here's something from beyond Stationery Unit D2, an R2-D2-inspired, interactive desk organizer and pen holder.

This isn't just a 3D-printed, R2-D2-looking pen holder; it’s an interactive, web-connected desk terminal powered by an ESP32-P4 dev board.

I also wanted to make it easy to use, so I added two physical buttons on top. One button (GPIO 48) triggers fun "Easter Egg" songs I coded in, like the Star Wars theme and a few others, while the second button (GPIO 47) lets me instantly toggle the screen between a Radar UI and my favorite GIFs.

The web interface is where the real fun happens. Through the app, we can play GIFs on the ESP32-P4's display, trigger a cinematic Star Wars-style quote display, or even use the text-to-astromech converter to make the droid speak any message.

The design of this project was heavily inspired by R2-D2. Instead of creating a standard cylindrical R2-D2, I went with a flatter design that incorporates key visual elements from the original droid. The body was 3D-printed and then assembled.

DESIGN

The entire model was designed in Fusion 360. While this project is heavily inspired by R2-D2, I didn't follow the original design entirely; I completely ditched the traditional cylindrical body in favor of a flat, modern aesthetic that still closely resembles the iconic droid.

For the internals, I incorporated a Waveshare ESP32-P4 development board, which features a 4.7-inch display positioned slightly off-center. My idea is to print a blue screen on the display with a red circle that resembles R2D2.

To capture that authentic droid aesthetic, I modeled greeble parts, which I’ll be printing in blue, and the body will be printed in white.

On the back, I added a custom lid section that functions as the pen holder, making sure the device stays practical while looking the part.

ENCLOSURE

The enclosure of our design comprises two main parts: the front enclosure, which is designed to resemble R2-D2, and the back enclosure, which serves as a lid for the model while also incorporating the pen holder section.

Both the front and back enclosures are secured together using M2 screws.

SWITCH SECTION

For adding controls, I incorporated two buttons into the design. The buttons are positioned on the top face of the model.

To mount them, I designed two retaining ribs that allow the switch PCB to slide into position securely. Before installing the switch PCB, two identical switch actuators are placed in their respective positions.

Once the switch PCB is inserted, the actuators are locked in place. Pressing these actuators activates the switches, registering the button press.

POWER SOURCE PLACEMENT

For the power source, I used a 3.7 V 500 mAh lithium-ion cell (size 14500), which is smaller than the more commonly used 18650 cell.

I positioned the battery on the opposite side of the display and added two ribs to keep it securely locked in place.

ESP32 P4 DISPLAY PLACEMENT

The ESP32-P4 Dev Board is placed slightly off-center. To keep it securely in position, I added several ribs that ensure the display does not move from its intended location.

GREEBLES PARTS

To make this device look and feel like a droid, I designed several greeble parts that would be printed in Blue PLA and then placed in position.

These include a part that sits between the screen and the head section, as well as a long part that sits next to the display.

Two additional parts are mounted on the top section slightly above the display, along with a circular grille part, all of which are printed in Blue PLA.

3D PRINTED PARTS

After finalizing the model, all parts were exported as mesh files and then 3D printed on my Anycubic Kobra S1 printer using two filament colors.

Blue Hyper PLA was used for the majority of the parts, including the back enclosure, greeble parts, and switch actuator.

White Hyper PLA was used for the front enclosure. All parts were printed with a 0.4 mm nozzle, 0.2 mm layer height, 25% infill, and no supports were required for the blue parts.

Only the front enclosure required supports, as it was printed upside down, so the inner parts of the model needed support.

PCB DESIGN

This is the Switch PCB we used in this project, and it's a simple one. Here, we have added two 4×4mm push buttons...

Read more »

FRONT.stl

Standard Tesselated Geometry - 1.29 MB - 07/07/2026 at 06:29

Download

R2D2 v6.step

step - 1.37 MB - 07/07/2026 at 06:29

Download

LID.stl

Standard Tesselated Geometry - 137.97 kB - 07/07/2026 at 06:29

Download

SW1.stl

Standard Tesselated Geometry - 149.50 kB - 07/07/2026 at 06:29

Download

BLUE PART 2 (1).stl

Standard Tesselated Geometry - 102.91 kB - 07/07/2026 at 06:29

Download

View all 10 files

  • 1
    SWITCH PCB ASSEMBLY
    • Button board assembly was pretty straightforward. We start by placing all switches in their position.
    • Next, we flipped the board over and then used a soldering iron to solder all the leads of the push buttons.

    The switch PCB is now assembled.

  • 2
    HARDWARE: WAVSHARE ESP32 P4 WIFI6 Touch LCD

    Here's the star of our project: the Waveshare ESP32-P4 Development Board. It is built around the ESP32-P4 microcontroller, featuring a dual-core 400 MHz RISC-V processor for high-performance applications, along with a dedicated low-power RISC-V core for efficient background tasks.

    The board comes equipped with a 4.3-inch IPS capacitive touch display with a resolution of 480 × 800 pixels, providing a responsive and vibrant user interface. It supports a rich set of human-machine interaction peripherals, including a MIPI-CSI camera interface with an integrated Image Signal Processor (ISP) for image capture and processing applications. The board also features USB 2.0 OTG High-Speed (HS) support, enabling fast data transfer and versatile USB connectivity options.

    For hardware expansion, it includes an onboard 40-pin GPIO header that is compatible with selected Raspberry Pi HAT expansion boards, making it easy to integrate additional sensors, modules, and peripherals.

    An additional highlight of this development board is the onboard ESP32-C6-MINI module. Since the ESP32-P4 itself does not include native Wi-Fi or Bluetooth connectivity, the ESP32-C6 serves as a dedicated wireless coprocessor, providing Wi-Fi 6 (802.11ax) and Bluetooth Low Energy (BLE 5.x) capabilities. This combination allows developers to leverage the processing power of the ESP32-P4 while maintaining modern wireless connectivity for IoT and connected-device applications.

    You can check out more details about this board from Wavshare's WIKI PAGE-

    https://docs.waveshare.com/ESP32-P4-WIFI6-Touch-LCD-4.3

  • 3
    ESP32 P4 WIFI6 Touch LCD SPEAKER ASSEMBLY

    In the Waveshare ESP32-P4 Wi-Fi 6 Touch LCD Kit, an onboard compatible speaker is included.

    This speaker serves as a crucial component of our build, as it will be used to output the various astromech sound effects generated by the system.

    • To install the speaker, we first removed the protective layer from the 3M double-sided adhesive tape attached to its back.
    • The speaker was then carefully positioned in the center of the board, directly above the ESP32-P4 metal shielding can, ensuring that it did not interfere with any connectors or components.
    • Once aligned correctly, the speaker was pressed firmly into place, securing it to the board and completing the installation.

View all 11 instructions

Enjoy this project?

Share

Discussions

Does this project spark your interest?

Become a member to follow this project and never miss any updates