
Ask HN: What's a good book to learn electronics? - tocomment
I want to start doing things like building a rep-rap, making an RFID cloner, maybe even some robotics.  What's a good book to teach me the basics of electronics, e.g., why do circuits need resistors, when do I use a capacitor, etc?
======
PStamatiou
I don't know whats happened recently but I grew up with Forest M Mim's books.
They were written on engineers/graph paper and handwritten but overall very
informative. I bought them at RadioShack back in the day, but you can probably
find them online for very cheap.

<http://en.wikipedia.org/wiki/Forrest_Mims>

~~~
PStamatiou
Also, I was big into Parallax, Inc's BASIC Stamps, and a magazine called "Nuts
and Volts".. not sure if it's still around. There was also a great, great
electronics store near me called Electronics Parts Outlet (Houston) that had
ridiculous electronics stuff. I suggest searching to see if there are any
niche electronics stores in your area. I ended up learning from the wise old
EEs that worked there and they let me thinker with peltiers, oscilliscopes and
the like. I ended up doing a _ton_ of soldering kits. I think companies were
by the name of Ramsey electronics and Velleman to name a few.

------
Anon84
For me, electronics only started to make sense after this book:

[http://www.amazon.com/Art-Electronics-Paul-
Horowitz/dp/05213...](http://www.amazon.com/Art-Electronics-Paul-
Horowitz/dp/0521370957)

------
ra
Art of Electronics is a very good book, but if you want to learn from a fun /
programming point of view I highly recommend "Making Things Talk", by Tom
Igoe.

<http://oreilly.com/catalog/9780596510510/>

~~~
dkd
I'll 2nd on Art of electronics.. But knowing the basics before touching it
would be better

~~~
codehd7
It might be worthwhile to note that third edition of the book is in the works
(supposedly). Given that the current (2nd) edition was published almost 20
years ago, I'm waiting to get the 3rd one. This page claims it's scheduled to
be published in February 2009: <http://isbn.nu/0521809266>

------
jsyedidia
I would recommend considering being more ambitious and learning how to design
and prototype digital circuits on an FPGA development board. Pong Chu's book
"FPGA Prototyping by VHDL Examples--Xilinx Spartan-3 Version" is really
excellent, with lots of well-explained projects.

You can get really nice Xilinx starter kits compatible with this book for
cheap. To be absolutely compatible, you can get the old Spartan-3 starter
board from digilentinc.com for $99, but be aware that you need a PC with a
parallel port. If you prefer like me to connect your FPGA board to your
computer using USB, I recommend either the Nexys-2 board for $99 or the
Spartan-3E starter board for $149, available at digilentinc.com, or the more
up-to-date Spartan-3A starter board for $189, which you can buy at
nuhorizons.com or avnet.com. These boards are mostly compatible with the book,
and you can get lots of peripheral modules like seven-segment LED's for them
from Digilent.

The software necessary to program these starter boards is available for free
from Xilinx. The only slight problem is that you need to use Windows or Linux
--no Mac OS X.

~~~
blackguardx
Anyone wanting to know about electronics shouldn't start with FPGAs. I do FPGA
design for a living. I wouldn't really consider it "electronics." It is closer
to embedded programming than circuit design. To an outsider, they are almost
exactly the same. Many companies lump FPGA design with firmware.

With FPGA design, you start with a board with an FPGA on it and then write
some code in Verilog (Verilog is much easier to learn than VHDL). Once the
design is complete, you hit the synthesize and place and route buttons and
download the reulting file into the FPGA.

With embedded programming, you start with a board with a microcontroller on it
and then write some code in assembly (you could also use C or something else).
Once the design is complete, you hit the compile button and download the
resulting file into the microcontroller.

~~~
jsyedidia
Yes, FPGA design is more like programming than it is like analog electronic
circuit design. No need for soldering, or for thinking about analog equations.
I think a lot of the audience of Hacker News would find it an interesting way
to learn more about hardware, even though it doesn't answer the original
poster's question about electronics a la resistors and capacitors.

If one prefers Verilog, Pong Chu also has an edition of his book using that
language. VHDL is more verbose than Verilog, and more strict about typing,
which many consider to be a good thing for hardware designs. But at the level
of Chu's books, they're almost equivalent--he uses a bunch of re-usable code
templates which are easily translated between Verilog and VHDL. It's not worth
agonizing about the difference; I chose VHDL mostly because more reference
designs for the Xilinx starter kits are written in VHDL.

------
3flp
Electronics is pretty broad. There are books for each area, depending on what
you want to do:

\- Building kits? \- Building circuits someone else designed? \- Designing
printed circuit boards? \- Designing digital circuits? \- Designing analog
circuits? \- Designing power electronics? \- Designing RF and microwave
electronics? \- System design and assembly?

It's a great hobby. You can spend decades learning all this, and more. I
have.. And don't get just one book. Get a few different ones. Google for
stuff. Search Isohunt for ebooks. Get application notes from component
manufacturers. There are tons of free useful info in those.

------
markessien
Don't bother. If you use the arduino board, you can approach electronics the
same way as one would programming - by trial and error.

Learn the basics - resistors, clock signals, how chips work, and the rest you
can pick up by experimentation.

~~~
Rod
While I do agree that electronics is learned by experimentation, IMHO the
Arduino board is a bad starting point.

I think that the best way to learn electronics is to start with the very
basics (resistors, capacitors, coils, voltage dividers, simple RC and RL
circuits, etc), then learn something about op-amps, then move on to nonlinear
devices such as diodes and transistors. No math is needed, and simple circuits
are easy to build. Building an analog amplifier is not hard, and it's quite
rewarding to design and build something that actually works. If one is really
devoted to the art of electronics, building a tube amplifier is even more
rewarding ;-)

