How to Get Unstuck and Finish Your DIY Projects

If you ask any maker what frustrates them most, it’s rarely the lack of tools. You can usually borrow, improvise, or 3D print what you need.
The real frustration shows up when a project simply stops working — and you don’t know how to continue.
- The 3D print that warps halfway through.
- The Arduino sketch that uploads fine but does absolutely nothing.
- The motorcycle carburetor that refuses to idle smoothly, no matter what you try.
That’s the point where most people quit. They don’t know how to get unstuck, so the project sits on the shelf.
Why Getting Unstuck Matters More Than Having More Tools
For me, I don’t see those projects as failed. They’re just… paused. Sometimes for weeks, sometimes for years. In fact, some of my most satisfying breakthroughs have happened when I revisited an old “failed” project with fresh eyes and realized that the obstacle wasn’t a dead end at all — I just wasn’t ready for it yet.
Over the years, I’ve learned that finishing projects isn’t about tools or talent — it’s about problem-solving. The ability to break down obstacles, keep going when you’re stuck, and find a path forward is what actually gets projects across the finish line.
I learned this lesson over and over during the restoration of my grandfather’s motorcycle. At one point, the exhaust system simply refused to come out of the main frame.
It had been sitting there untouched for decades, basically welded in place by rust and time. I tried every tool in the workshop. I jabbed screwdrivers through side holes, hammered chisels, applied brute force. Nothing.
But giving up wasn’t an option — the exhaust had to come out before I could continue the restoration. So I kept going, tool by tool, angle by angle, until one evening it finally loosened. I still remember the release I felt pulling it out, covered in grime but knowing I could now sandblast, paint, and move forward.
In other words: the goal of the project kept me going, not the pleasure of that moment. Because honestly, it wasn’t fun. Fixing stuck projects rarely is. But without persistence, the restoration would have ended right there.
Funny enough, I think video games trained me for this. Games are basically troubleshooting machines: trial, error, frustration, repeat.
You “die” dozens of times before finally beating the boss. The difference is, games give you multiple lives. Real projects only give you persistence.
That persistence becomes easier when you have a process to fall back on. That’s where my Maker’s Framework for Getting Unstuck comes in.
Step 1 — Define the Problem Clearly
Most makers jump straight into fixing without stopping to ask: what’s really wrong here?
Before you touch a tool or a keyboard, write down:
- What is actually happening?
- What did I expect to happen?
I usually realize I’m stuck when my motivation drops and progress stalls. At that point, I try to “brain dump” everything I know about the situation. Writing it down forces me to move from vague frustration (“it’s broken”) to a concrete statement (“engine turns but doesn’t ignite” or “LED uploads but doesn’t blink”).
That simple act often transforms the problem from overwhelming to solvable.
Step 2 — Check the Basics First
Most “impossible” problems are actually simple mistakes.
- Is it plugged in?
- Did I save the file I actually uploaded?
- Is there fuel in the tank?

Image by Vishnu Mohanan from Unsplash
Once, while deploying a web app, I spent hours fixing a bug locally, redeploying… and seeing the same issue. I was tearing my hair out until I realized I hadn’t actually saved the file before redeploying. No new code ever made it to the server.
Sounds ridiculous, but I’d bet half of abandoned projects could be revived if their creators checked the basics before giving up.
Step 3 — Break It Into Subsystems
When you’re stuck, it’s easy to see the whole project as one giant, unsolvable problem. The trick is to separate it into smaller pieces and test them one by one.
That’s what I did when I struggled to get my STM32 board working with an SD card shield.
- First, I removed the Arduino connector and used jumper wires instead — isolating the connection itself.
- Then I moved to the SD card: tried multiple cards, reformatted them, and made sure they used the right FAT format.
- Next was the bus: I tested different buses one by one, eliminating them as possible root causes.
- Finally, I looked at the implementation: tried fresh CubeMX configurations, swapped in different code samples, even started a completely blank project without predefined peripherals.
By breaking the project into subsystems, I could rule things out systematically instead of feeling like the entire setup was just “broken.” It didn’t solve the issue right away, but it gave me clarity — and in the end, that clarity led me to the decision to switch platforms and keep the project alive.
Step 4 — Test with Known Good References
When you’re stuck, the fastest way forward is often to compare against something you know works.
Swap in a cable, try another SD card, use example code. Sometimes it’s not your skills — the component is just faulty.
During my motorcycle restoration, I got completely lost reassembling a brake assembly. Nothing lined up. Luckily, I had a donor bike. One look at its intact system solved the mystery.
Electronics work the same way: if my code doesn’t run, I’ll load a known-good example. If that works, I know the issue isn’t hardware. If it doesn’t, the hardware is suspect.
Reality beats theory every time.
Step 5 — Document Each Attempt
When you’re frustrated, it’s tempting to just keep trying things at random. The problem is, you end up repeating the same dead ends.
Documentation prevents that.
I jot bullet points, snap photos, even film clips when I know I’ll forget how pieces fit together. I also use my blog as a troubleshooting log. Writing things down not only saves future-me headaches — it also clarifies my thinking at the moment.
Want to finish more projects? Write while you build.
Step 6 — Pause and Reset

Image by Lukas Hartmann from Pexels
Sometimes the best fix is to walk away.
I’ve solved countless programming bugs overnight. At 2 a.m., nothing works. After a night of sleep, the mistake is obvious.
It’s the same with mechanics. Once, a wheel suspension part refused to budge. I hammered, pried, cursed. Nothing. Days later, the idea hit me: use heat, not force. Within minutes, the part loosened.
Your brain works in the background when you let it. Walk, read, shower — give it space to surprise you.
Step 7 — Ask Better Questions
If you’re stuck and asking for help, context is everything.
I once stripped out most of the details of a programming problem to “protect my idea” and posted only the core question. The replies were useless. Without context, no one could help.
Now I always include:
- My exact setup.
- What I already tried.
- What actually happened.
Better questions = better answers. And sometimes, asking yourself the right question reveals the real problem.
Case Example — When My STM32 Project Got Stuck
One of my latest “stuck moments” was trying to get an STM32 board working with an SD card shield. I wanted to log drone telemetry data. Easy on paper, but nothing worked.
- Define: “STM32 can’t communicate with SD card shield.”
- Basics: Checked wiring, CubeMX config, power. All correct.
- Subsystems: Tested connections, SD cards, buses, even built a blank project. Still dead.
- Known Good: Tried tutorials and example code. They worked elsewhere, not with my setup. Maybe the module was faulty.
- Document: Logged everything in my podcast and blog to avoid going in circles.
- Pause: After days, I took a break. The reset helped me realize something deeper.
- Better Questions: Did I actually want to write embedded C? Or did I just want to build a prototype?
That last question unlocked everything. I switched to CircuitPython on an RP2040. Within hours, I had working code and motivation back. The SD shield may still have been bad — but the real problem was my approach.
That’s how you finish a project instead of abandoning it.
Quick Actions for Getting Unstuck
If you’re stuck right now, here’s what to try:
1. Write it down: What’s happening vs. what you expect.
2. Check the basics: Power, cables, saved files.
3. Log one attempt: Don’t repeat dead ends.
4. Take a break: Let your brain breathe.
5. Ask better questions: Add context before seeking help.
You don’t need to be an expert in every field. You just need a repeatable way to get unstuck and finish what you start.
Key Takeaway
Makers don’t succeed because they never hit problems.
They succeed because they know how to keep moving when they do.