
Ask MAKE is a weekly column where we answer reader questions, like yours. Write them in to becky@makezine.com or drop us a line on Twitter. We can’t wait to tackle your conundrums!

So what’s a pull-up (or pull-down) resistor, anyway? Well, it’s used when you’re reading an input voltage from some kind of sensor as a “default” value. Say you’re using a pushbutton with your Arduino and want to know when the pushbutton is depressed, so you connect the digital pin to ground through the button. When the button is depressed, ground is connected to the pin. But when the button is not connected, the Arduino is looking at the signal connected to that pin, which is “floating,” and therefore subject to interference and static, things that are probably not desirable in a deliberately triggered system. You need a way to keep the signal consistent, like connecting the pin to power, unless the button is depressed. Since you shouldn’t connect power directly to ground, you need a load in there to prevent a short, so you use a resistor. The Arduino pin will still read 5V even when connected to a 10K-ohm resistor, but when the button is depressed it will read the connection to ground. This is a pull-up resistor. I can remember it because I think of the pin being “pulled” up to power. If you had the circuit wired the other way around, with the pin connected to power through the pushbutton and using a resistor connecting the other side of the pushbutton to ground, this is called a pull-down resistor.
There are lots of great tutorials online for implementing simple circuits with pull-up or pull-down resistors:










it bears mentioning that you can activate the Arduino’s internal 20K pullup resistor by setting pinMode(i, INPUT); then calling digitalWrite(i, HIGH);
sometimes referred to as an “end-of-line resistor” in a large array of sensors, such as a security or fire alarm system.
// What's Trending
Raspberry Pi Design Contest
Seventeen Sneaky Secret Hides
Teardrop Camper Trailer
10 Things to Connect to Your Raspberry Pi
Lost PLA Casting from 3D Prints
DIY 3D Laser Scanner Using Arduino
I Have a (Puzzling) Dream
New Project: DIY 3D Laser Scanner Using Arduino
// What's Shared
A better way to slice a pumpkin
DIY Nerf Darts
100 Dollar Store Organization Ideas for Craft Rooms and Beyond
In the Maker Shed: Minty Boost USB Charger
Mad’s Mouse House
Lace Princess Crowns
I Have a (Puzzling) Dream
Play the Rings of a Tree Trunk Like a Record
// Most Commented
DIY Hacks & How To’s: Get Emergency Power from a Phone Line
Resin Casting: Going from CAD to Engineering-Grade Plastic Parts
Ten Tips for Screws and Screwdrivers
Ten Tips for Better Measurement
Is it a Hackerspace, Makerspace, TechShop, or FabLab?
Makers on TV: Big Brain Theory
Arduino Announces New Wireless Linux Board
Grow: A Portable CNC Router System