After the basics of analog electronics, one can move to digital circuits,
learn about interfacing, what the difference between RTL and TTL is, etc, etc.
Playing with logic gates on a breadboard is fun and instructive. The basics of
DAC's and ADC's are fundamental too.

Finally, one is ready to move to microprocessors and stuff like the Arduino.
Knowing the basics, one can actually build cool stuff with microprocessors,
simple actuators and sensors. One knows how to build and connect sensors to
microcontrollers, one knows what's happening in the ADC, one understands what
makes it all work.

I believe that starting with the Arduino board right away is like choosing
Visual Basic as a first programming language: it hides the interesting
details, and it prevents one from seeing the big picture. Just a personal
opinion, of course.

~~~
bprater
Totally disagree but respect your position. Trying to learn the analog side of
electronics can take a very long time and requires vast amounts of
information.

If you go the digital route, most (software) hackers can be creating fairly
elaborate systems in an afternoon. They do the bulk of the work in the
software, rather than futzing with resistors and capacitors.

Imagine the difference between creating a LED array to mimic the KITT car's
LED light scanner in analog and in digital. Analog would be a nightmare,
digital would be a great afternoon of fun on very limited hardware.

Yes, eventually the person will run into the limitations of not understanding
the analog well enough, but since they weren't bogged down in details, they
may be excited enough to keep with the hobby.

~~~
tomsaffell
I think everything you have said is true, but it does not address the original
question:

"What's a good book to teach me the basics of electronics, e.g., why do
circuits need resistors, when do I use a capacitor, etc?"

I.e. he _wants_ to learn how _analog_ electronics work, amongst other things.

I own The Art of Electronics, but find it a bit theoretical. If you just
starting out you might even wants something aimed at high-school kids (no
offense intended)

If you like to learn by being taught (vs. self-taught) then sign up for class
at a local school, or if you don't have the time/money then try sneaking into
some lectures at your local university (I don't know how illegal / difficult
that is in the US, so beware). If you do want to be self-taught then see if
you can borrow the lecture notes from someone who has taken electronic
engineering. Or try this
[http://www.varsitynotes.com/electrical_engineering/electroni...](http://www.varsitynotes.com/electrical_engineering/electronics.html)

I would highly recommend buying a kit (lots have been mentioned) and if
necessary supplementing it with components from your local electronic
components store. And take things apart,

I'd also recommend building something that has an interest to you outside of
electronics, e.g. if you're into cars then build a radio controlled car.

------
agarren
I've wondered about this myself and have found that the most common responses
usually reference, "The Art of Electonics". Great book, sure, and very heavy
on theory.

There are a few books out now that touch on the Arduino platform - the
Make/O'Reilly site has a few. Additionally, there are a couple of folks using
a Sanguino/Arduino for building a rep rap, so it might be a good start.

I've found "Electronics - Self Teaching Guide" by Harry Kybett to be a decent
introduction to electronics in general. I also picked up "Embedded C
Programming and the Atmel AVR" which is regularly recommended for the AVR
platform.

------
lpgauth
<http://news.ycombinator.com/item?id=317376>

<http://news.ycombinator.com/item?id=111798>

<http://news.ycombinator.com/item?id=149317>

<http://searchyc.com/ask+electronic>

------
bprater
Analog electronics and digital electronics are different beasts. Most of what
you'll do when hacking together projects will be digital.

If you are a programmer, and especially if you are a low-level programmer, you
won't have a problem getting your feet wet on the digital side.

Snag one of the kits folks are mentioning in this thread and get busy.

------
kaens
<http://www.ibiblio.org/kuphaldt/electricCircuits/>

in combination with

<http://www.ibiblio.org/kuphaldt/socratic/>

------
trapper
Doing > Reading if you are that way inclined. I learned by buying an arduino
starter pack + a couple of shields from ladyada, putting them together.

------
sigstoat
When you're ready for a bit of theory, the Art of Electronics is good stuff,
with broad coverage.

------
pkeane
The Boys' First Book of Radio and Electronics. Author: Morgan, Alfred Powell,
Publisher: New York, Scribner Date: [1954] The Boys' Second Book of Radio and
Electronics. Author: Morgan, Alfred Powell, Publisher: New York, Scribner
Date: [1957] The Boy's Third Book of Radio and Electronics. Author: Morgan,
Alfred Powell, Publisher: New York, Scribner Date: [1962] The Boys' Fourth
Book of Radio and Electronics; an introduction to solid state physics,
semiconductors, and transistors, Author: Morgan, Alfred Powell. Publisher: New
York, Scribner Date: [1969]

For me, nothing else comes close :-)

------
aaronsw
For the hardcore Feynman fans, there's the Feynman Lectures on Computation:
<http://books.theinfo.org/go/0738202967>

------
comatose_kid
the art of electronics is cool, but the ARRL handbook is even better.

------
pt
i usually suggest folks get a kit - arduino, or an open source hardware kit
from <http://www.adafruit.com> \-- they're all fully documented and you'll
learn by doing and move along harder projects as you become more proficient.

(phil from MAKE magazine, also a good resource)

~~~
silencio
would you happen to know if the arduino starter kit make sells now comes with
the new arduino duemilanove? in fact, I can't find that on the make:arduino
store at all, only the older diecimila...

~~~
pt
yup it does now.

------
comatose_kid
One other piece of advice: Get access to an oscilloscope - they can be
expensive, so you may want to enroll in a course at a community college.

