Skip to content

About

android app for spectrum analyzer

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

Repository files navigation

Analyzer Manager

Analyzer Manager is a small Android application for controlling a LED spectrum analyzer over a local Wi-Fi connection.

The project consists of three parts:

  • Analyzer_Manager2 — Android application.
  • sketch_esp8266.ino — ESP8266 firmware that accepts HTTP requests and forwards commands over serial.
  • analyzer_arduino.ino — Arduino firmware that reads the audio signal and renders the spectrum on a WS2812B LED matrix.

What the app can change

The application can send commands for:

  • LED brightness;
  • four spectrum colors;
  • animation smoothness;
  • input gain;
  • low-pass threshold;
  • automatic gain coefficient.

Matrix width and height are configured in analyzer_arduino.ino before flashing. They cannot be changed while the firmware is running because the LED buffer is allocated at compile time.

Hardware connection

The ESP8266 and Arduino communicate over UART at 115200 baud. The ESP8266 starts a Wi-Fi access point and exposes a simple HTTP endpoint on port 80. The Android application sends form data to that endpoint.

Set a device-specific Wi-Fi name and password when building the ESP8266 firmware. The source supports the following build definitions:

WIFI_SSID
WIFI_PASSWORD

For example, use your Arduino build configuration to pass a unique password for each device. Do not use the fallback setup password on a deployed device.

Android application

Open Analyzer_Manager2 in Android Studio. The project uses Android Gradle Plugin 8.1.3, so it needs JDK 11 or newer.

After installing the application:

  1. Connect the phone to the ESP8266 access point.
  2. Open the IP address screen in the app.
  3. Enter the address configured in sketch_esp8266.ino.
  4. Use the control screens to send commands to the analyzer.

Firmware setup

  1. Set the matrix dimensions and pin configuration in analyzer_arduino.ino.
  2. Flash analyzer_arduino.ino to the Arduino connected to the LED matrix and audio input.
  3. Configure the Wi-Fi credentials and network address in sketch_esp8266.ino.
  4. Flash sketch_esp8266.ino to the ESP8266.
  5. Connect the ESP8266 and Arduino serial pins, with a shared ground.

The Arduino sketch requires the FastLED and FHT libraries. The ESP8266 sketch requires the ESP8266 Arduino core.

About

android app for spectrum analyzer

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages