HACKER Q&A
📣 topsycatt

Where to start for hobby circuit design


I'm a software engineer with basic experience in EE (ohm's law, simple Arduino projects, etc.) I've set out a goal to make a nixie tube clock from scratch, and I want to design the driver circuit from first principles with a solid understand of what I'm doing rather than adapting something someone else has made. I'm starting this project primarily as a way to learn circuit design.

There are a million and one guides online but I find they tend to either be too basic or far too advanced. Can anyone recommend some thorough learning resources? Hardcopy books are a bonus.

Thanks in advance!


  👤 huhnmonster Accepted Answer ✓
I can tell you what I did, coming from a somewhat similar but different situation. I kind of over-promised for a small project, thinking that some electronics and little code could not possibly be too hard. After some time I realized that if I had to do the stuff around 50 times (project was a small sensor network), I would be stuck soldering for a few weekends. Then decided that maybe learning some ECAD along the way and getting PCBs manufactured would be cool, albeit totally overkill.

I cannot recommend Phil's Lab [1] enough. He has videos which take you from basically an empty sketch to ordering a finished board in around 2.5 to 3 hours. Some of the most worthwhile content I have found on YouTube to date.

Also, get a multimeter and an oscilloscope. Any oscilloscope will do probably, I have one from Amazon for 30$. For my project, it totally does the job, although you may want to invest a bit more here if you intend to use it for more advanced projects. You cannot believe how many times being able to look at a signal has helped me understand where my problem could be and what might be wrong. It has also helped me figure out what questions I had to ask. For simple projects, you are always going to get there by guessing I suppose, but why make it hard on yourself.

Aside from that, just try things. It is probably helpful to spend more time thinking when you are handling more expensive parts, so you do not burn a couple of them out because of carelessness, but also, don't overthink it.

[1]: https://www.youtube.com/c/PhilS94/videos


👤 jschveibinz
The Forest Mims books are good for learning electronics. They used to be very popular with Radio Shack hobbyists. I used these and the many Schaum’s Outlines as additional resources when studying for my EE degree. These are easier to digest. If you are feeling a little more adventurous, the ARRL books for hams are also good. Good luck and enjoy.

👤 ksaj

👤 codazoda
I don't have a book idea, but experimenting with circuit layout and programming in TinkerCad has helped me a bit. It's got a rudimentary stimulator too. I found exporting the code and inspecting it to be useful to understanding how to program an ATTINY85.

👤 Kliment
Hey, can you email me? I'm currently writing a resource like this and you are exactly my target audience, and I'd love to show you some of what I'm doing and get some feedback.

👤 rasz

👤 lmilcin
Hi. I am in the same boat as you. I have been developing different kinds of software for almost 20 years but only recently got interested in electronics and specifically electronics design.

Being noob myself I can't give you too many tips and tell in honesty they come from deep experience.

But I can give you one.

Don't be bent on doing everything yourself. Working with and understanding existing circuits is a huge opportunity to learn a lot from people who have infinitely more experience at this than you.

I have discovered this when I determined to fix couple of broken devices at home. Each time, by analyzing the existing circuit, I have learned a lot about how people put things together and how features of the device can realistically look.

With the benefit of hindsight, this should have been obvious. I am not spending too much time to read other peoples' codebases to learn from them but that's because I have started learning programming some 25 years ago and by now I can solve problems for myself. But when I started out I would take every opportunity to look at some foreign code, copy it, understand how it works and I understand this has been great learning tool.

Now that I have kids (older son is 7yo) I use the same technique to teach him programming. Instead of going from first principles I show him a working program (in scratch), or somebody else creating a working program or we create a working program with me programming it, and he learns much faster how to program by seeing how something works rather than by trying to derive from first principles.