Tag Archives: ATmega2560

This ‘useless IoT device’ prints out Reddit’s Shower Thoughts

With the press of a button, Thinking Man produces a random amusing thought from Reddit’s popular subreddit Shower Thoughts. 

If you’ve never seen it, the subreddit /r/Showerthoughts is full of brilliant, concise and often hilarious insights that come to mind while, you guessed it, showering. Amidst all of that lathering and rinsing, our brains wander. The question is, what do you think about during your most vulnerable moments?


Cognizant of this, the crew at MAKE: Magazine have developed a “totally useless and ridiculous desk toy” that prints out snippets from Reddit’s infamous feed. With one press of a button, the aptly named Thinking Man generates a random amusing thought from its onboard thermal printer, which is downloaded from the social network via Wi-Fi. The result is an objet d’art (or “work of art”) that can surprise you with its cleverness.

Aside from its thermal printer, this Internet of Useless Things project combines an Arduino Mega (ATmega2560), an ESP8266 module and a plastic mannequin head. (You can see how to program the ‘duino, wire the boards, work with code and power up the device referring to its in-depth writeup here.)


“Because the entire response from Reddit is too large for the Arduino to store in memory, the microcontroller has to pick out the relevant data as it is received. The included source code does just that, and can be adapted to read data from anywhere on the Internet or your home network,” MAKE: explains.

With a little tweaking, you can configure your own Thinking Man to produce jokes, or even more useful tidbits such as to-do lists, headlines, weather reports and class schedules. The possibilities are endless. Intrigued? Then head over to MAKE:’s entire write up here, or watch the team’s weekend project video below!

Kamibot is a programmable paper robot for kids

This Arduino-compatible bot teaches children how to code and can be remotely controlled by smartphone.

Let’s face it, there’s nothing more synonymous with DIY than arts and crafts. And while there are all sorts of paper projects out there, many lack in terms of interactivity and movement. That was until now. Thanks to one South Korean startup, young Makers will soon have the ability to create their own toy characters and personalize them as often as they choose.


Kamibot is a programmable paper robot hybrid that can be wirelessly controlled by smartphone or tablet. Completely modular, children can customize their character by simply attaching and detaching various magnetic designs to its body, which include Count Dracula, Frankenstein and a Transformers-like robot. And you don’t need to be an origami master to do so either — all the templates are available online. Just download, print and let the fun begin!


The robot itself is equipped with an ATmega2560 at its core and Bluetooth connectivity, along with three IR sensors, a pair of DC motors for mobility, a servo motor for rotation, RGB LEDs for color effects, two encoders for speed control, and an ultrasonic sensor for detecting any obstacles that may stand in its way. Each Kamibot is also rechargeable via USB.

An accompanying mobile app enables kids to remotely control their gadget and change its behaviors, as well as switch to “line mode” if they rather have its infrared sensors take over along a black line course. Aside from that, the app’s dashboard features a battery indicator, the distance from a nearby object, a speedometer, and a bar for adjusting the LED colors.


It’s pretty smart, too. Kamibot can sense and navigate around objects in your living room and even illuminate various hues to double as a nightlight for children. But that’s not all. According to its creators, Kamibot was specifically made to serve as an educational toy. Since it’s built around the highly-popular Arduino platform and is compatible with Scratch, coding has never been easier — even for beginners.

Interested? Head over to its Kickstarter campaign, where the team is currently seeking $50,000. The first batch of bots is expected to begin shipping in May 2016.

Mirrored pyramid creates mirages in the desert

Changes in the temperature and light cause this tower’s nine tiers to morph.

As reported on WIRED, “For a few days in October, a ziggurat of mirrored boxes stood in Dasht-e Kavir, a desert in central Iran. The sculpture contained sensors, gears, and an Arduino processor that sensed changes in the temperature and the light, which caused the tower’s nine tiers to spin independently.” The resulting views of the desert, seen simultaneously from each mirrored surface, are beautiful and ominous at the same time.


This ziggurat was constructed by Italian designer Gugo Torelli and Iranian artist Shirin Abedinirad. As shown on the project’s Flickr page, they used an Arduino Mega (ATmega2560), along with five motor shields to control a total of nine stepper motors. The frame and gears were constructed out of wood, before the exterior was covered in a reflective surface.

If you want to see this tower yourself, there are plans to take this tower to New York City, which would make it accessible for many more people. According to Abedinirad’s site, “When installed in a city location it reacts with different animation patterns to the audience interaction, when placed in a natural environment its movement are changing depending on the weather conditions.” It would seem that city observers may see a different behavior out of the tower, but hopefully it will still be incredible!

[Image: Gugo Torelli and Shirin Abedinirad]

Become a DIY pinball machine wizard

This Maker was able to recreate an arcade classic using commercially available parts and an Arduino Mega.

Pinball machines might not be a common sight in America anymore, but if you’re nostalgic about these ancestors of video games, chances are you’ve thought about owning one yourself. Since you’re reading this blog, there’s also a good chance you’ve thought about building one!


Bob Blomquist decided to go from thinking about it to actually constructing his own using commercially available parts, including an Arduino Mega (ATmega2560). As you might suspect, as shown at 9:10 in the video below, even a relatively simple table like this requires a massive amount of wiring.

Blomquist’s project features several interesting techniques, including the use of an off-the-shelf voltage divider too step down the 24 volt power used with the “pop bumpers.” This allowed the bumpers to be powered by 24 volts, while this output is reduced to 5 volts for Arduino input. In this case, the circuit tended to leak current, so an analog input was employed to filter out false signals.


The voltage divider is a very useful concept in electronics, and more information on building one of these yourself can be found here.

Besides showing off a few electronics tricks, this detailed video also reveals all kinds of interesting components used in a standard pinball table. They are quite interesting in their normal use, and for that matter, some of them could certainly be repurposed for other Maker projects!

Build a 3D scanner with infinite resolution for just $50

All you need is a DSLR camera, an Arduino, a stepper motor driver, a stepper motor, an IR LED and a LCD shield.

Looking for desktop 3D scanner with inifitinite resolution? Well, the good news is that you can get your hands on one for just $50. The bad news is that, you will need a DSLR camera. That’s because Maker Whitney Potter was able to create his own using a Nikon and an Arduino-driven stepper motor.


“Desktop 3D scanning has made great leaps in recent years but it still has great limitations,” Potter explains. “Scanner hardware is built around a specific scan volume and resolution. You can get decent results, but only if your object fits that sweet spot. If you’re object is too small, or too detailed or your scanner is just having a bad day, your scan will look like a potato. Luckily there is another approach.”

The method he is referring to is photogrammetry, which constructs 3D images from a set of partially overlapping 2D images. The limiting factor with this approach is the quality and spacing of the photographs. Each picture must be well exposed and perfectly focused. Plus, there must be sufficient overlap between the photos so the rendering software knows where each shot belongs. Although this can be done with some practice on larger objects, it is virtually impossible with smaller subjects. This is where the Arduino-powered stepper motors come in handy.


As aforementioned, Potter’s DIY 3D scanner employs a stepper motor controlled by an Arduino Mega (ATmega2560) to turn the scanned item by a fixed amount. An infrared LED then triggers the camera’s wireless sensor, setting off the shutter. This process is repeated until photos have been collected from all angles, allowing one’s photogrammetry software to reproduce an accurate and high-res 3D image of the subject.

Meanwhile, an LCD display shield with a set of buttons enables a user to command the Arduino. With these buttons, the user can select the number of pictures to be taken per revolution. The scanner can run in two different modes. In automatic, it takes a picture, advances the stepper and repeats until it has completed a whole revolution. Whereas in manual, each push of the button captures a picture, advances the stepper and waits. According to Potter, the latter is particularly useful for scans where each photo needs to be framed and focused manually.


Although Potter’s Arduino sketch has been configured for a Nikon DSLR, it can be set up to work with pretty much any other brand of camera. The Maker utilized Sebastian Setz’s Multi Camera IR Control library, which allows it to work with any model that uses an IR remote.

