This is basically a summary of some of the arduino projects that I've worked on.
I didn't really find a whole lot of discussion about Arduinos here, so I thought I'd create this thread in which we can share our projects, talk about interesting ideas for new projects, and hopefully inspire those who have never used an Arduino before. I'm very passionate about these kind of projects and embedded systems, which is why I'm currently studying electrical engineering. My inspiration for choosing to study electrical engineering was hardware hacking. When mod chips came out for the original xbox, it just completely blew my mind that someone could take a commercial electronic product, and modify it's funtionality to make it do whatever they want.
Let's start off with some Q&A.
Q: What is an "Arduino"?
A: Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments. If you're interested, you can check out more information on the arduino at its homepage.
Q: What's so cool about an Arduino and why should I care?
A: If you enjoy programming, this takes your programming to a whole new level. You can program what are called microcontrollers (which is the brains behind the Arduino board). You can basically implement your programs to control just about anything outside of your computer.
Q: Why's the Arduino so special?
A: The Arduino (which is the actual board), contains tons of useful features that you don't have to worry about. Such things include all the proper parts for running a microcontroller, voltage regulation, LED, pushbutton reset, and tons of other things. Another really neat feature of the Arduino is that you can buy what are known as "shields," which you can think of as legos. Shields are simply various modular circuits/boards that are already made for you that can just add to your Arduino and not worry about creating them yourself. In a nut-shell, you just stack these various boards and your have so many new possibilities open for your projects. Such things include touchscreen, ethernet (so you can have your Arduino communicate with the internet), motor driver, protoboard, wireless / bluetooth, and the list goes on forever. Here's some examples of these shields
You can find an extensive list of shields here.
Q: What programming language does the Arduino environment use?
A: The Arduino is based off a variant of C, and is incredibly easy to learn. The official arduino website also includes a free compiler for you to use.
Q: How much is the Arduino and where can I buy one?
A: The USB Arduino is only $29.95 USD and the most reliable place to purchase one is from sparkfun
Q: What are some resources for the Arduino?
A: The Arduino community is HUGE, here is a list of some of the most helpful sites that deal with the Arduino
Anyways, now that we have the preliminaries out of the way, I'll share with you guys some projects that I've done before.
Knock Controlled Door Unlock-er
Apparently someone has already done the exact same thing, but I thought of the idea independently and wrote the code independently. I found that I'd constantly forget my keys in my room, and my roommate would often be gone. This is why I thought of this project. Basically the Arduino uses a piezo buzzer to detect vibrations (or knocks on the door rather), and then processes them to see if they match the password knock sequence. If the correct knock is confirmed, the Arduino uses a servo/motor to unlock the door. Right now I'm just waiting to order a motor/servo, but I have the rest of the project done.
Touchscreen USB Mouse
I pretty much a tutorial from sparkfun for this, although I had to make a couple of modifications to the schematic and code to make it work. Basically you use a PSP touchscreen and make that into a PC USB touchscreen mouse, pretty cool.
Control 2 LED's in My Room Via the Internet
I made a thread for this a while back, and it sparked interested in others to get into Arduino programming. Basically I had an ethernet shield for my Arduino, which was directly interfaced into my router with a CAT-5 cable (no computer needed :D ). The Arduino could control 4 LED lights, and I had my webcam streaming the LED's. It was interesting seeing the LED's change as I was laying in bed, it felt as though someone else was in my room.
You can find the thread [ame="http://forum.zomgstuff.net/showthread.php?t=19965"]here[/ame].
Use your Direct-TV remote to play melodies
I used an inexpensive infrared receiver to detect the various signals from my direct-TV remote, and used them to play random melodies from a speaker. A WIP project stemming for this that I never got around to finishing was to have the Arduino use the IR receiver to figure out the channel that I was watching (by keeping track of me scrolling through channels with a list of channels fetched from the direct-TV schedule on their official website), and update twitter with the show.
I've also worked on many different random projects before, but none really that noteworthy. Have you guys had any experience with Arduinos? If so, post your projects, and those who are interested, feel free to discuss.