Slashdot Mirror


Book Review: Arduino: a Quick-Start Guide

Muad writes "Maik Schmidt is our guide in the Pragmatic Bookshelf's venture into the world of electronics. This is a compact work, like all others in the series, it goes straight to applicable examples and makes you get your hands dirty with real work. The Arduino platform has been described in many ways, but the best I have heard so far insightfully labels it 'The 555 of the future,' referring to the ubiquitous timer chip so many simple electronic projects make use of. If you haven't been hiding under a rock for the past few years, you have doubtlessly seen the plethora of material on the subject that's out there: even O'Reilly, which usually does not ship multiple titles on a single subject, has a variety of them. Most of these works are rather similar, the ones I prefer are Massimo Banzi's Getting Started with Arduino (O'Reilly, 2008), by one of the original developers of the platform, and the strongly related Getting started with Processing by Casey Reas and Ben Fry. These are brief books in the 100-page range, not exhaustive works, but covering the core philosophy and basic operation of the tools is sometimes the best way to jump into a new subject. Read below the rest of Federico's review Arduino: A Quick-Start Guide author Maik Schmidt pages Pragmatic Bookshelf publisher 263 rating Federico Lucifredi reviewer 9781934356661 ISBN With this Quick-Start Guide you'll be creating your first gadgets within a few minutes summary 8/10 There is a lot of material on the subject, even the current issue of Make magazine has a very good roundup (and not for the first time, if I may add). So, how does Maik's work stand out in the fray? Right after a brief introduction to ease you into the Arduino environment, the book turns to interesting projects, more sophisticated than the usual fare (read: not the usual LED-blinking using pulse-width modulation that every tutorial out there walks you through). Examples of this include connecting with a Wii Nunchuk, motion sensing, networking, infrared remote control interfaces, and more. These projects are the high-note of the book, and span almost two-thirds of its length — and are significantly better than most other project material currently in print.

This is a hands-on book, theory is kept to a minimum, as you don't really need previous experience to tackle an Arduino: the platform was specifically designed to cater to artists and designers, it is meant to be approachable by users who are not EE wizards. That said, if what you are after is learning the underpinnings of low-level electronics or hardcore embedded systems programming, this book is not for you: pick up a copy of Horowitz and Hill's The Art of Electronics (possibly including the student manual), and check back with us in a year or so for the digital followup recommendation. But if you have less time on your hands, and you just want to network-enable a coffeepot or build some interactive art display, the introduction to Arduino Maik delivers is quite sufficient for your aims, and it spans material other authors have been remiss to include, like developing libraries and (Appendix C) use of serial line protocols.

Zooming in on the details, perhaps the comment can be made that it would be good if there was a single kit available including all components used in the text: perhaps Makershed or Adafruit Industries will supplement their existing kits with one comprising the full range of the author's selection. On the plus side, I must highlight the extensive illustrations, which visually represent the breadboard linkage between the Arduino and the sensor or actuator being used with extreme clarity, and are much more effective in teaching neophytes than more traditional circuit designs. Where these are not actual pictures, they were generated using the alpha release of Fritzing, a very interesting piece of software (see fritzing.org) aiming at facilitating circuit design for those of us without a background in electronics.

The landscape of Arduino publications is shifting faster than many other subjects in print, and doubtlessly Maik's status as "king of the Hill" is but temporary — however, among those books on the subject I have personally surveyed, I am pleased to say that he currently holds the championship cup.

Federico Lucifredi is the maintainer of man (1) and a Product Manager for the SUSE Linux Enterprise and openSUSE distributions.

You can purchase Arduino: A Quick-Start Guide from amazon.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

