CHIP-E

My final project, Chip-E, is an interactive toy designed for children with the goal of reducing their screen time by offering an engaging and playful alternative. The name "Chip-E" was inspired by the tiny chip that powers the toy, giving it life and personality. It was created to feel like a fun companion—one that responds, reacts, and plays along with children.

Chip-E can play music and move its arms in sync with the sound, creating the illusion of dancing. Its head features two animated eyes that blink and change expressions, adding charm and a sense of character. Tapping on the top of its head triggers funny sounds and cute eye animations, making it feel responsive and alive.

The toy can also rotate in the direction of sound, giving the impression that it’s listening and turning toward whoever is speaking. One of its most entertaining features is its ability to record a child's voice and play it back, making it feel like a talkative little friend. It is completly voice controlled.

Chip-E runs on a rechargeable battery, making it convenient and easy to use without the need for frequent battery changes. Designed to be more than just a toy, Chip-E encourages children to play, imagine, and interact—without needing a screen.



While exploring similar projects for inspiration, I came across one called Emo, developed by Coders Cafe using a Raspberry Pi 4. In contrast, my version is built around an ESP32-WROOM module and features a Talking Tom character. I designed it as a voice-controlled system by integrating the Grove Offline Voice Recognition module. Click here to learn more about Emo.

Image taken from Coders Cafe (Youtube)

Design

Parts and systems to be developed include the main body of the toy, moving arms, a rotating base, and a facial display to emulate eye expressions. The body will be 3D printed using PLA for a lightweight and durable structure, while the base combines wood and acrylic for stability and aesthetic appeal. The electronics system is centered around the ESP32 microcontroller, integrated into the base, and includes additional circuitry for motor control and display output. The toy is voice-controlled, utilizing the Grove Offline Voice Recognition module for offline command processing. It also functions as a talking toy, enhancing interactivity. Thorough software-hardware integration and system testing are essential components to ensure seamless performance and user interaction.

Main Parts

  1. 3D Printed Head- The toy includes a 3D-printed head equipped with two OLED displays to simulate eye expressions. It features two microphones that work together to enable voice interaction and detect the direction of sound for body rotation. A capacitive touch sensor is also integrated on the top of the head to enhance user interactivity.

  2. 3D printed body- The toy features a 3D-printed body that houses key components including a Grove Offline Voice Recognition module, a speaker, and three servo motors—two for arm movement and one for body rotation. A custom-designed PCB is used to manage all connections efficiently, minimizing the number of wires running to the base and ensuring a cleaner, more organized internal layout.

  3. Wooden base with Acrylic covering- The base is constructed from wood, providing both stability and aesthetic appeal, and is enclosed with an acrylic cover for a polished finish. The battery and the microcontroller PCB are neatly integrated into the base, forming the core of the toy’s power and control system.

Electronics

The electronics played a crucial role in the project and also turned out to be one of the most challenging aspects due to the numerous features involved. I wanted to avoid relying on an external programmer each time I needed to upload code, so I integrated the programming circuitry directly onto the main board. The motherboard was planned to be housed in the base of the toy, which meant several connections had to run from the upper body to the base. To manage this efficiently, I designed an additional board that consolidated all the necessary connections and included a 3.3V voltage regulator. This setup allowed only one 5V line and a ground wire to run from the top to the base, along with the signal wires, significantly reducing the number of cables and simplifying the internal wiring. The second board was neatly embedded within the body of the toy.

Mother Board

Schematics

The PCB was designed on KiCAD. The project have 2 PCBs with I contains the microcontroller and all the other modules and the other only have connectors to reduce the wires coming to the main boars which is placed below the toy.

The connections were listed below,

  1. MAX98357 I2S 3W Class D Amplifier Interface Audio Decoder Module Filterless Board


  2. Micro SD Card reader module


  3. Servo


  4. INMP441 MEMS Microphone


  5. Grove Offline Voice Recognition Module


  6. OLED Display
  7. The Capacitive touch was connected to GPIO14