In terms of photogrammetry software, Potter recommends Agisoft Photoscan and Autodesk Memento, as well as Autodesk 123D Catch for those on a budget. Intrigued? Head over to the Maker’s Instructables page where you can find a step-by-step breakdown of his project.

Explore the world of robotics with this 3D-printed, Arduino-driven hand

Hobby Hand is a 3D-printed robotic hand that mimics natural movement and can be easily controlled by anyone.

The brainchild of Iowa City-based Biomechanical Robotics Group, the Hobby Hand is a 3D-printed robotic hand capable of mimicking the natural movements of its human overlord.


The modular platform is ideal for hobbyists, tinkerers, Makers and robotics enthusiasts, as well as educators looking to introduce students to programming, analog sensors and hardware. In terms of its design, the Hobby Hand consists of five servo motors for lateral movement and five additional servos responsible for bending. A top piece mounts the hand onto the servo motor frame, which guides the flexion cables to the servos.

An Arduino Mega (ATmega2560) and servo shield are tucked away inside the base, which acts as the control center for the Hobby Hand. This is also where you’ll find all of the motors, sensors and additional peripherals attached to the board. The electronics are driven by a 5V 4A power supply.


Each finger has a total of four bands that saddle the center line to maximize the stability of each digit. These elastics are tasked with bringing the finger back to its original position after closing. Additionally, the team has devised an analog board of potentiometers that handle flexion and side-to-side movement.

What’s more, the Hobby Hand even comes with a mini breadboard, which is connected to the servo motor frame. This enables Makers to add extra analog sensors (light, sound, muscle and others), LEDs and speakers to their project.


The hand itself ships in one of two forms: either as a fully-assembled, out-of-the-box product or as a DIY kit with a step-by-step instruction manual. The Biomechanical Robotics Group crew advises that the latter option requires some basic soldering know-how and a few common tools. Intrigued? Head over to its Kickstarter campaign, where the team is currently seeking $30,000. Delivery is slated for June 2016.

Turning foggy air into a reliable water source

FogFinder is a system that generates a new renewable water source for communities, and relies on Arduino and XBee to get the job done. 

Alright, so it may not be possible to create water out of thin air. However, with a bit of engineering, scientists in Chile are turning foggy air into a reliable water source for nearby residents. The process is almost entirely natural: the sun desalinates the water, the winds push the water to a higher elevation, and gravity allows the collected water to flow back down to the village.


Using large fog collectors, which consist of mesh mounted on a rigid structure, to capture impacting fog water droplets from the air and tapping into the natural processes mentioned above, fog collection could be an economical way to gather and distribute clean water.

The fog collectors are typically installed on hillsides and remote areas where fog is abundant. These installations are especially common in arid climates in Chile where rain runs scarce. As fog passes through, the droplets impact the mesh fibers and collect in a trough below. One of the real challenges and opportunities for innovation lies in determining where to install these collectors, how to orient them, and understanding how efficient they are at collecting water from the air.


While at the Universidad de los Andes in Santiago Chile, Richard LeBoeuf, Associate Professor at Tarleton State University, and Juan de Dios Rivera, of the Pontificia Universidad Católica de Chile, developed a new type of sensor called the “Liquid Water Flux Probe” to measure the availability of water at current and potential fog collector sites. The sensor measures the liquid water content and speed of the fog and can be used to understand the optimal location and orientation for each of the collectors.

The sensor is part of a larger system called FogFinder, which Richard LeBoeuf developed in collaboration with Juan Pablo Vargas and Jorge Gómez at the Universidad de los Andes. Together they designed and engineered the solution, which includes wireless networking.

With the primary challenge of measuring fog liquid water flux out of the way, the team needed to design a device capable of being deployed in extremely remote environments and easily retrieve sensor data. Since there is no power source to plug into out in the desert, the options are either solar or wind power. Due to their simplicity, a separate solar power system, comprised of a solar panel, battery, and charge controller, is used in conjunction with the FogFinder unit.


