logo Use CA10RAM to get 10%* Discount.
Order Nowlogo

Design of an audio embedded system using an Arduino.



Undergraduate Regulations

Your studies will be governed by the BCU Academic Regulations on Assessment, Progression and Awards. Copies of regulations can be found at   https://www.bcu.ac.uk/student-info/student-contract

For courses accredited by professional bodies such as the IET (Institution of Engineering and Technology) there are some derogations from the standard regulations and these are detailed in your Programme Handbook

Cheating and Plagiarism

Both cheating and plagiarism are totally unacceptable and the University maintains a strict policy against them.  It is YOUR responsibility to be aware of this policy and to act accordingly. Please refer to the Academic Registry Guidance at https://icity.bcu.ac.uk/Academic-Services/Information-for-Students/Assessment/Avoiding-Allegations-of-Cheating

The basic principles are:

Don’t pass off anyone else’s work as your own, including work from “essay banks”. This is plagiarism and is viewed extremely seriously by the University.

Don’t submit a piece of work in whole or in part that has already been submitted for assessment elsewhere. This is called duplication and, like plagiarism, is viewed extremely seriously by the University.

Always acknowledge all of the sources that you have used in your coursework assignment or project.

If you are using the exact words of another person, always put them in quotation marks.

Check that you know whether the coursework is to be produced individually or whether you can work with others.

If you are doing group work, be sure about what you are supposed to do on your own.

Never make up or falsify data to prove your point.

Never allow others to copy your work.

Never lend disks, memory sticks or copies of your coursework to any other student in the University; this may lead you being accused of collusion.


By submitting coursework, either physically or electronically, you are confirming that it is your own work (or, in the case of a group submission, that it is the result of joint work undertaken by members of the group that you represent) and that you have read and understand the University’s guidance on plagiarism and cheating.


You should be aware that coursework may be submitted to an electronic detection system in order to help ascertain if any plagiarised material is present. You may check your own work prior to submission using Turnitin at the Formative Moodle Site.  If you have queries about what constitutes plagiarism, please speak to your module tutor or the Centre for Academic Success.

Electronic Submission of Work

It is your responsibility to ensure that work submitted in electronic format can be opened on a faculty computer and to check that any electronic submissions have been successfully uploaded. If it cannot be opened it will not be marked. Any required file formats will be specified in the assignment brief and failure to comply with these submission requirements will result in work not being marked.  You must retain a copy of all electronic work you have submitted and re-submit if requested.

Learning Outcomes to be Assessed:


1 Describe function and application of audio equipment.


2 Assess and analyse performance of audio hardware design topologies at component level.


3 Apply fundamentals of computer programming to a simple audio embedded system within laboratory sessions.


4 Design, construct and evaluate a basic audio embedded system reporting findings in an appropriate format.

Assessment Details: 

Title: Design of an audio embedded system using an Arduino.

Style: Demonstration and presentation.   


The assessment requires you to apply your knowledge and understanding from Audio Electronics (DIG4155), Audio Software Development (DIG4150) and the content of this module. The purpose of the assessment is to familiarise you with the applications of digital and analogue systems when used together to provide a complete embedded audio solution. The module will give practical experience of a product from design, to construction and evaluation.


You will give a presentation on your project at the end of the Semester. The project is to construct a simple synthesiser unit with a user interface to control and generate the audio signal. The system is an all-in-one style device, so must provide its own amplification output. 


The system you will design, and construct is a digital synthesiser board, not too dissimilar to traditional keyboard synthesisers. Using the knowledge, you have obtained from the two feeder modules Audio Electronics and Audio Software Development, along with the lectures and lab sessions in this module, you will have all the skills to complete this task. 

The system is effectively split into two parts, the digital synthesis and analogue effects and amplification/output stage. The system must, as a package, meet the following design specifications: 


Ability to set pitch and amplitude of the digital synthesis 

Allow for variation of the synthesis signal, such that it is more complex than a sinewave oscillator 

Output the signal through an 8-bit DAC and perform adequate anti-aliasing 

Drive a small speaker through an amplifier. 

In addition you should show as an explanation in your presentation how the system can perform an analogue effect, such as using an ADSR or LFO with a VCA using either software or hardware. For the brave you can try to implement the actual effect to obtain a higher grade at the top end of the marking scale. 



The circuit will be powered using the Arduino on-board power supply and must be a Single-Rail system, capable of being driven by a battery. 


The entire system will be constructed and delivered as a prototype, using breadboards for assembly. No soldering is required. 


You will be given a template to use for the digital system, to allow you to build and program complex, low-level synthesis modules. In addition, you will be given a kit of parts to include:


An Arduino uno,

Breadboard x 3,



i.c. power amplifier LM386,

loudspeaker driver,

wires, and

various resistors and capacitors.


Not all the components will be supplied as you will have to design your analogue circuits and choose appropriate values for the additional resistors and capacitors. These are to be obtained in the second analogue laboratory session based on your completed design. Note that only basic components should be necessary so do not decide on any expensive integrated circuits for the analogue effect.


It is expected you have completed Audio Software Development to a standard where you are confident in C++ programming, specifically using functions and data types. In the labs we will be pushing your knowledge further, so it is vital you review past work and get help early if you get stuck. 


All functioning systems should result in a first-class mark assuming you are able to explain the circuits and code during the presentation but the more challenging the task the greater the mark that may be achievable. You are advised not to be too ambitious! A simple block diagram of the system is shown in figure 1. The analogue circuits will use the supply from the Arduino board (5 volts current limited to 800 mA but enough to drive several operational amplifiers) via a separate 9-volt supply. It should be constructed on a breadboard with careful consideration of layout and neatness of wiring and component placement. Circuits may be obtained from one of a myriad of sources from the internet (forums are a fantastic way to find info) or from magazines or books. However, wherever you obtain your circuit from you must reference the source in your presentation.

 The block diagram given shows the basic system. Do not forget to add to this for your final presentation. Add more sections for your presentation.


  Wave shape


  Keyboard            ARDUINO                DAC                   FILTER               AMP         





Figure 1.  Block diagram of Synthesiser system



The following are suggestions to help you with the development of your system with examples of circuits and sources.

Digital circuit: 

 To get the digital processor to work, you need to add the following blocks to the circuit.

 Input: The input to the Arduino will require a music ‘keyboard’ for pitch, waveform selection (sine, square, triangle and sawtooth), as well as an amplitude control. Inputs will use some, or all of A0 to A5 (although you are not limited to this).


Output: The output of the DAC is the junction on R20 and R18, this is a custom-built DAC using a resistor ladder (Figure 2). The output range is 0 volts to 5 volts. An anti-aliasing filter must be designed for a Sampling Rate of 50kHz to smooth the signal. This could be a simple Low Pass filter (using a Resistor and Capacitor) or a more complex design (being active). The steeper the roll-off the better. This needs to feed an additional analogue ‘effects’ module which in turn will be amplified by a power amplifier with level control. You will have to consider the level of the signal to be amplified so as not to cause distortion due to clipping in your design.


Analogue circuits:

 Keyboard – This is a variable dc voltage from 0 to 5 volts that is input into the Arduino to change pitch. Think of ways this can be done so that you only need one input pin, hint: Potential divider. Alternatively, you could use a varying voltage signal using any other method such as a potentiometer or use a binary input for the keyboard using the digital pins. It is up to you. If using switches, design your input circuit to have no more than one octave without being chromatic. If you can find a small keyboard and adapt it (broken toy?) then do it! It is up to you.

 Amplitude Control – A variable dc voltage from 0 to 5 volts going into one of the Arduino analogue ADC pins. Hint: potential divider. This should control the amplitude of the generated signal either linearly or logarithmically (dB). At 5V, the output should be peak 0dBFS. At 0V the output should be silent.

Wave shape – What does a typical synth use? Decide on a method of selecting a suitable waveform that will be output from the Arduino (see above). Consider how the user will know which has been selected. Hint: Led’s.

 Amplifier – This will make use of the LM386 single power supply rail op amp. Use the data sheet to find the values of the resistors needed for gain. Note the capacitors are supplied in the kit of parts.

 Analogue effect – This is the interesting one. ADSR/LFO/VCA?? Only consider building this if you are up to the challenge! You may implement this using hardware or software but MUST provide an explanation of how this is done in the presentation even if not implemented. Note marks will be considered for taking this to the ‘next level’ but this will not prevent a 1st class mark for completing the basic assessment.


Related Questions

. Introgramming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma

. The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

. Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

. SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

. Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

Um e HaniScience

954 Answers

Hire Me
Muhammad Ali HaiderFinance

592 Answers

Hire Me
Husnain SaeedComputer science

909 Answers

Hire Me
Atharva PatilComputer science

881 Answers

Hire Me

Get Free Quote!

434 Experts Online