I integrated the CH340C on to the board so that no external programmer was needed. Also autoprogrammer also included.


PCB Design

Due to the size constrain I designed double sided board.

I used the common ground for easiness. The steps for common ground,

  1. Select the Draw filled zones options marked in the image


  2. Select the F.Cu and B.Cu and select GND.


  3. Draw the areas to fill the GND.


The final PCB looks like this,


Exported the gerber file and made the board. To know more Click here.

Note: The CH340C and Proshplay Type C breakout board Symbol and Footprint was not available in the fab library and can be found at the bottom of this documentation.

Secondary Board

The board 2 is designed for all the connections so that the power lines going to the base can be reduced. Only one 5V and GND is coming up and is splits in board 2 and also converted into3.3V also.


The Sources I referd for this Project.

Bill of Materials
Sl No Part Quantity Unit Cost Total Cost Supplier
Mechanical Components
1SG90 Servomotor3149447Robu
26806 Bearing1750750Amazon
3M3 Bolts52.512.5Fab Inventory
4M3 Threaded Inserts56.532.5Fab Inventory
5M2 Bolts17585Fab Inventory
6Wood 130 x 130 x 28 mm1100100Fab Inventory
7Acrylic Sheet 150 x 150 x 6 mm0.5 sqft125125Fab Inventory
Electronics Components
80.96 inch SSD1306 OLED Display (128x64)2175350Robu
9INMP MEMS Microphone2198396Robocraze
10Iphone 7 plus speaker1299299Flipkart
11Grove Offline Voice Recognition Module118891889Robu
12Micro SD Card Reader Module14040Fab Inventory
13Micro SD Card1398398Fab Inventory
14Type-C USB 5V 2A Step-Up Boost Converter157.9957.99RoboticsDNA
15ProshPlay Type C Breakout Board12020Fab Inventory
16ESP32 WROOM 32E1250250Fab Inventory
173.6V Lithium Ion battery1131131Fab Inventory
18Slider Switch177Fab Inventory
19MAX98357 I2S Amplifier Module1149149Rytronics
20Touch Switch13030Local Shop
21Capacitor 10uF51.99.5Fab Inventory
22Capacitor 0.1 uF212Fab Inventory
23Capacitor 1 uF111Fab Inventory
24Resistor 10K40.52Fab Inventory
25Resistor 500 ohm414Fab Inventory
26Resistor 10 ohm111Fab Inventory
27Resistor 0 ohm111Fab Inventory
28LED_1206515Fab Inventory
29CH340C14242Fab Inventory
30VREG IC 3.3V 1A LDO22856Fab Inventory
31Push Button 6x6mm21836Fab Inventory
32MOSFET N-Ch SOT23236Fab Inventory
33Slide Switch EG1215AA166Fab Inventory
34Conn Header Pin 02x023515Fab Inventory
35Conn Header Pin 01x033515Fab Inventory
36Conn Header Pin 02x03177Fab Inventory
37Conn Header Pin 01x025420Fab Inventory
38Conn Header Pin 01x04155Fab Inventory
39Conn Header Pin 01x052612Fab Inventory
40Conn Header Pin 01x06177Fab Inventory
41Conn Header Pin 01x07188Fab Inventory
42IDC 2x02 Connector Female680480Fab Inventory
43IDC 2x03 Connector Female2110220Fab Inventory
44JST Connector 1x05 Female21122Fab Inventory
45JST Connector 1x05 Male155Fab Inventory
46PCB Single Side1100100Fab Inventory
47PCB Double Side1150150Fab Inventory
Total ₹6806.49

Fabrication

The majority of my components were fabricated using 3D printing. The base section was milled using the TRAK DPM RX2 milling machine available in our lab, while the top cover of the base and the speaker enclosure were created using laser cutting and the PCB was milled in the Roland Modela MDX-20.

3D Printing

I used Bambu P1S and Bambu X1 Carbon 3D printers for my project. The head, Body, Arms and the enclosure for the speaker were needed to be 3D printed.

