When Curiosity Trumps Common Sense: Why I’m Building My Own Fish Finder 🐟🛠️
You know that feeling when your hands practically itch to build something physical? Something you can actually hold and tinker with, rather than just pushing code to a cloud server? Yeah, I couldn’t resist either.
The other day, I finally hit "Order" on a massive pile of circuit boards, sensors, and wires. My latest pet project: a DIY sonar fish finder built entirely from scratch.
Quote"First, a Quick Disclaimer: This is NOT About Saving Money
Let’s be real here. Going on Amazon or AliExpress and buying a ready-made budget fish finder would be three times cheaper, a hundred times faster, and honestly, a lot more stable out of the box. But this project isn't about saving a buck.
This is pure, unadulterated engineering curiosity. I am fascinated by the raw mechanics of it:
- How hydroacoustic sensors actually function at the lowest level.
- What it takes to translate a raw analog signal into a clean, readable map of the riverbed.
- Exactly how painful it’s going to be to write the custom software and assemble the hardware on my workbench.
# What’s in the Box? (The Tech Stack Breakdown) 📦
The brain of this floating sonar unit will be the developer-favorite ESP32 (CP2102) microcontroller. It will host its own Wi-Fi Access Point right out on the water, spinning up a local web server mid-lake. No custom mobile apps required here—you just connect your phone to the float’s Wi-Fi network, open up Google Chrome, and watch the real-time underwater analytics populate right on your screen.
The underwater eyes and ears of the device will be a bare 200 kHz piezoelectric transducer disk (ULT SEN TX/RX 200KHZ 500VP-P). We will boost and capture its acoustic signals using an LM324N operational amplifier. As for the housing, I plan to custom-fabricate the float myself using PVC piping, high-density foam, and epoxy resin.
Now for the best part if you're a software developer: I won't be writing the microcontroller firmware in standard C++ or using the traditional Arduino IDE. Instead, the entire codebase will be written in Go and compiled via TinyGo. Let's see how Go handles bare-metal hardware constraints and real-time signal processing.
# What’s Next? 🧭
- The Unboxing: A detailed breakdown of the components, modules, and programmers as they arrive.
- The Build: Soldering the circuit, tuning the LM324N op-amp, and attempting to wire everything together without letting the magic smoke out.
- Code & Calibration: Setting up the web server on TinyGo, capturing the ultrasonic echoes, and conducting the first field tests (likely in the bathtub first, before moving to open water).
This post kicks off a mini-series chronicling my DIY madness. The components are already in transit, so here is a sneak peek at the upcoming roadmap:
- Post 1: The Concept (You are here).
- Post 2: Acoustic Physics 101 & Component Breakdown (How a piezo disk "shouts" underwater).
- Post 3: Building the "Floating Wi-Fi Hotspot".
- Post 4: Fighting with Epoxy Resin and PVC Pipe.
- Post 5: The Maiden Voyage (Testing the rig on an actual river).
Grab a coffee and get comfortable. Let’s dive in! 🚀