Useful Modules for Arduino (and other things)

While working on “Arduino In a Nutshell” (my latest book) I managed to accumulate a lot (and I mean, a lot) of shields, modules, and components. My shop is overflowing. I thought I’d share some of the more interesting and useful ones. Disclaimer: I don’t get any commissions from posting these, I just happen to like them.

LCD Module

One thing I’ve noticed that seems to put some people off when it comes to working with microcontrollers is the lack of a display. While I don’t have a problem looking at LEDs and numeric readouts, I suppose that others have grown up with high-resolution monitors. My first computer was an IBM 360/165 (yes, it was real machine–a 360 optimized for scientific applications), so I learned by just looking at status lights and an occasional printout.

But you can have a display on your Arduino or MSP430 (or whatever) board if you want one. The module shown below is a 16 x 2 (two rows of 16 characters) LCD board for Arduino with an I2C interface. It only uses two pins on the Arduino’s AVR microcontroller.


This is a kit available from Adafruit ( It’s actually pretty easy to assemble if you have basic soldering skills and a decent soldering iron.

Your can also get the LCD as just a stand-alone module, and as an Arduino “shield” with buttons like the one shown above (but with a discrete digital interface, not I2C). You might not think 16 x 2 is very much in the way of display space, but you might be surprised with how much information you can actually squeeze onto a small area like this.

RS-232 Module

As you may have gathered by now I’m rather fond of RS-232. I like to be able to connect anything to anything, and not have to jump through hoops just to get gadget A to send some data to Gadget B. The first thing I usually reach for is an RS-232 interface, like the module shown below.




These useful things only need power, ground, and the TxD and RxD from the microcontroller, and you have instant RS-232. I bought mine from DealExtreme, but entering “arduino rs-232 module” into Google will return a bunch of candidates. This type costs about $2.50 each. You definitely can’t build your own for that price.

If you connect the TxD and RxD pins on the module to pins D0 and D1 of an AVR  on an Arduino, then the standard Serial library works just fine with it. It will work with any microcontroller that has a built-in UART.

DDS Module

Need a sine wave? How about a clean square wave? Need 40 MHz? Then you need a direct digital synthesis (DDS) module. The module shown below (also from DealExtreme) has an AD9850 DDS IC capable of continuous output from 0 to 40 MHz.


These can be had from multiple sources, and the modules typically sell for about $8 each. The downside to a module like this is that it needs something to interface with the MCU, so for an Arduino that means a prototype shield. The image below shows how I did it:


Quad Relay Module

Making LEDs blink is cool and all that, but things get really interesting when a microcontroller can actually control something. The typical microcontroller IC (an AVR, a PIC, an MSP430, or whatever) can’t really supply enough current for many jobs, so one way to do the job is with relays. This ancient technology has been around for over 100 years, but it’s still just as useful (and as commonly used) as ever it has been.

One of my favorite add-on boards is the quad relay module shown below:


These are readily available from numerous sources. I bought most of mine from BangGood for about $5 each (yeah, I know, odd name, but they have good deals on stuff). One nice thing about this module as that driver transistors for the relays are already on the PCB, so it only requires standard logic level signals to control the relays.

But wait, there’s more…

Want to learn more about the Arduino and what it available for it? Then you might want to check out my new book, Arduino In a Nutshell. It’s currently in production, but it should hit the bookstore shelves in about a month and a half.


0 Responses to “Useful Modules for Arduino (and other things)”

  1. Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow Crankycode on

Little Buddy

An awesome little friend

Jordi the Sheltie passed away in 2008 at the ripe old age of 14. He was the most awesome dog I've ever known.


%d bloggers like this: