One of the last significant steps in a project is designing the custom PCB. This stage means creating a DIY Arduino board that is custom to the application. Two examples of my past projects are BinBoo, a Binary Clock, and Open Vapors, my reflow oven controller.
While working on a project for a friend, I got to thinking; it would be nice to have a checklist for circuit elements to include on a DIY Arduino board. In the early days, I forgot to add a filter cap to AREF, for example.
These tips are based on an 8-bit AVR design, like the ATmega328p chip. You could apply these tips to other 8-bit AVRs. Until now, I have not designed a custom board around a 32-Bit/ARM board. Though at only $16, I would be tempted to just solder the Teensy module directly to my finished board.
Below is a written list of items for a DIY Arduino checklist. If you’d like to see me design this board in KiCad, check out this AddOhms Tutorial.
When I started working on Open Vapors, I thought the stumbling point would be the PID algorithm or safe AC line control. However, it turned out; I spent a significant amount of time understanding how to print to the Arduino LCD display correctly.
As I dig into my latest project, the lessons I learned back then are coming back to me. Here are 7 tips for driving an Arduino LCD display, like one with 2×20 or 4×20 characters.
As a kid, I got the book “Upgrading and Repairing PCs.” (Now in its 22nd edition.) It was the first book to explain to me the PC architecture. I considered, how were there so few pins on an AT-style keyboard connector when there were 101 keys on the keyboard? That is when I first learned about the keyboard matrix.
The keyboard matrix itself did not amaze me, but instead the idea there was an entirely separate 8-bit microcontroller inside of the keyboard. Early keyboards may have used the P8049AH, which, there is still some stock available to purchase. I was fascinated with the idea an entire computer was necessary to run the keyboard, to use my “real” computer. Why did it take something as complicated as a microcontroller?
Continue Reading »
What are aluminum polymer capacitors? These are a solid type of capacitor that replaces the liquid electrolyte with a solid polymer material. Sometimes you might hear these capacitors called “organic aluminum.” Technically, they are still “electrolytic” capacitors. However, the colloquial term of “aluminum electrolytic” refers to the traditional wet electrolyte-based capacitors.
For me, the release of this video is bittersweet. It is one of my last projects before my departure from KEMET. However, I am excited to talk about aluminum polymer capacitors because they represent one of the “newer” technologies when it comes to capacitors.
Difference between Aluminum Polymer Capacitors and Aluminum Electrolytics
As mentioned, the key difference between the capacitor types is the electrolyte. In a traditional aluminum electrolytic, there is an electrolyte that connects the cathode plate of the capacitor to the cathode electrode. In a polymer capacitor, a solid conductive polymer material replaces the wet electrolyte. The most common polymer material is PEDOT. The use of this material provides an exceptionally low ESR which makes the capacitors can handle more ripple current. Also, because there is no electrolyte to “dry up” or “wear out,” the operational lifetime of these capacitors is much longer. Overall, aluminum polymer capacitors are an excellent alternative to traditional electrolytics.
Can you use voltage dividers as regulators? What if you add a Zener Diode? In this AddOhms episode, I show what happens when you try to power a complex circuit like an ESP8266 with a voltage divider instead of a regulator. (Spoiler: Get a voltage regulator.) This video tutorial is related to a write up I did recently on Zener Diodes. For questions or comments visit the AddOhms Discussion Forum.
Behind the scenes
A significant change for this AddOhms Episode is that I moved from Final Cut Pro X to Premiere Pro. I also shot the entire video in 4K, even though the output is 1080p. Animations were still done as 1080p compositions. One snag I ran into, the color corrections I applied in PPro, didn’t seem to get exported. You might notice when the breadboard is on screen, it has a very slight yellow tint to it.
I’ve been changing how I produce the videos. It’s shortening the cycle time. The key is that I’m not trying to animate every scene. The amount of work involved is just too much. I animate practically every frame. So in a 6-minute video, that’s just too much.
By the way, there are two easter eggs in this episode. Can you find them?
The Zener diode is often used to create a reference voltage. In tutorials and even college texts, there are mentions of creating a Zener diode based regulator. The idea is that the Zener maintains a known voltage drop. The problem is that current matters. This post looks a quick Zener diode overview and shows what happened when I tried to power a microcontroller using a “Zener diode regulator.”
Here are some ideas of what you can do with the humble voltage divider. This elementary circuit has a few inventive uses. To be upfront, one of these uses is NOT as a voltage regulator. If you need a voltage regulated, get a voltage regulator! At some point or another, I’ve built all five of these voltage divider circuits. For me, the voltage level shifter is the most common.
Arduino tends to call daughter cards shields, while the Raspberry Pi community calls them hats. The Pi Cap is a hat. It plugs into the GPIO header of a Raspberry Pi and provides 13 capacitive touch pads. There is a traditional push button, an LED, and a prototyping area. While the Pi Cap does consume all of the GPIO pins, several are broken out near the GPIO header.
Continue Reading »
The first part of the tutorial looks inside of a Brushless DC Motor, or, BLDC. Then I show a discrete transistor circuit that can drive one. Of course, you’ll need a Microcontroller like an Arduino to drive it! Lastly, I briefly talk about an ESC.
Overall, a BLDC is better than a Brushed DC Motor (talked about those on #20) because: