Estoy diseñando un controlador inteligente de tira RGB LED basado en una Raspberry Pi y una Ardunio. Ardunio controlaría la tira de LED y otros LED conectados a un registro de desplazamiento, mientras que el RPi administraría entradas y una pantalla y sería el maestro I2C del Ardunio.
Una de las características planeadas es una especie de 'disco light' : la tira RGB cambiaría de color según la entrada de Frecuencia / Espectral (es decir, brillo azul ~ bajos, verde ~ agudos, rojo ~ alto). Hay soluciones bastante obvias para esto usando transistores / mosfets, pero quiero tener un software de control sobre los colores. Lo que necesitaría es algún tipo de sensor de espectro de audio:
Opción 1: un circuito o microchip que de alguna manera analiza / interactúa con la entrada de audio (por supuesto, sin distorsionarla) y emite una señal de voltaje analógica (preferiblemente de 3-5) para diferentes frecuencias Rangos en cuanto a su sonoridad
Opción 2: un IC diseñado / utilizable para este propósito: analiza el espectro de entrada del audio de entrada y envía los datos de ancho de banda a Ardunio por SPI.
Opción 3 : una forma de utilizar el Atmega328 para el análisis. El proceso no debe ser lento o "costoso para el procesador", ya que tengo otras cosas que hacer con el Ardunio.
El problema está conmigo; No tengo experiencia con circuitos analógicos, y menos aún con circuitos de audio, y honestamente no tengo idea de cómo resolver esto. El buen chico Google tampoco me ayudó esta vez, así que pido tu ayuda.
¿Conoces algún chip o un circuito (considerando mi experiencia analógica cercana a cero, preferiblemente lo más simple posible) que se ajuste a una de estas descripciones?
Hay un plan general de la 'parte de disco':