I’ve been making the most of a must-have set of tools for anyone that is engineering their own solutions: The Arduino, Netduino, and a 3D printer. This journey started a few months ago when an unexpected hardware failure occurred at a time when I was away from home, after the hours, and too late at night to purchase replacement hardware. Even worse, it was the night before I needed to have a device up and running for a client presentation. Someone handed me an Arduino telling me I could resolve the problem with it. Within a few hours I had an understanding of how the Arduino worked and how to use it to make a solution.

The Arduino is a single board computer based on the 32-bit Amtel ARM processor. The development environment for it is free (C++ based) It has the support of a large community of hardware and software developers ranging from professionals to hobbiest. From the software side there’s a number of existing solution components that are included in the development software or are available for download. From the hardware side you’ll find a wide range of hardware additions and accessories that can be added to a solution by plugging them into the Arduino. Netduino is the same concept as Arduino but based on the .Net Micro Framework with C# as the primary development language and works with many of the same accessories as the Arduino.

A background in electronics isn’t needed to get started with the Arduino. In browsing through my local electronics store some of the immediate accessories I see include motor controllers, network adapters, a cellular modem, relays for controlling high voltage appliances, and more. In many cases making use of these accessories involves plugging them in and downloading their code libraries. Having some knowledge in electronics does bring the advantage of being able to interact with devices for which immediate solutions might not be available.

After creating a few projects with these devices my way of viewing problems has changed. A simple real world problem I encountered involves a family member who is usually on a different level of the house than the one the door bell is on. She would, consequently, often not hear when someone was at the door. Previously my solution to this would have begun and ended with adding a second door bell to the other level of the house. I went a step further. Knowing that this family member is attentive to incoming messages on her phone, I connected a Netduino Plus to the doorbell so that when some one rings the bell, an SMS is also sent to her phone. Less than a dollar in additional parts was needed to do this.

In developing another solution based on the Netduino and Arduino, I needed to add some electro-mechanical parts such as servos and stepping motors that would be driving gears and belts. Most of the parts that were needed were ordered. Some of the other gears and pulleys were out of stock; the expected availability was about a week out. On the same day that I was making this order our 3D printer arrived. Problem solved! Rather than wait for the parts I needed to come back in stock, I could print them out on the 3D printer!

In talking to friends and family about 3D printing I’ve found this is a topic that sometimes demands an explanation.

3D printers produce solid objects from designs. There are several techniques that a 3D printer can use for doing this. The technique used by our printer is called “extrusion depositing.” Layer by layer the printer draws slices of a 3D object on top of each other, stacking them until the object is complete. Contrary to expectation, it is possible to print out objects with moving parts. It’s possible to go directly from designing an object to directly manufacturing it.

Since I knew the specifications for the parts that I needed I was able to design the parts in the 3D modeling software and print them. Rather than wait a week for the parts to come back in stock and then a few more days for shipping and handling, the time involved was merely what it took to draw out the parts and then go off to do something else while the parts printed. Much like the Arduino, there is also a large community of people that are producing solutions available for download.Thingiverse.com and other sites allow members of the community to make their designs available to others to download and print for free. These designs include solutions to problems, toys, art, phone cases, and more.

My first experiences with the 3D printer and Arduino occurred because the other solution that I normally would have gone with — ordering the parts I needed — was initially not available to me. After having a positive experience with the 3D printer, the way in which I’ll try to find solutions for future needs may change from immediately trying to purchase a solution to looking to see if I can download or create a 3D design. As 3D printers become more affordable in the future I can see this having an impact on how people go about finding the things that they need.