To facilitate the collection and transmission of sensor data, the team chose to build the foundation of FogFinder with Arduino and XBee. Both components offered a fast and easy way to get started prototyping the design. Each sensor node is comprised of an Arduino Mega (ATmega2560) and XBee module, and the team even designed and built custom boards to regulate voltage, interface the sensors and store data on a microSD card.

The node gathers data on liquid water flux, humidity, temperature, flow-rate from fog collectors, pressure, wind speed, as well as wind direction.

The team settled on using XBee for local wireless communication since it provided greater range and required less power than Bluetooth. The ZigBee protocol also offers the flexibility to create a mesh network and configuration settings to conserve power-saving valuable battery life. With external antennas and mountain top to mountain top placement of each radio, they have achieved a reliable 1 km link.


Once the data is collected, it’s sent to a remote server over a cellular network. Using a BeagleBone SBC and a cellular modem, data is taken from the local XBee ZigBee network and can be accessed on a remote computer. This information is then analyzed to assess the performance of the fog collector.

What’s next for FogFinder? As the team wraps up the prototyping stage, they’ll be conducting calibration in a wind tunnel to prepare for field tests.  Once the testing phase is complete, the team will work to deploy them as part of a pilot program and start connecting more Chilean residents to a clean source of water.

Those wishing to learn more about the project can follow along here.

Hacking a 3D printer to play air hockey

This DIY project is puckin’ awesome!

As a kid, there was always that one game — besides Mortal Kombat, NBA Jam and Street Fighter, of course — that seemed to captivate everyone’s attention while inside an arcade. Air hockey! Originally invented by a group of Brunswick Billiards engineers back in 1969, the two-player game features a puck, two goals and a frictionless surface.


However, there was always those times when you couldn’t find anyone else around to compete against. Fortunately, Maker Jose Julio recently decided to take it upon himself to alleviate that problem by creating an air hockey-playing robot using some readily available RepRap 3D printer parts, including an Arduino Mega (ATmega2560) and RAMPS 1.4 board.

Additional key specs included a PS3 camera, NEMA17 stepper motors, motor drivers, belts, bearings and rods, along with some 3D-printed brackets, paddles and pucks, obviously. Meanwhile, the table itself was built from scratch with off-the-shelf wood and two standard 90mm PC fans to produce the necessary air pressure to lift the puck.

Julio used a three-motor design (two for the Y-axis, one for the X), and replaced the X-axis rods on the RepRap with carbon tubes, which seemed to work quite well on PLA-printed bushings and made the system lighter.


“I started studying the code of Marlin (typical RepRap firmware) software but I decided to start from scratch, first because I don’t need a G-code interpreter, and second, because the software of a 3D printer have a motion planning algorithm and this is not the way the Air Hockey robot must work,” the Maker explains. “3D printers plan movements for smooth paths through all the points. The Air Hockey Robot should move inmediately with every new command canceling the previous one, because what we need is that the robot moves as quickly as possible to the new position.”

How the robot works is fairly straightforward. fThe system employs a PS3 camera mounted above the table to monitor the puck, determine its trajectory and stop shots from an opponent. The PS3 Eye is also adjustable, which allows a user to determine the robot’s speed, acceleration and strategy algorithms. (That’s good news for sore losers, you can rig the game to guarantee the win…) This was made possible by connecting the camera to a PC running a vision system that he wrote using OpenCV libraries. This way, once the puck is detected, the location is sent to the Arduino by serial port.


Beyond that, Julio devised a trajectory prediction system and the robot’s air hockey strategy with the Arduino.

“Once we have detected the puck in two consecutive frames we can calculate the trajectory. The trajectory prediction takes into account that the puck can rebound against a side wall. All these calculations are accesible to the strategy subsystem that decides what the robot will do: defense, defense+attack, and preparing for a new attack,” he writes.

Ready to get your game on against your own Air Hockey Robot? You can head over to the Maker’s official page here, while its code, 3D designs and additional documentation can all be found on Github here.

Spark up some childhood nostalgia with this DIY claw machine

This Arduino-based claw machine is faster, fairer and more controllable than anything in the arcade.