Exporting the 3d file as .stl file and slicing all included in the 3D Printing and Scanning Week.


Base

The base I planned to made out of wood. I used the ProtoTRAK DPM RX2 milling machine in our lab for milling the wood. I CAM it in the Fusion 360 manufacturing workspace and postprocessed it for the machine.

Initially I open the manufacturing workspace of fusion 360 and in setup option I specified the stock size and the stock point of the workpiece.

    3D Pocket

    I needed to remove the material from the inside part of the wood to get the inside of the base. So I chose 3D pocket toolpath. Selected the inside containment used the following parameters

Tool- 16mm insert cutter

Spindle speed- 3000rpm

Feed Rate- 2000rpm

Surface Speed- 150.796m/min

Maximum roughing stepdown- 0.6mm


  • Drill

  • As I need to access the reset button of the mother board, I made a hole on the base where the reset button comes. I used the drill toolpath for this.

    Tool- 5mm Drill

    Spindle Speed- 2000rpm

    Plunge Feedrate- 50mm/min

    Surface Speed- 31.4159m/min

    Cycle Type- Deep drilling- full retract

    Pecking depth- 1mm


    Drill

    The base is going to be covered with acrylic and it is holded in place by M2 Screws. So I drilled 1.7mm holes on the base for the screws.

    Tool- 1.7mm Drill

    Spindle Speed- 2000

    Plunge Feedrate- 50mm/min

    Surface Speed- 10.6814m/min

    Cycle Type- Deep drilling- full retract

    Pecking Depth- 0.3mm

  • 3D Contour

  • After all these operations, I removed the materials from the wood to get the outer part of the base. Iused the 3D Contour toolpath for that.


    Tool- 16mm insert cutter

    Spindle Speed- 3500rpm

    Cutting Feedrate- 2000mm/min

    Surface Speed- 175.929m/min

    Maximum roughing stepdown- 0.8mm


    Simulation
  • After completing all these steps, I need to mill out an opening on the side to access the Type C, Switch and the Micro SD card. So I created another setup in the CAM and I used the Ramp toolpath for milling that side.
  • Using the Ramp tool path from the 3D tool paths for milling the side. used the following parameters for milling.

    Tool- 3mm 4Flute Endmill

    Spindle Speed- 3000rpm

    Cutting Feedrate- 500mm/min

    Surface Speed- 28.2473m/min

    Maximum stepdown- 0.3mm

    Ramp type- Helix

    Ramping Angle- 2 degree


    PCB

    After completing the PCB design, I exported the files as Gerber format. Since the Mods software requires a PNG input, I converted the Gerber files to PNG using the Gerber2PNG website. I had two boards—one double-sided and one single-sided. The double-sided PCB was milled first, followed by the single-sided board. Both boards were then successfully soldered.

    The fabrication process were documented in the Electronics production week.

    Motherboard

    After completing the PCB milling I collected all the components for my mother board and soldered it.

    Components

    Similarly I milled the top board and collected the components from the inventory and soldered it.


    Assembly

    After the fabrication of all the parts, I assembled it one by one. A lot of modules and components needed to be integrated inside the toy and it wasn't an easy task to assemble it. But fortunately all were tested earlier it was perfect and finished the assembly. It took some time but went well.

    This is how Chip-E looks like after the assembly.


    The testing portions are added on the Testing page.

    All the codes of the CHIP-E is also included there.


    Systems

    1. Mp3 Player- The MAX98357 I2S amplifier module is connected to the ESP32, with a speaker attached to the module. I2S communication is utilized for MP3 audio playback. Additionally, an SD card module is connected to the ESP32, serving as the storage location for the MP3 files.

    2. Voice Recognition- The Grove Offline Voice Recognition module is connected to the ESP32. It comes with a set of preloaded voice commands, which I utilized to enable voice control functionality in the toy.

    3. OLED Eyes- Two OLED displays were mounted on the head of the toy to simulate eye animations.

    4. Moving Hands- The arms are attached to servo motors and are programmed to move in sync with the music playback.

    5. Capacitive Touch- A touch sensor is placed on the head to detect touch. When the toy is touched on its head, it responds by playing cute sounds and displaying animations on the OLED screens.

    6. Talkback- Two INMP441 MEMS microphones are mounted on each side of the toy’s head, functioning as its ears. These microphones capture the user's voice, save it in WAV format, and play it back, mimicking the behavior of a Talking Tom-style interactive toy.

    7. Rotating body- The toy rotates toward the direction of the sound by analyzing input from the microphones placed on its ears. By comparing the audio signals received by each microphone, it determines the source direction and adjusts its orientation accordingly.

    I used different processes for this project and all are listed below,

    1. 3D Design – I began by designing the mechanical structure using Autodesk Fusion 360, which helped visualize and model the physical form of the project.

    2. Electronics Design – The custom PCB was designed in KiCAD, enabling integration of all the necessary electronic components.

    3. Digital Fabrication – I employed both additive manufacturing (3D printing) for complex parts and subtractive manufacturing methods such as CNC milling and laser cutting for structural and functional components

    4. Embedded Programming – Microcontroller-based programming was used to control hardware features and create interactive functionalities.

    5. Integration and Assembly – Finally, all components—mechanical, electronic, and software—were integrated into a functional prototype.

    All these processes were mentioned in above part of this documentation.


    What questions were answered?

    1. Who is going to use this?
    2. The kids of age group of 2 to 5 are the users of this product. The aim of this product is to reduce the amount of screen time of kids.


    3. Will it play the audio?
    4. Yes, The toy can play audio from SD card. Also it can act as a talking toy.


    5. Can it be controlled by voice?
    6. Yes it can recognise the voice commands and for that I use a Groove offline voice recognition module. Curently I am using the preloaded commands.


    7. What will be displayed on the display?
    8. Eyes are animated on the display.


    What worked and what didn't?

    I intended to integrate a wide range of features into the toy — including a music player, voice talkback similar to Talking Tom, arm movements synced with music, sound direction-based rotation, and responsive animations and sounds triggered by a capacitive touch sensor on its head. Most importantly, I aimed to make the toy voice-controlled. Technically, I was able to implement all these features successfully. However, due to time constraints, I couldn’t merge all the individual codes into a single unified system. As a result, while each feature works perfectly on its own, they currently do not function together in an integrated manner.


    The project should be evaluated by the following points,

    Finally the out put is shown here,



    Schedule

    To ensure smooth progress and effective time management, I created a detailed schedule for my project. This schedule outlined all the key stages and tasks involved, allowing me to approach each phase with clarity and purpose. By planning ahead, I was able to allocate sufficient time for design, development, testing, and final adjustments. It helped me avoid last-minute rushes and ensured that every important aspect of the project was given proper attention.

    Sticking to a structured timeline also allowed me to track my progress and stay motivated as I completed each milestone. It provided a clear roadmap, making it easier to identify priorities and manage unexpected challenges without derailing the entire workflow. Overall, having a well-planned schedule was one of the most effective strategies I used to stay organized, focused, and on track throughout the development of my project.


    At the initial stage of the project, I thoroughly tested each feature to ensure they functioned as intended. All the results and observations from these tests were carefully recorded and documented on the testing page. This helped me keep track of the system's performance, identify any issues early on, and make necessary improvements efficiently.

    Conclusion

    As the creator of CHIP-E, this project allowed me to explore and integrate multiple technologies like voice recognition, servo control, and audio playback using the ESP32. Despite challenges, I was able to bring together various features into a functional, interactive robot that responds to voice, touch, and expresses emotions—making the process both technically enriching and creatively fulfilling.


    Downloads

    1. CHIP-E

    2. Base Milling Files

    3. PCB

    Fab Academy © 2025 by Revisankar S is licensed under CC BY-NC-SA 4.0