80 comments

  1. TI LaunchPad too by 0100010001010011 · · Score: 2, Informative

    If someone is thinking about getting into this, I would suggest you weigh the options between this and the TI LaunchPad

    The LaunchPad doesn't have any 'shields', but if you're just looking for basic IO, it's MUCH cheaper with a full dev kit for under $5.

    You also program it in real C, not the pseudo-C that is the Arduino language.
    ---------
    If you have an Arduino and are lucky enough to have a copy of RealTime Workshop for Matlab laying around. (Most universities should have this installed on their computers. I know the ME department where I go has FULL Matlab on all computers).

    There is a Simulink Arduino target: http://www.mathworks.com/academia/arduino-software/arduino-simulink.html Meaning no coding needed on your behalf, just setup your Simulink model and go. Great for controls engineers that may know how to sim something in Simulink, but not how to convert that to Arduino.

    1. Re:TI LaunchPad too by TheRealMindChild · · Score: 2

      I've been thinking about getting a TI LaunchPad, but I have to admit, I am a bit reluctant, as the samples I have found seem to assume you know a little bit of something. I can write code with the best of them, but how the hardware works, how to read schematics, how to add to these boards escapes me. Is there any references out there for people like me?

      --

      "When life gives you lemons, don't make lemonade. Make life take the lemons back!" -- Cave Johnson
    2. Re:TI LaunchPad too by iluvcapra · · Score: 4, Informative

      According to the page you linked to, the development environment is closed source and requires a license. It does say the hardware platform is open and documented, but the toolchain, which is what people end up doing their work, is not -- they don't even seem to target Linux, let alone Mac OS X, which Arduino does. Weirdly, their "Code Composer Studio" is built on Eclipse but requires an license and activation file, and a "30-day trial" is mentioned. Here be dragons...

      --
      Don't blame me, I voted for Baltar.
    3. Re:TI LaunchPad too by Steauengeglase · · Score: 2

      Don't forget the AVR Butterfly. About $15 more, but with a few more bells and whistles.

    4. Re:TI LaunchPad too by Anonymous Coward · · Score: 1

      One negative about the TI: The "easy to set up and use" software from TI only runs on windows. It's possible to set up the toolchain for MacOSX or Linux, but it's a pain, and then you're into real geekwad territory.

      The Al Williams of the world *really* don't get just how astoundingly easy it is to use an Arduino: plug it into your computer, start the Arduino IDE (or Processing) and have fun. Really, truly, effectively painless.

    5. Re:TI LaunchPad too by vlm · · Score: 3, Insightful

      how the hardware works

      If you are thinking of TTL schematics, don't worry (too much). You'll learn soon enough what tristate I/O ports are, open collector, phrases like that.

      Worry about understanding internal devices and how to use them. Pick up any 16 bit PIC reference manual and see if you can figure out the code required to use the onboard timer device, or maybe read and write from the I2C port. Doesn't matter if you're planning to use the PIC, my point is I personally know that manual is pretty decent and pretty typical of what you're going to get, and pretty typical of difficulty.

      Coding for MCs isn't like high level work on PCs, its more like coding multiple simple little device drivers and gluing them together. And the only debugger you're likely to have is maybe you wired an LED to blink when certain code executes.

      If you like those "black box" games where you shoot a pool ball into a black box and it is emitted out another hole of the box, and you do that many times and then deduce the location of the bumpers inside, then you'll love the mental process of working on microcontrollers.

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    6. Re:TI LaunchPad too by Miffe · · Score: 4, Informative

      There is a port of gcc available at http://mspgcc4.sourceforge.net/

      I recently used this to build a small led cube, worked like a charm.

    7. Re:TI LaunchPad too by alvieboy · · Score: 2

      Arduino is actually programmed in C++, with a bit of help from IDE to generate function prototypes.

      Just to let you know.

    8. Re:TI LaunchPad too by boristdog · · Score: 1

      I bought a dozen of the LaunchPad dev kits and gave them out to other engineers at work in exchange for various engineering favors. Bribery always works like a charm, and I never told them they cost me under $5 each.

    9. Re:TI LaunchPad too by Bassman59 · · Score: 1

      I bought a dozen of the LaunchPad dev kits and gave them out to other engineers at work in exchange for various engineering favors. Bribery always works like a charm, and I never told them they cost me under $5 each.

      You can be sure that the other engineers know exactly how much you paid for the kits.

    10. Re:TI LaunchPad too by Anonymous Coward · · Score: 0

      Hope it won't ruin your day to find out the Arduino IDE has a window you can open up to get text printouts from the code running on the Arduino...

      Really, it's not 1985 any more :-)

    11. Re:TI LaunchPad too by waldozer · · Score: 1

      I would not suggest the launch pad over Arduino for a beginner. I have both. The Arduino is much easier to start with.

    12. Re:TI LaunchPad too by icebraining · · Score: 1

      The Arduino language is C with a bunch of libraries. In fact, it uses avr-gcc, and you can program it outside their IDE.

    13. Re:TI LaunchPad too by Anonymous Coward · · Score: 0

      I got three of them, but they won't let me log in to download the software from my linux box using firefox.

    14. Re:TI LaunchPad too by vlm · · Score: 1

      Hope it won't ruin your day to find out the Arduino IDE has a window you can open up to get text printouts from the code running on the Arduino...

      Really, it's not 1985 any more :-)

      Nice, instead of flashing an LED right before my interrupt routine returns, I could print it to the screen. Doesn't actually change development very much, but could occasionally be convenient...

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    15. Re:TI LaunchPad too by Anonymous Coward · · Score: 0

      The arduino compiler is just gcc. It actually is full fledged C++ with template support. The nice thing the Arduino people have done is set it up so that you do not have to know this to build useful applications. However objects and templates are there for you to use of you want (asm as well of course).

    16. Re:TI LaunchPad too by Anonymous Coward · · Score: 0

      You also program it in real C, not the pseudo-C that is the Arduino language.

      i don't really like arduino, but you the "pseudo-C" you're talking about is actually C++ wrapped with weird libraries and some preprocessing.
      +1 on TI launchpad though

    17. Re:TI LaunchPad too by serviscope_minor · · Score: 1

      You also program it in real C, not the pseudo-C that is the Arduino language.

      Yeah, that pseudo-C language is *terrible*. It has all sotrs of weird things. Like you can embed functions in structs. Seems pointless to me. It has all sorts of weird other things, like strange extra preprocessor macros that *REAL* *C* doesn't have. I think the oddest one is the macro called __cplusplus. I really have no idea what that is about.

      --
      SJW n. One who posts facts.
    18. Re:TI LaunchPad too by Anonymous Coward · · Score: 0

      I think you'll receive pretty interesting responses, this article will be very beneficial
        to many people in more than one ways. Thanks for posting!
        itower

  2. Huh? by geminidomino · · Score: 3, Insightful

    even O'Reilly, which usually does not ship multiple titles on a single subject, has a variety of them

    Since when? (Learning X, Programming X, Advanced X programming, X Cookbook, X in a nutshell...)

    1. Re:Huh? by Anonymous Coward · · Score: 0

      Don't forget the pocket sized versions of those!

      I guess I must have been living under a rock, cuz I haven't seen the plethora of stuff out there on Arduino, AKA today's 555.

    2. Re:Huh? by human-cyborg · · Score: 1

      And X for System Administrators.

  3. oh look another arduino article by Anonymous Coward · · Score: 0, Troll

    Is cmdrtaco having an affair with the bint from adafruit or something?

    Seriously, I want to know. Arduino is the Microsoft Bob of EE.

    1. Re:oh look another arduino article by Bassman59 · · Score: 1

      Is cmdrtaco having an affair with the bint from adafruit or something?

      Seriously, I want to know. Arduino is the Microsoft Bob of EE.

      EXACTLY.

    2. Re:oh look another arduino article by Anonymous Coward · · Score: 0

      Apparently Packt stopped sending checks so Arduino is picking up and Taco is sucking their dicks instead.

  4. More Arduino Info... by jarich · · Score: 1
    If you're not familiar w/the Arduinos, you'll have to return your geek license. ;)

    Arduinos can be used so many different ways... here're a few things you can do with them:

    http://www.arduino.cc/playground/Projects/ArduinoUsers

    http://blog.makezine.com/archive/category/arduino

    http://hackaday.com/category/arduino-hacks/

    1. Re:More Arduino Info... by Anonymous Coward · · Score: 0

      There's one more variant: Netduino Plus that will let you run .Net embedded code, connect to ethernet and use SD Micro storage.

    2. Re:More Arduino Info... by Bassman59 · · Score: 1

      If you're not familiar w/the Arduinos, you'll have to return your geek license. ;)

      And if you're an engineer, you are familiar with the Arduino, and you've gone back to an SiLabs or other proper dev kit, or more likely, to the product you're designing ...

    3. Re:More Arduino Info... by William-Ely · · Score: 1

      Exactly. I write software for PIC and AVR and I have a couple of dev kits for each but I end up using the prototype of the product once I am past the proof of concept phase. The point of Arduino is that a hobbyist can get something up and running quick but that's about it. It doesn't work out well when you're looking for a job in the MCU field and your experience is limited to slapping something together on Arduino.

      --
      Mod me down with all of your hatred, and your journey towards the dark side will be complete!
  5. 555 of the future by vlm · · Score: 0

    The Arduino platform has been described in many ways, but the best I have heard so far insightfully labels it 'The 555 of the future,' referring to the ubiquitous timer chip so many simple electronic projects make use of.

    I always thought of the pic 10f222 as the 555 of the future, since it has the classic 8 pin pin form factor and costs "about the same".

    And the AC above is wrong, the Arduino is the Clippy of CS not the Microsoft Bob of EE.

    One piece of advice for people getting "into" microcontrollers, is its a narrow field and rapidly shrinking. Rather than trying to do "big PC" stuff with a herd of 8 bit pics in raw assembly, you should be using embedded industrial single board computer PCs. PC/104, kinda like the soekris boards but tougher. Don't spend enough cash on "microcontroller stuff" to purchase a PC/104 SBC.

    By narrow, I mean if you want to turn on a LED when a switch closes, use a freaking dropping resistor and some wire, not a microcontroller. Or a SSR or old fashioned physical relay, or whatever. If you want to do anything "complicated" like more than a line or two of Perl, or anything video or DSPish, use an embedded PC running linux or an embedded RTOS. If you're trying to optimize the heck out of power consumption or price, you might be stuck microcontrolling but no one whom knows anything likes to do that for fun, certainly not as a one-off or prototype. The gap in between where a microcontroller is ideal is technologically small (even if economically big). Something like a dishwasher controller or a clothes dryer controller is just about right.

    --
    "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    1. Re:555 of the future by mikael_j · · Score: 1

      By narrow, I mean if you want to turn on a LED when a switch closes, use a freaking dropping resistor and some wire, not a microcontroller. Or a SSR or old fashioned physical relay, or whatever. If you want to do anything "complicated" like more than a line or two of Perl, or anything video or DSPish, use an embedded PC running linux or an embedded RTOS. If you're trying to optimize the heck out of power consumption or price, you might be stuck microcontrolling but no one whom knows anything likes to do that for fun, certainly not as a one-off or prototype. The gap in between where a microcontroller is ideal is technologically small (even if economically big). Something like a dishwasher controller or a clothes dryer controller is just about right.

      The thing is that for a lot of hobbyists it tends to make sense to use a microcontroller (or something "between" a microcontroller and a regular computer) to control those LEDs rather than building custom stuff that needs to be replaced every time they want to make a change.

      Personally I cut my teeth on analog electronics as a kid, took a special "program" (that's what it's called here in Sweden) in HS that focused on digital electronics which meant I got to spend most of those years playing with transistors, registers, ALUs and other stuff. I also got my first taste of using a single chip computer (the 68HC11 to be exact) and honestly, for a whole lot of stuff I'd rather have some somewhat generic hardware for interfacing with things like switches, LEDs and other digital/analog IO while the actual logic takes place in a microcontroller. Maybe I'm lazy, maybe it's not "economic" to "waste" a few extra bucks on a microcontroller when I could "just" spend a weekend building in hardware what takes me a couple of hours to do in code or whatever other thing people might think of me, I like not having to dismantle a hobby project of mine and then spending days rebuilding it because of minor logic bugs or because I wanted to make some little feature change.

      --
      Greylisting is to SMTP as NAT is to IPv4
    2. Re:555 of the future by Anonymous Coward · · Score: 1

      Problem with the PC/104 type boards is that they'll have a limited amount of I/O that can be accessed by Linux or your RTOS, if you want more you end up buying more I/O cards to stack up and hoping you don't get driver issues, or you end up designing an I/O card using the trusty ISA bus ( yes it still exists in the PC/104 ,thank god ) to get the extra A/D converters and digital required without building yourself a monstrous cube of wasted processing power.

      bread boarded PIC or whatever micro-controller can be converted to a prototype and then to a small production run within weeks.

      Trick is to guess what size PIC etc you are likely to need before starting any wiring, cause you'll ALWAYS need more I/O.
      You'll also have a much better idea of production costs as the development starts with the option of going to FPGA or PC/104 or down to lower level should you need to.

    3. Re:555 of the future by Anonymous Coward · · Score: 0

      My son (a high school senior at the time) built a "Night Rider" LED scanner for his car with an Arduino kit he received while touring UMass' EE program. Hardest part of the project was buying the current limiting resistors at Radio Shack...

      Would have been a piece of cake to add subroutines to handle "waking up" / "going to sleep" (i.e. slowly converge / diffuse the beam, using different duty cycles to control the intensity), randomly stopping to "track" a target, or even allowing manual input to drive the sweep angle via a pot. Much easier to update a line of code to change the behaviour than ripping the hardware apart to reconfigure.

    4. Re:555 of the future by Bassman59 · · Score: 1

      One piece of advice for people getting "into" microcontrollers, is its a narrow field and rapidly shrinking. Rather than trying to do "big PC" stuff with a herd of 8 bit pics in raw assembly, you should be using embedded industrial single board computer PCs. PC/104, kinda like the soekris boards but tougher.

      That's not really good advice. Microcontrollers have their place -- in embedded systems, where you need just the right amount of processing power to do that which needs to be done, and no more. Many products don't need, and their budgets certainly can't support, a full-up 32- or 64-bit microprocessor system with a multitasking operating system and multiple cores and SDRAM and disk subsystem and the usual things associated with a PC. In those cases, an 8-bit micro with 64 kB flash, a few k of on-chip RAM, a handful of I/O ports, perhaps ADCs and DACs, and you're good to go.

      And, yes, the number of 8-bit microcontrollers sold per year overwhelmingly dwarfs the sales of PC-class microprocessors.

    5. Re:555 of the future by vlm · · Score: 1

      "big PC" stuff is like trying to interface to a USB webcam, complicated floating point calculations, exotic DSP...

      Theoretically you can do that in "an 8-bit micro with 64 kB flash, a few k of on-chip RAM, a handful of I/O ports". After all that pretty well describes my home computer in the 80s and I / we did that kind of stuff. Well, maybe not well, and it was a heck of an expensive headache.

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    6. Re:555 of the future by vlm · · Score: 1

      Problem with the PC/104 type boards is that they'll have a limited amount of I/O that can be accessed by Linux or your RTOS, if you want more you end up buying more I/O cards to stack up and hoping you don't get driver issues, or you end up designing an I/O card using the trusty ISA bus.

      Google for I2C port expander and phrases like that. Assuming you've got a user accessible I2C on your PC/104 (quite likely on a modern one). You'll pay about 10 cents per I/O bit rather than $10 per I/O bit on a "PC/104 expansion board". Or for that matter go (nearly) pure I2C if you can. Its kinda like USB in that everything you can imagine, (from an EE perspective) is available in I2C. The key, if I haven't mentioned it enough, is I2C all the way.

      There are of course other solutions.

      My favorite design at this time is FPGA with a soft-CPU core inside. You need exactly five I2C and two RS-232? OK fine synthesize them in, right at the address and package pins you want. Or you want two USB instead? OK put those dudes in. You want a hardware multiplier? OK synthesize that into the FPGA, map it into memory, and write your software to use it. I like the xylinx -blaze family of cores. Like a virtual lego set. Big fun. I wish you could buy a spartan 3 in a DIP package. Boot time and power consumption are not exactly ideal.

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    7. Re:555 of the future by drinkypoo · · Score: 1

      I think "the future" has more low-power electronics in it, so people really are optimizing for super low power situations. For example, you can run an arduino off a cheap solar light. Wake it up and have it chirp at you via XBee once in a while... for forty bucks per node or less. So there's loads of applications where it still makes sense to use a microcontroller. It just doesn't make sense to do a lot of thinking on one. There's also a shit-ton of applications where a microcontroller can help you reduce weight by increasing complexity, for example replacing a sender with a smart sensor, powering it off a source already near it, and replacing a big fat wire with a teensy tiny one that only has to carry a digital signal. The 10F222 seems ideal for this specific purpose, especially if you can implement a daisy-chained or bus-type serial network at the same time, due to its small size and low cost.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  6. Review Info is messed up by Anonymous Coward · · Score: 0

    author Maik Schmidt
    pages Pragmatic Bookshelf
    publisher 263
    rating Federico Lucifredi
    reviewer 9781934356661
    ISBN With this Quick-Start Guide you'll be creating your first gadgets within a few minutes
    summary 8/10

  7. Love it by FencingLion · · Score: 1

    Got mine a few weeks ago. Have had a lot of fun just tinkering with the various inputs and outputs, but I think my first real project will be to make a music box with lights (and possibly motors) for my son. Should be fun!

    --
    Just keep swimming.
  8. Missing the point by folderol · · Score: 1

    I am amazed that even here on Slashdot almost everyone seems to miss the point of the Arduino. It is very much the 555 of the... right now! It is not exactly the best thing for many jobs and is under-utilised for a lot (exactly like the 555) but it gets instant repeatable results at a tiny cost. These boards are proliferating through the retro-fit industry where they are replacing obsolete logic and ancient primitive PLCs. Where I work we've started to use them. We do the development on the full board, then pop the chip out, add one resonator and a couple of resistors and your on your way. Replacement chips (with bootloader) are 5ukp.

  9. Now we need the next step up by Animats · · Score: 2

    The Arduno is cute as a low-level microcontroller. Sometimes you need the next step up - something bigger than an Arduno, but without the bloat of Windows CE or Linux. Big enough to have a protected-mode OS with a networking stack and an Ethernet port, but small enough that you don't need system administration.

    Gumstix has some entries in that space, but they don't cater to the hobbyist market.

    1. Re:Now we need the next step up by Anonymous Coward · · Score: 0

      The AVR32 and PIC32 chips probably would be enough to fill this space. There is also BeagleBoard/OMAP that would get you a lot of power for way more. A AVR32 that would be more powerful than a mid-80s computer go for $10-$15 and you can do a whole lot with it

    2. Re:Now we need the next step up by zero0ne · · Score: 1

      try phidgets.

    3. Re:Now we need the next step up by cr0nj0b · · Score: 1

      and sometime you just need one of these (when they are back in stock): http://www.mini-box.com/pico-SAM9G45-X

  10. Re:555 of the future... yes, but... by hamster_nz · · Score: 1

    I think you miss the point - isn't learning while having fun but doing something that is ultimately pointless what a good hobby should be?

    I like Arduino. It is a fun hoppy - My example: I wanted to build a "big switch" interface for my special needs son.

    Option one - a 3.5mm socket on a USB mouse

    Option two - An Arduino with a bit bashing USB stack, emulating a USB keyboard.

    Guess which works best? Option one - The mouse is always connected to the PC so I just plug the switch into the mouse and it works.

    Guess which I learnt the most doing, and I had the most fun with, and maybe even feel proud of?

  11. A little redundant... by MacGyver2210 · · Score: 1

    Yes, the Arduino is ubiquitous.

    It is also a microcontroller with the training wheels invariably built-in for everything.

    It is, itself, already a Quick-Start Guide to real microcontrollers.

    --
    If the only way you can accept an assertion is by faith, then you are conceding that it can't be taken on its own merits
  12. Kindle Edition by Anonymous Coward · · Score: 0

    Would be nice if this book had a Kindle edition, is there any information regarding potential release in the near future?

  13. Re:Really Missing the point by Anonymous Coward · · Score: 0

    It is not some wiz bang new invention. It is an ATmel AVR on a protoboard with a easy to use front end (IDE). Very useful for sure. But it is not going to eliminate the millions of low end Micro-controllers sold every year, or the LM555.

  14. Aurdino is for "Artists" and "newcomers" by viking80 · · Score: 1

    The free tools that come with TI launchpad and most other tools are superior to Arduino in every way. If you can write basic C code it is is a no-brainer. From wikipedias entry on Aurdino "It is designed to introduce programming to artists and other newcomers unfamiliar with software development". If you are not an "artist" or a "newcomer" to programming, just drop this.

    Even for a beginner, I would not steer them down the Aurdino path. It is kind of a short dead end. Better try out the TI launchpad with their ID. It will set you back $3.40, and give you a large library, and get you going with C or C++.

    --
    don't cut it off www.mgmbill.org
    1. Re:Aurdino is for "Artists" and "newcomers" by drinkypoo · · Score: 2

      People seem to use Arduino every day to actually do stuff. I also keep seeing AVR-based products hit the market, some in kit form and some only available completed, and I suspect many of them began life as an Arduino project.

      I still want to try the launchpad, but AVR is pretty ubiquitous all of a sudden.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    2. Re:Aurdino is for "Artists" and "newcomers" by Anonymous Coward · · Score: 0

      Most AVR products on the market probably started out on a real AVR development board like the STK500, not a toy like the Arduino.

    3. Re:Aurdino is for "Artists" and "newcomers" by tibman · · Score: 1

      I think you've got it backwards. Arduino is great for programmers who don't know anything about electronics.

      --
      http://soylentnews.org/~tibman
    4. Re:Aurdino is for "Artists" and "newcomers" by drinkypoo · · Score: 1

      Most AVR products on the market probably started out on a real AVR development board like the STK500, not a toy like the Arduino.

      I own an STK500 and an Arduino Nano and I'm hard-pressed to figure out what makes the STK500 a more "real" development board than an Arduino. You can put the same code into the chip whether you use a dedicated programmer or the in-system programming facility.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  15. Also for people who do not use Windows by ctid · · Score: 2

    The TI stuff is a bit of a mess for Mac and Linux.

    --
    Reality is defined by the maddest person in the room
  16. 555 cigarettes by Anonymous Coward · · Score: 0

    Am I the only one for whom the first association to 555 was the brand of cigarettes, not the timing chip?

  17. It's Great by Anonymous Coward · · Score: 0

    The world needs more toilets that tweet when flushed...go Arduino!

  18. Re:555 of the future... yes, but... by vlm · · Score: 1

    I think you miss the point - isn't learning while having fun but doing something that is ultimately pointless what a good hobby should be?

    I like Arduino. It is a fun hoppy - My example: I wanted to build a "big switch" interface for my special needs son.

    Option one - a 3.5mm socket on a USB mouse

    Option two - An Arduino with a bit bashing USB stack, emulating a USB keyboard.

    Guess which works best? Option one - The mouse is always connected to the PC so I just plug the switch into the mouse and it works.

    Guess which I learnt the most doing, and I had the most fun with, and maybe even feel proud of?

    Ah exactly and perfectly true IF your hobby is learning to program an arduino. And there is absolutely nothing wrong with programming a MC as a hobby, I enjoyed my 68hc11 in ye olden days and modern PICs today.

    But - If your hobby is the typical make magazine article of automating your fishtank feeder or monitoring your hamster cage wheel complete with a twitter interface, you're better off maximizing your efficiency, and doing it in about five lines of perl or ruby, not necessarily taking the long way around.

    --
    "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
  19. Big difference between an Arduino and a 555 by jimmyswimmy · · Score: 1

    In contrast to what the summary suggests, there's a big difference between an Arduino and a 555. The 555 was a barebones timer chip which could be misapplied to accomplish a lot, but required a decent understanding of basic electronics to use in any way other than its basic concept allowed (a timer/multivibrator). The Arduino is a toy, mostly for non-engineers, who are interested in learning more. I don't think there is a real analogue (oh, I'm so punny) to the 555 in the microcontroller world except, perhaps, the $5 TI Launchpad as so many other posters have suggested. The Launchpad is a cheap and nearly barebones micro which can be used to do a wide range of simple tasks and can be misapplied to very complicated things given a sufficiently capable user.

    I think this is the real root of why most EEs "hate" the Arduino - it's overkill for most of what it is used for. "Proper" engineering implies designing the right solution to a problem, whereas Arduino "engineering" applies an Arduino to a problem. In both cases a solution is achieved, but the Arduino solution is so often needlessly complicated: a microcontroller is not needed to blink an LED when a 555 will suffice.

    --

    Just my $0.55 (US inflation, 1774-2008, for $0.02)
    1. Re:Big difference between an Arduino and a 555 by profplump · · Score: 1

      One of the reasons the Arduino is so popular is because it allows programmers -- people who don't know the first thing about electronics or micro-controllers -- to build hardware devices. As you note, this is often inefficient from a production standpoint because $0.03 worth of transistors will do the same job. But the Arduino is not meant for production runs, and that $0.03 worth of transistors has a prerequisite of $20k in hardware engineering -- if you don't already have that electronics knowledge it may well be moreefficient to use the $20 Arduino to toggle your LEDs.

    2. Re:Big difference between an Arduino and a 555 by Maestro485 · · Score: 1

      Although what you say is true, Arduino being a "toy" isn't exactly a bad thing.

      I liken it to hardcore Linux users' disdain for Ubuntu. (I'm obviously making a sweeping generalization here, one that might not even be accurate, but I feel it's an apt comparison.)

      It may not be the most efficient or the most technical or the most powerful, but it opens up a lot of new avenues for those that decide to try it out.

      I ordered an Arduino starter kit last summer and a couple of books just for the hell of it and had a blast. Sure, I might not know much about electronics, but I didn't need to. If I want to learn more about a particular subject I'm free to explore more deeply.

      I think that's the real power of Arduino right there.

  20. Arduino vs. Launchpad vs. 555 vs. Transistors by billstewart · · Score: 1

    Great timing on that comment - I just spent last month playing with 555s for the 555 Design Contest that accidentally occurred. If you want to blink LEDs, you don't need a 555 - you can use two transistors instead. (And in fact my contest project starts with a 2-transistor oscillator driving two LEDs, and feeds the voltages from it to a 555-based PWM circuit that flashes more LEDs. I've also got an Arduino in it, which is way overkill when I'm just using it for the 5v power supply (:-), but in fact it was convenient to also use it as a voltmeter to test what the transistors and 555 were doing.)

    The Launchpad isn't dumber than the Arduino, just cheaper - the MSP430 is a 16-bit chip, but has less RAM and Flash than the 8-bit AVR Atmega328 that Arduino uses. The big difference is in the development environments - the Arduino comes with a higher-level environment, so you don't have to start down at the Raw Bits unless you want to (unlike the MSP430, where you're pretty much forced to), and comes with enough hand-holding that an artist can start doing real work right away. Also, the Launchpad makes you solder the headers and (surface-mount!) timer crystal onto the board yourself, instead of just plugging in shields or wires, but it is better integrated with USB because it doesn't have the leftover serial-FTDI design that Arduino started with.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  21. Arduino is a better place to start - it's complete by billstewart · · Score: 1

    Arduino is a better place to start - the package really does give you everything you need to get up and running, between development environment, documentation, hardware, and friendly handholding-for-artists. (You'll still find yourself running out to Fry's or Radio Shack to buy more LEDs and resistors - I'd recommend buying a couple packages of "20 assorted LEDs", "50 assorted resistors", etc. to save yourself some trouble.)

    You really don't need to know much more for Launchpad than for Arduino, but the Launchpad docs generally assume you already know what you're doing, and the Arduino docs generally assume you don't know what you're doing and want to learn, so there's a lot easier learning curve. Also, Launchpad's a bit closer to the metal than Arduino, where you can start at a slightly higher language level to write your code, if you want to, and Launchpad requires you to solder the headers onto the board yourself, so it assumes you're good at soldering. (And if you want to use the timing crystal, it's surface-mount, which is really annoying if you're not already experienced with soldering.) With Arduino, soldering's optional - you can breadboard everything, or use shields.

    Once you've done your first Arduino project, you can do later stuff by just getting the AVR chips and putting them on a breadboard yourself if you'd prefer.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  22. TI LaunchPad isn't significantly cheaper by billstewart · · Score: 1

    Yeah, it's under $5, but you'll have to buy a soldering iron and some headers to use Launchpad, so it's pretty much equivalent. With Arduino, you can do everything on breadboards. And in practice, you're going to end up buying a bunch of breadboards, LEDs, resistors, alligator clips, baling wire, accelerometers, a Wii Nunchuck, speakers, and other stuff to go with it, so the cost is pretty much equivalent. And if you want to play with the AVR environment much, you'll either end up spending $30 to buy an ICSP programmer or just use the Arduino to do it instead, so you might as well just buy it.

    On the other hand, Launchpad's cheap enough that once you've gotten started with the Arduino, you might as well also buy a Launchpad. It's what I would have been playing with next except they were backordered and by the time it arrived I had started playing with 555s.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  23. Re:TI LaunchPad Free-Beer Compilers by billstewart · · Score: 1

    At least one of the TI compiler suites comes in a limited-memory-crippled free-beer version, but that's ok in practice if you're using it with Launchpad - it limits you to something like 4K, but the MSP430 chips that come with the Launchpad are the versions with only 2K flash and 128-bye RAM, so it'll let you do anything those chips can do, and let you learn about TI's chip environment.

    If you decide to start using the bigger chips from TI, the limitation may get annoying, but by that point you can decide whether to use GCC or (if you're using it commercially) to pay for the non-free development environment because you like those TI chips better than the AVR ATmegas that can use the Arduino environment.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  24. Training Wheels are Just Fine, thank you by billstewart · · Score: 1

    Arduino comes with pretty much everything you need to get started in a really sophisticated programming environment. It's not quite down to the metal (you can go read rants about "Why DigitalWrite() is Too Slow!" for explanations), but it's close enough, and you can ignore the higher-level libraries and get at the raw bits if you want to. If you're more interested in using them for artwork than engineering, you don't need to do the deep dive, but it's a great place to learn.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
    1. Re:Training Wheels are Just Fine, thank you by cr0nj0b · · Score: 1

      Arduino is a great starting point for micro controllers. You can put in raw AVR C++ code into the ide if you want. Personally, Arduino helped me get going quickly. Then if you outgrow it, you can use the same hardware and program without the IDE and all the libraries if you want. From there, it is easy to move to other ATMega/ATTiny chips if you need to.

      Arduino is more than make an LED blink. There are libraries for LCDs, Ethernet, read/write SD Cards, and examples for many sensors. (and much much more)

      Even in Arduino's bitmath page: http://www.arduino.cc/playground/Code/BitMath They show you the low level AVR C if you want to use it.

      I am not a programmer, but with the available libraries, I was able to accomplish many projects quickly. In less than a year of using arduino in spare time, I learned enough to move on to other AVR micros. GCC supports AVR micros. The TI Launchpad is highly restricted to windows.

      No comment on PIC. Have not had time to try programming with PIC.

  25. Arduino IDE text windows by billstewart · · Score: 2

    When I did my 555 contest project, I mainly used the Arduino as a handy 5-volt power supply, but I also ran a voltmeter script on it that sent its output to my PC screen. Instead of using a traditional voltmeter, I'd get a nice trace of the voltage levels it was seeing on the capacitors, so I could look at the last 100 samples instead of just guessing "it was bouncing between about 1-2v" (or "0.76 and 2.07", on the digital voltmeter, but the batteries on that were dead :-)

    An oscilloscope would have been another traditional approach, but I don't have one of those, and the Arduino was a good in-between step.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  26. Re:TI LaunchPad as a bribe by billstewart · · Score: 1

    A friend of mine who worked in QA used to use Scharffenberger chocolate bars as a bribe when the developers fixed things that made her life easier. They were the small ones, the recipients knew they only cost $2, but it's really the appreciation that counts.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  27. Microcontroller Snobbery by Goody · · Score: 3

    I don't get all the Arduino haters in this thread. I've been programming PICs in assembly for years and just recently picked up an Arduino. I'm having a ball with it. I'm sure the TI Launchpad is fun, but it's obviously so cheap right now because TI is trying to flood the market and gain market share. It appears their development tools are not open source and are crippled. The Arduino is not offered or controlled by the microcontroller manufacturer, Atmel; it's an open source project and you can get Arduino variants from various companies. Furthermore, the boot loader, compiler, and board designs are open source.

    You all can sit here and argue about what's a real microcontroller and make faulty Microsoft Bob analogies, but the Arduino has an established community and people are having fun with them. There are people doing more with Arduinos than blinking LEDs. If you want to impress your friends with a so-called "real" platform and play EE snobbery, have at it. Hopefully TI will still be gracious enough to keep selling their boards at $5 next year and let you use their free-as-in-beer development environment.

    --
    Tired of being "punished" by the Slashdot $rtbl since 2002. I'm now over at http://soylentnews.org/ .
    1. Re:Microcontroller Snobbery by TheRealMindChild · · Score: 1

      I know this is late, and likely only to be read by you (the parent poster), but the reason for the TI LaunchPad over the Arduino is price, plain and simple. A few key parts for the Arduino can throw my close to $100 in cost. The equivelent for the TI LaunchPad is significantly less.

      --

      "When life gives you lemons, don't make lemonade. Make life take the lemons back!" -- Cave Johnson
  28. So what's a "real" microcontroller? by Anonymous Coward · · Score: 0

    I've seen a lot of comments about the arduino not being good enough. As I am a budding EE, I ask, what is good enough? What should I be playing around with?

    Furthermore, some people seem to talk about embedded linux or real time OS being the greatest thing ever. So, where are these development boards? How do I get my hands on one???

    It's one thing to denounce arduino, but you could at least offer alternatives while you're shitting all over everything :P

    1. Re:So what's a "real" microcontroller? by eatfrog · · Score: 1

      What should I be playing around with?

      Play around with everything except your willy.

    2. Re:So what's a "real" microcontroller? by The+Gaytriot · · Score: 1

      I used a couple different Arduino boards for several projects during the course of getting my CE (Not exactly EE, but very close), and also played around with them for a few personal projects as well. The CE and EE majors all had to learn the 68hc11 for the actual embedded micro-controllers course, but only a few chose that platform for use when a project actually called for a microcontroller later on for their senior projects.

      If you think that an AVR would be a great fit to accomplish what you are trying to do, then Arduino would be a great choice within that category. If you need more beefy memory or processing, an AVR would not be a good choice. You can program it in C, C++, or assembly language, which made it super easy for me to pick up and get going on some fairly complicated projects with a tight timeline.

      BTW, I used an Arduino Mega board for my senior project, which was an automated aquarium system. It monitored and controlled all of the aspects of keeping an aquarium running and safe for the fish. It also had an LCD display and keypad for user I/O, and I think that was a great learning experience figuring out how to make a good user friendly I/O. Both the project mentor and the dean of engineering thought that the Arduino was a perfect fit and implemented well, this project did not need a super powerful controller, nor could it have done so simply with just electrical hardware.

      --
      Srsly u guys. U guys, srsly.
  29. LPCXpresso pwns the arduino. by Annirak · · Score: 1

    Also LPCxpresso.

    $30 for a 120MHz Arm Cortex-M0, 512k Flash, 64k of RAM with USB, Ethernet, 12-bit ADCs, and more peripherals than you could want. All this on a PCB that integrates a USB debugger.

    The development environment is based on eclipse and gcc. While the environment claims a limit of 128k without purchase, I suspect that a gcc port could lift this restriction. Not sure if the debugger would survive the transition to OSS or not.

    Shields are available from embeddedartists, but they're quite expensive.

    Arduino shouldn't be able to compete with this, but the hobbyist scene is enthralled with arduino right now and hasn't really met lpcxpresso yet.

  30. Re:Arduino is a better place to start - it's compl by hairyfeet · · Score: 1

    If you are looking for LEDs and tons of little parts for projects cheap may I suggest BGMicro? I have a customer that helps the local college robotic and rocketry clubs and has been buying from them for ages and swears by them. You can get everything from solar panels to IR illumination and all the LEDs in every color they make, all cheap and delivered to your door. Great for the DIY project hacker type.

    --
    ACs don't waste your time replying, your posts are never seen by me.
  31. Fritzing is the next step for Arduino users by Anonymous Coward · · Score: 0

    The schematic and documentation application Fritzing is the program you need once you get an Arduino running and doing something useful.

    Note the link in the book review.

  32. Re: BGMicro by billstewart · · Score: 1

    They look like one of many good places to order things online; I got started with Sparkfun and Seeed Studios, and Mouser and Digikey and FunGizmos seem to be popular.

    I was using Fry's and Radio Shack more as examples of places you end up dropping by to pick up a couple of transistors or some more connector wire or whatever on your way home from work. (RS has a coupon good for $10 off your next $40 purchase, which I almost never spend there; it's the $5-10 trips that add up :-)

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  33. Re: BGMicro by hairyfeet · · Score: 1

    Yeah but if they charge you $50 for $10 worth of stuff, is it a good deal? I don't think so.

    I don't know how the RS is in your area, but in mine the little parts that cost a buck or two WITH shipping at BGMicro will cost you $12+, and a simple printer cable which I bought for just $3 WITH shipping from Monoprice (which is an EXCELLENT source for cable and adapters BTW. I just picked up a couple of 5 pin DIN to 6 pin PS2 for a couple of classic clicky clacky KBs I got give to me for $3 with shipping!) they wanted $18! For just a bloody printer cable!

    So while I don't mind shopping local when the prices are reasonable with RS at least in my area you are looking at 400%-600% markups. I'm sorry but at those prices I can afford to wait a day or two.

    --
    ACs don't waste your time replying, your posts are never seen by me.
  34. Re: BGMicro vs Radio Shack by billstewart · · Score: 1

    Oh, yeah, there are definitely things at Radio Shack that are hopelessly overpriced. On the other hand, they've typically got a dozen drawers of electronics components (resistors, ICs, connectors, etc.) most of which are reasonable, and I can get them this afternoon (since I live in Silicon Valley, I can also drive a couple miles farther and go to Fry's for a bigger selection, or Hal-Ted for a much much bigger selection, but RS's pretty convenient.)

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks