Apr. 2016: Update: I re-wrote the code to C++ in Arduino IDE and added some cool features using websockets. Check part 2 of the post on my blog.

What is new comparing to the old version?

  1. Small hardware upgrade - I've added a volume button to adjust the analog signal from a comfortable spot (And not on board as it was before).
  2. The old code was written in LUA script. The new code written in C++ using the Arduino IDE environment, and is much faster now.
  3. The new features:
    • Selecting three colors for each octave, and not one color as before, with or without fading.
    • Selecting the color of the top leds, which are "falling" slower than the the entire octave levels.
    • Selecting the display refresh rate, can be very fast and very slow.
    • Selecting the amount of averaging of the analog levels over time, making a smoother changes of the display levels.
    • Most important! Controlling each octave minimum noise level. By that I mean what is the minimum analog value where the octave leds will start rising.
    • The control is on a server, using websockets - Up to five users simultaneously.
    • Update data to all five users when one changes one of the parameters.
    • MDNS Support.
    • OTA (over the air) updates Support.