Daisy – an Arduino autonomous obstacle avoidance robot

Daisy is an old “Discovery Kids” projection alarm clock turned into an autonomous obstacle avoiding bot. The brain is an Arduino Mini. Two small servos, modified for continuous rotation, are used for a differential drive and a combination of 3 infrared sensors (under the “skirt”) and 1 HC-SR04 ultrasonic sensor (the “eyes”) detect obstacles. I used the built in piezo buzzer for the alarm clock to play some basic tunes and sounds when power is turned on. ...

July 14, 2014 · 1 min · 160 words · Stan

555 Timer Monostable Multivibrator Circuit

This is a side project from my endeavor to program an Arduino Uno wirelessly (over Bluetooth) using a cheap HC06 JY-MCU Blueetooth Module I got from eBay. In order to kick off the Arduino bootloader and upload a new sketch, you need to reset the Arduino at the right moment, and hold the reset pin “LOW” for the right duration, or else things can go bad. Eventually I found out a circuit that does exactly what I wanted and, as a bonus, has a cool name: a “monostable multivibrator”. I feel smarter just typing that! ...

July 5, 2014 · 3 min · 473 words · Stan

Crazy Watch – Exploring electronics fundamentals

“It is good to have an end to journey toward; but it is the journey that matters, in the end.” ― Ernest Hemingway A few days ago my son came back from school with something that he had build in a Tech-Ed class. You had to carry a copper ring across a maze made of wire without “waking up the monster”. If you touch the wire, closing the circuit, the eyes (LEDs) would light up. ...

July 2, 2014 · 7 min · 1319 words · Wagner

Soldering tutorials, tips and tricks

Breadboards and hook-up wires are great for prototyping and testing out basic circuits. At some point though, you will want to create something more permanent and robust. Robots move around, bump into things, shake and vibrate and wires tend to disconnect way to easy. Soldering will help fix that! The best part is that even though it may look a bit intimidating, soldering is actually quite easy. All it takes is some practice and using the right tool for the job. Below is a collection of soldering videos and tutorials that helped me get from an absolute beginner to being relatively comfortable making custom boards with through-hole, and even SMD components (most of these even work!). ...

June 18, 2014 · 2 min · 290 words · Stan

HC-06 Bluetooth module datasheet and configuration with Arduino

In a previous post I shared my notes on how to connect an Arduino to an Android phone using the the popular and cheap HC-06 Bluetooth module. In that example I used the Bluetooth module with its default settings. That works fine, but some applications may require changing the communication speed (Baud rate), the pairing code, the module name etc. For example, I am trying to set-up a way to program my Arduino Uno and Arduino Pro Mini wirelessly, over Bluetooth. This requires changing the baud rate of the module from the default 9600 to 115200, or 57600, to match the default sketch upload speed for these Arduino boards. ...

May 26, 2014 · 15 min · 3135 words · Stan

Arduino program / sketch upload speeds

I am working on circuit that will allow me to program my Arduino boards (I have an Arduino Uno and a couple of Arduino Pro Minis) over a wireless Bluetooth connection. I am planning to use my cheap and easy to find HC-06 Bluetooth module for this. One of the first thing to figure out is the baud rate that the Arduino IDE uses, when uploading the sketches to the various Arduino boards. I need to make sure that my HC-06 Bluetooth module is configured to communicate at the same rate, so the avrdude stays happy. ...

May 25, 2014 · 2 min · 425 words · Stan

Free Arduino reference guide

Erik Verberne teaches Information and Communication Technology (ICT) in Netherlands and looked into the Arduino platform in an attempt to enhance his department’s curriculum. He diligently documented his research and is now sharing it with the community. The result is an e-book of over 200 pages full of examples and tutorials, from Arduino and ATTiny programming tips, to working with LCD and LED displays, playing sounds, detecting obstacles, wireless communication via IR and Bluetooth and much more. See the official thread in the Arduino forum for the latest update and a copy of the Arduino guide and make sure you post a comment there if you find it useful! ...

May 24, 2014 · 1 min · 158 words · Stan

Play simple melodies with an Arduino and a piezo buzzer

Piezo buzzer background Piezo buzzers are simple devices that are commonly used to produce beeps and sounds in many electronic gadgets, like alarm clocks, toys, pc boards, etc. They consume very little current and have high impedance, which means that you can safely connect them directly to a micro-controller pin. Buzzers have a piezoelectric ceramic plate that generates electricity when a mechanical force is applied to it and vibrates (extend and shrink) when exposed to an electric field. The first property is often used to detect knocks and musical tones, while the second property is what we are going to use to play a simple tune from an Arduino micro-controller. ...

May 11, 2014 · 4 min · 646 words · Stan

Shift registers: add more digital I/O to your Arduino

Shift registers are useful chips that can add more outputs or inputs to your micro-controller. The 74HC595, for example, provides 8 additional digital outputs that can be controlled with only 3 Arduino pins. Additionally, you can “daisy-chain” multiple shift registers to multiply the number of outputs even further. Below is a great video by Kevin Darrah explaining how shift registers actually work. He took an interesting approach demonstrating the functionality of the shift register using manual input via push buttons, rather than a micro-controller. ...

April 13, 2014 · 1 min · 138 words · Stan

An Arduino self-balancing robot: working prototype

I spent some time reading on accelerometers, gyros, sensor fusion, PID, optimized PWM motor control. I tinkered with the components I have for a while and then procrastinated for even longer. Finally, I can say that I have a prototype of a self balancing bot that shows promise. More fine-tuning is needed, and I plan to add a Bluetooth module to get PID controller data wirelessly, possibly to adjust the PID coefficients in real time and, hopefully to steer the bot remotely someday. ...

April 11, 2014 · 9 min · 1851 words · Stan