Thursday, May 28, 2015

10 Band I2C Graphic Equalizer Circuit - 16F628 TEA6360



  • 2016-08-17 - Added small application for calculate frequencies and parts.

10 Band Equalizer
10 Band Equalizer

A graphic equalizer is a high-fidelity audio control that allows the user to see graphically and control individually a number of different frequency bands in a stereophonic system. A typical graphic equalizer consists of several audio filter/amplifiers, each centered at a specific frequency in the audio range. Most graphic equalizers have two identical sets of filter/amplifiers, one for each channel in a stereophonic system.

The gain controls in most graphic equalizers are slide potentiometers that are adjusted by moving a controller up or down. Gain is increased by sliding the upwards. The slide potentiometers for each channel are placed side-by-side, with the lowest-frequency unit at the left and the highest-frequency unit at the right. In this way, the positions of the buttons appear to follow a graphical curve that represents the gain as a function of frequency for each channel.

By using following circuit you can build a 10 band stereo graphic equalizer that can be controlled via I2C system. For this circuit I used two of TEA6360 ICs. Each IC contains two serial five bands equalizer blocks. Therefore, we need two ICs for 10 bands. We can reduce the size of circuit because all the function can be drive via i2C. So that, we do not need connect potentiometers to control the gain of frequency bands like an ordinary equalizer. In addition, we can reduce cost and complexity of circuit using this IC.

10 Band Equalizer circuit

10 Band Equalizer pcb
Circuit on PCB

In my demo code, I used 16F628A micro-controller and single button to set equalizer modes. The modes are ‘Flat’, ’Rock‘, ’Pop‘, ’Jazz‘ and ’Party’. The status will indicate by five LEDs those connected to PORTA. In addition, selected mode saved to device Eeprom and load to ICs when start up. However, according to your choice you can able to change the code.

For example if you need to set gain for each frequency manually, then you can add 1 button to each channel and total 10 buttons. For another example, you can add 3 buttons. One button to raise the gain and other to lower and 3rd one for select desired frequency.

The center frequency of each bands are 31Hz, 62Hz, 125Hz, 250Hz, 500Hz, 1KHz, 2KHz, 4KHz, 8KHz and 16KHz. the Q (quality) factor is 1 to 1.2 and PCB, full schematic and sample code can be downloading in below.

Part List

  • C04, 07, 08, 09 = 0.37uF
  • C10, 11, 12, 13 = 0.18uF
  • C14, 15, 16, 17 = 0.01uF
  • C18, 19, 20, 21 = 0.047uF
  • C22, 23, 24, 25 = 0.022uF
  • C27, 28, 30, 31 = 0.01uF
  • C32, 33, 34, 35 = 0.0052uF
  • C36, 37, 38, 39 = 0.0027uF
  • C40, 41, 42, 43 = 0.0015uF
  • C44, 45, 46, 47 = 720pF


The 5-band stereo equalizer is a 12C-bus controlled tone processor for application in car radio sets, TV sets and music centers. It offers the possibility of sound control as well as equalization of sound pressure behavior of different rooms or loudspeakers, especially in cars.

  • Monolithic integrated 5-band stereo equalizer circuit
  • Five filters for each channel
  • Center frequency, bandwidth and maximum boost/cut defined by external components
  • Choice for variable or constant Q-factor via I2C software
  • Defeat mode
  • All stages are DC-coupled
  • I2C-bus control for all functions
  • Two different module addresses programmable.

Calculator App

Posted By :

Please Note: All contents provided on this blog are for non-commercial purposes only.
Any question..? Feel Free to Ask!

Drop your Comments below. Please report broken links to here
  1. Hi Scopionz,

    Thanks for this project, please if I want to change the xtal frequency to 8MHz do I have to edit PCON.OSCF = 1; //4MHz code?


    1. Of course, Remove the code and select HS oscillator from oscillator selection. And make sure to change clock frequency to 8MHz.

  2. Great project, but you forgot to include the parts list! :)

    1. Sorry for that. I will update it.

    2. Thanks! :) I'm curious, how did you calculate the values for the resistors and capacitors? I'd like to make a similar application but with three EQ ICs and I can't match a formula for calculating the filters..

    3. Please refer datasheet.
      Also I added small application to the download section. please use it to calculate.

  3. Great project. I've being looking for something like this for some time. I had build a stereo 5 band equalizer with a couple of BA3812L and X9c104p for the "digital control". I'm looking at the little app to calculate the C2 capacitor, and I see that each filtering block is comprised of 2 capacitors and 1 resistor. So I don´t understand where the other resistor for the calculation is found. Which should be that one? Thank you.

    1. Please refer device datasheet for calculation.



on line


Recent comment


Free counters!
Copyright © 2012 - Scorpionz™.,All rights reserved | Powered by Blogger