Just think how much of your parents’ money you spent as a kid playing those candy or stuffed toy-grabbing machines. You know, the ones where you put a quarter in and maneuvered a joystick in hopes of snatching a piece of junk that cost less than the amount of coins you inserted. Well, Maker Ryan Bates and the Retrobuit Games crew has developed a fairer, faster and more controllable version of the infamous claw game. The best part? It won’t require you to dig deep into your wallets.


Instead, this arcade-inspired tabletop device measures only 20” x 26” x 19” in size and is made out of aluminum extrusion and custom laser cut acrylic/wood. At the brains of the it all lies an Arduino Mega (ATmega2560) along with some NEMA 17 stepper motors.

“Everything is custom designed, from the XYZ gantry, to the claw, to the game logic. Stepper motors move the gantry, and a servo motor controls the claw (giving the claw an analog grip, not just open/close). Some parts are sourced from the plentiful DIY 3D printer market, other parts I went for cheap alternatives like replacement shower door nylon rollers,” Bates explains.


The game itself is based on a 55-second timer, which counts down on an LCD display. Simply insert a quarter (or set it to free play), and press start. Then, no different than in the arcade of yesterday, you have just under a minute to move and position the claw, grab a prize, return it to the chute and continue to reach for more. Once the clock hits zero, the claw closes, the gantry moves back to the ‘home position’ and the claw opens releasing anything it might be carrying.

Unlike the traditional arcade machines, however, this DIY model provides players with total control of the X, Y and Z axes. Horizontal and vertical movement is handled by a joystick and two buttons (up and down), respectively. Meanwhile, a knob lets users open and close the grip.

“Personally, the game is more fun since it’s based less on one-time spatial judgment and more about motor skills and planning the best route for multiple prizes,” Bates adds.


Although he began this project three years ago, the Maker has since upgraded his proof-of-concept, which includes an improved layout of the control panel (relocated the screen to the center), an increased height to allow for a gravity fed prize chute, and a ‘return to home’ function when the game ends.

He also added LEDs that illuminate the play area and offer visual cues for the game’s start and end. For instance, the lights flash when time expired” is displayed and turn off whenever the machine goes idle.

Admittedly, as awesome as the project may be, Bates still has a few things he’d like to change. He shares, “I wants to make the frame just a little bit taller (about two inches) as the coin acceptor is a big crammed, but really I am very pleased with everything! The electronics have been beefed up to handle more power if needed. I did add a secret switch on the back that can switch the power given to the z motor from 5V to 12V. This boots the lifting power from ~6oz to ~3lbs.”

Intrigued? You can also check out the entire project in more detail here.


This Mecanum wheel robot has some serious parallel parking skills

Build an Arduino-based, Bluetooth-controlled Mecanum wheel robot that can move in all four directions, without rotating itself. 

Mecanum wheels have additional secondary rollers offset at an angle. These allow for a device or robot equipped with four of them to move in any direction, even directly left and right depending on which combination of four wheels is actuated. If you’ve never seen this sliding locomotion method before, be sure to check out the video below to see just how this robot works. Although only shown traveling in straight lines there, these type of wheels are also capable of rotating a vehicle.


According to the author of this project, a Warsaw, Poland-based Maker named Adam, “Since I can remember I always wanted to build a mecanum wheel robot. The Mecanum wheel robotic platforms available on the market were a little too expensive for me so I decided to build my robot from scratch.”

His build is simple but elegant, with two pairs of motors attached to each other via metal tubing, then fastened to a simple chassis made out of a rectangular piece of plastic. As needed for this type of locomotion, wheels are spaced so that the smaller rollers are all pointing toward the center of the bot.


The Maker used an Arduino Mega (ATmega2560) along with a Bluetooth module that enables him to wirelessly control the robot using an Android app. The electronic system is equipped with two power sources: an 11.1V 1300 mAh LiPo for supplying the DC motors and a 7.4V 1800 mAh LiPo for the ‘duino. Adam explains what is physically happening in his Instructables article, as well as how the code generally works. If you’d like more details on his code, the full program is available on GitHub.