Embedded Systems B.Tech/B.E Beginner

The self-playing xylophone

High Level Design Program & Hardware Design Results & Conclusion Appendix High Level Design Program & Hardware Design Results & Conclusion Appendix The Self Playing Xylophone ECE 4760 (Digital Systems Design using Microcontrollers) Final Project Programmed to play 23 snippets of our favorite songs o

  • Suitable forB.Tech/B.E Embedded Systems students
  • Build time4-6 weeks
  • LevelBeginner
  • Available atAjvika Labs, Kakinada

About this project

High Level Design
Program & Hardware Design
Results & Conclusion
Appendix
High Level Design
Program & Hardware Design
Results & Conclusion
Appendix
The Self Playing Xylophone
ECE 4760 (Digital Systems Design using Microcontrollers) Final Project
Programmed to play 23 snippets of our favorite songs on a toy xylophone!
Summary
: ​For our final project, we were interested in studying sending PWM signals to servo motors, similar to what we encountered in Lab 3, in a musical context. We developed a system that consists of eight servo motors - each with a xylophone mallet attached to its shaft - that can play a song that is specified by the user. Our self-playing xylophone currently holds 23 songs, ranging from a simple scale to Christmas songs such as the Carol of the Bells to pop songs like Love Story. The user can request a song through inputting its corresponding number into the serial monitor. Our group chose to pursue this project as a fun way to make great use of the baby xylophone toy we had lying around while enjoying some of our favorite songs.
By: Harris Miller, Karina Melgar, Zoe Chen

Detailed Project Description

The self-playing xylophone is an embedded-systems build that integrates sensors, actuators, a microcontroller and firmware into one working device, with the design decisions and test results documented so it can be reproduced.

How It Works
1. Input devices (sensors, buttons, encoders, wireless links) are connected to the microcontroller.
2. Firmware samples the inputs at a fixed rate and runs the control/processing logic (often with interrupts, timers or PIO for precise timing).
3. Outputs (motors, LEDs, displays, audio, radio) are driven according to the result.
4. The system is tested against its specification and tuned for reliability and responsiveness.

Key Components and Their Role
- RP2040: dual-core Cortex-M0+ microcontroller with programmable I/O used for precise, low-level timing.
- Servo motor: position-controlled actuator driven with a PWM signal.

Implementation Steps
1. Collect the components and study each module's datasheet (pin-out, voltage, interface).
2. Wire the circuit on a breadboard following the pin mapping; power sensors from the correct rail (3.3 V / 5 V).
3. Install C, Arduino IDE and the required libraries; flash a minimal test sketch for each module separately.
4. Write the main firmware: read sensors → process → drive outputs / send data.
5. Configure network or cloud credentials and test communication end-to-end.
6. Calibrate thresholds, add error handling (reconnect, sensor time-out) and run a long-duration test.
7. Finalise on a PCB / enclosure and document wiring, code and results.

Key Features
- Real-time firmware
- Custom hardware integration
- Measured performance
- Documented design and trade-offs

Expected Output
On completion the student will have a demonstrable device that meets its functional specification, with wiring diagram, code and results.

Deliverables
- Complete source code with comments
- Circuit diagram and pin mapping
- Project report with screenshots and results
- Demonstration-ready build

Technologies used

RP2040CCPWMMotorServo

Hardware components

  • servo motor

Software & tools

  • C
  • Arduino IDE

Project demo video

What you get

  • Working project / hardware kit, tested before delivery
  • Complete source code with explanation
  • Project demo and guidance for your viva
  • Project report, PPT and IEEE paper support (on request)
Delivery & Payment
Delivery takes a minimum of two weeks from the date your inquiry is confirmed. Payment is in two parts: • 50% advance to start the project • Remaining 50% before delivery Note: • Documentation and PPT are not included by default • If you need documentation/PPT, it can be arranged for extra time and cost We'll confirm the exact timeline and cost with you after reviewing your requirements.