Search models, users, collections, and posts
Ferrowave
Ferrowave
Bring your music to life with the expresive liquid motion of the ferrofluid that reacts to music and full-spectrum RGB lighting that transforms every track into sound, motion, and color.
makarov
2 created · 1116 backers
USD 10,930
pledged of USD 2,500 goal
687
backers
Late Pledge Active
Facebook
Twitter
Reddit
Pinterest
This project successfully funded on 2025/10/05 17:11 UTC. But you can still Late Pledge for available rewards.
Update #2
Button fix is here, and a thank you to the community
2026-05-29 21:12:43

Hey everyone,

Quick but important update for anyone who's started building, or is about to.
 

The issue: Some of you ran into buttons that repeat or get stuck on their own, most often the magnet-mode and LED-mode buttons. It happens even with the buttons untouched, and swapping boards doesn't help. If you've seen this, you didn't do anything wrong. It's a firmware bug, not your build or your soldering.
 

What was happening: A few of the buttons were assigned to pins on the ESP32 that, on this board, can't hold a steady "not pressed" signal on their own. So they'd drift and the firmware would read presses that never happened. Fixable in software.
 

The fix: There's a corrected firmware file on GitHub now, in the firmware folder, called FerroWave_fixed.ino. Flash that instead of the original and it should resolve the phantom presses. Two small things to do alongside it:

1. Set DIP switch position 2 to ON (the rest OFF) so the buttons are properly connected.
2. Move the LED ring data wire to pin GPIO 21 (the fix frees up the old pin for a button).

Everything is documented at the top of the file and in the troubleshooting notes. It's fresh, so if you flash it, do a quick test and let us know how it goes on your build, the more confirmations from real hardware, the better for everyone. While I was at it, the LED "strobe" effect that wasn't working is fixed too.
 

A genuine thank you: This fix exists because of you. Big credit to the builders on GitHub who dug into it, shared their working setups, and confirmed the fix on their own boards, that's exactly the kind of open-source teamwork I hoped FerroWave would spark. There's also a ton of other gold being shared over there: parts sources, a speaker spacer file, ferrofluid mixing tips, and more. And thank you to everyone here on MakerWorld for the patience, the encouragement, and the build reports while these early kinks get ironed out.
 

Where to go for help: GitHub is the home base for FerroWave, firmware, troubleshooting, and discussion all live there: 👉 github.com/matoslav/FerroWave
 

If you hit a snag or find something worth sharing, open an issue. That way the whole community benefits from the answer, and good fixes (like this one) make it back into the project for everyone.
 

Thanks for building with me. Can't wait to see your FerroWaves come to life.

Update #1
Let's get the party started!
2025-12-15 21:10:11

🎉 FerroWave version 1.0 is here! A Heartfelt Thank You to Everyone! 💝

After months of development, challenges, late nights, and countless iterations... I'm incredibly excited to share that FerroWave is complete and ready for you! This moment wouldn't exist without YOU. Your support, patience, and belief in this project carried me through every obstacle. Today, I'm I'm sharing something we built together.

 

668 backers believed in FerroWave. Whether you contributed at the highest tier or the entry level, you each played an essential role in making this real. I've created a dedicated BACKERS.md file in the repository listing every single one of you by name (organized by pledge tier).  You're co-creators of something that will now live on as open source forever.

 

I know this journey took longer than expected. There were hardware revisions, code rewrites, power system redesigns, and plenty of learning curves along the way.  Your patience and understanding meant everything. Thank you for sticking with me.

 

What We Built Together

FerroWave has evolved into something even better than I originally envisioned, and that's thanks to your feedback and support. Here's what we're getting as of today:

Dual Audio Input System

  • Bluetooth A2DP for wireless streaming from any device
  • AUX/Line-In with intelligent auto-switching

Eight Unique Magnet Modes

Each one creates completely different ferrofluid behavior:

  • SMOOTH - Gentle, meditative flowing
  • SPIKE - Aggressive, dramatic spikes (crowd favorite!)
  • BOUNCE - Rhythmic pumping that follows the beat
  • CHAOS - Unpredictable, maximum visual impact
  • PULSE - Sharp on/off synchronized with drums
  • WAVE - Slow building surges
  • TREMOLO - Rapid flutter effects
  • BREATH - Calming, breathing motion

Ten LED Visual Effects

The 24-LED ring creates stunning synchronized visuals:

  • Rainbow Spin - Classic color wheel
  • Spectrum Analyzer - See your music's frequencies
  • VU-Meter - Professional audio level display
  • Pulse, Fire, Ocean Waves, Strobe, Chase, Sparkle, and Bass Glow

Eight EQ Presets

Currently tuned for different music styles, but will be refined later on:

  • Flat, Bass Boost, Treble, Vocal
  • Rock, Electronic, Jazz, Classical

Six Physical Buttons - True Standalone Operation

  • No computer needed once it's programmed
  • Cycle through magnet modes (up/down)
  • Change LED effects (up/down)
  • Switch EQ presets (up/down)

Portable Battery Power

  • 4x18650 battery system
  • cca 2 hours of runtime
  • Recharges via Micro-USB

Advanced Serial Control

For those who want to dig deeper, I've left in commands for testing out various underlying variables:

  • Adjustable PWM frequency (1-5000 Hz)
  • Sensitivity control (0-200%)
  • Attack/release speed tuning
  • Custom duty cycles
  • Real-time parameter adjustment

🔗 FerroWave GitHub Repo

Here you'll find everything you need to start building your own FerrroWave:
github.com/matoslav/FerroWave

 

Future Development

This is of course not a finished product. It is just the first working and easily reproducible prototype. There's a lot of refinement still to be done, both on 3D printed parts and the software. There's so much room for experimentation and different setting I'm also eager to see what you discover! If you run into any issues, please don't hesitate to reach out. You can also use GitHub Issues/Discussions. Together, we can make this project even better.

 

My next step is also to create video build tutorials for easier assembly, but first….

 

🎁 Fulfilling Your Rewards

I'll start working through the rewards in the order they were pledged:

  • Digital essentials (documentation, files, support) - Available NOW on GitHub and soon on Makerworld
  • Digital awards  (screensavers,..) - Hopefully by the end of the month, if not, then in January 2026
  • Physical rewards (shirts, kits, assembled units) - January 2026 onwards

🙏 Final Thoughts - Thank You 🙏

You believed in this project when it was just a concept.
You waited patiently through delays and challenges.
You offered feedback that made it better.
You created a community around something we all find magical.

FerroWave exists because of you. Not just financially, but in every meaningful way.

I can't wait to see what you build. I can't wait to see your ferrofluid dancing to your favorite songs. I can't wait to see how you customize and improve upon what we've created together. From the bottom of my heart, thank you for making this dream a reality.

 

With immense gratitude,

Makarov87

 

P.S. - I'd love to see your builds! Share photos, videos, and your experiences. Your success is my success.

P.P.S. - If you have questions or suggestions, GitHub Discussions is the place. Let's build an amazing community around this project!

 

GitHub: github.com/matoslav/FerroWave
MakerWorld: makerworld.com/en/crowdfunding/70-ferrowave
License: MIT Open Source