Category

Arduino

Category

Open Source Hardware (OSH) means not only releasing devices, but all of the documentation associated with them. For some projects, this may include the actual CAD files used to produce the device. For example, the Arduino team produces not only schematics but the Eagle PCB CAD files for each of their boards. The great thing about such disclosure is that one can easily tweak the existing design for their own purposes. The downside is that nearly anyone can submit the exact same files to their own production house and have immediate clones.

Flickr changed their API, so the callouts are gone…. Sorry about that. -James

Even when some people choose to do this, as have some eBay (and now Amazon) sellers, differences crop up from “real” boards and the clones (aka “fakes”). Click on the above photo for a Flickr-based “spot the differences” game!

On the Janurary 15, 2011 edition of Adafruit’sAsk An Engineer” live video chat, I heard LadyAda mention something about “Arduino Amnesia.”  After investing the situation a little further, it turns out there are some Issues with the new Arduino UNO Smd edition.

A bug in the new bootloader can be triggered on power-cycle causing the SMD version of the board to not load the previously stored sketch.  The good news is there is already a fix for the bug.  Either return the board to your Official Distributor or use a ISP to program the new bootloader.

Issues (if I could even use that word) like this makes Open Source Hardware fun!

After working through these exercises, check out this article on how to avoid rollover or reset mills().

After learning how to flash a single LED on your Arduino, you are probably looking for a way to make cool patterns, but feel limited by the use of delay(). If you ask in the forums, you get told to look at the “Blink Without Delay” example. This example introduces the idea of replacing delay() with a state machine. If you’re confused how to use it, this tutorial is setup to take you from blinking two LEDs with delay, to using an alternate method, right down to how you can use millis().