Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Hardware Hacking Open Source Hardware Build Linux

Why the Arduino Won and Why It's Here To Stay 224

ptorrone writes "For years, students, journalists, makers and old-school engineers have asked why the Arduino open source microcontroller platform has taken off, with over 100k units 'in the wild' — it's the platform of choice for many. MAKE's new column discusses why the Arduino has become so popular and why it's here to stay. And for anyone wanting to build an 'Arduino killer' (there are many) — MAKE outlines what they'll need to do."
This discussion has been archived. No new comments can be posted.

Why the Arduino Won and Why It's Here To Stay

Comments Filter:
  • by Anonymous Coward on Friday February 11, 2011 @05:14PM (#35180260)

    There was a time when it was difficult and expensive to develop embedded applications. Then MicroChip came out with the PIC. The tools were free. There was lots of helpful documentation. You could build a PIC programmer out of junk box parts.

    If you were a small developer, you wouldn't bother with a company like Philips (and the others) whose tools were expensive and whose documentation was Byzantine.

    Arduino is one step better. It was designed to be used by artists. There are tutorials for everything. It is SO easy to use.

    Of course, Arduino isn't a chip, it's a little board. The chip is Atmel's AVR. I don't know what Atmel did to deserve their good luck. I'm guessing that the hard work of the Arduino folks has really increased Atmel's market share.

    The lesson here is that it isn't the goodness of the chip. (The early PICs were really unfriendly to C compilers.) You can have the best chip in the world but nobody will use it if they aren't properly supported.

  • by Anonymous Coward on Friday February 11, 2011 @05:14PM (#35180270)

    The Arduino is great because it creates a community and it makes it easier to build 8-bit systems. It creates a community and it saves time, even for experienced EE:s. That's great. The thing is that it was never very hard to build a low-speed 8-bit system anyway. The Arduino saves time, but it doesn't save massive amounts of time.

    Now, if someone could make a project that has a 32-bit medium clock rate (~100 MHz) MCU, enough RAM to run a tiny Linux distribution and an SD-card slot that would be awesome.

    It would also be nice with a similar system based around an FPGA.

    I know that there are some people working on these sorts of ideas, so hopefully something will take off.

  • Re:Agree, mostly. (Score:3, Insightful)

    by RightSaidFred99 ( 874576 ) on Friday February 11, 2011 @05:15PM (#35180272)
    Real reasons to dislike .NET are few and far between, and generally boil down to cases where it's inapplicable to a specific problem domain. "I hate anything M$" is hardly a meaningful or valid reason.
  • Re:Agree, mostly. (Score:5, Insightful)

    by ivucica ( 1001089 ) on Friday February 11, 2011 @05:22PM (#35180334) Homepage
    Do you say the same thing to the people who say "I don't like broccoli"?

    I've worked with .Net and Team Foundation and never catched the workflow. I do not claim .Net to be bad, as I have seen too much good engineering done with it, and I have seen quite a few nice tricks in both C# and the framework. I do reserve the right to dislike the general principles behind many pieces of the design and to do so passionately, while respecting the work of good people who designed C# and .Net and who use it. Dislike has very little to do with it coming from Microsoft.
  • by smellsofbikes ( 890263 ) on Friday February 11, 2011 @05:51PM (#35180670) Journal
    Most of my coworkers are old-school embedded programmers. Many of my friends are Arduino-enthusiasts. The Arduino has a vastly easier learning curve: you plug it in, open a window, and hit 'download' and your code is on the machine and running. People who are used to embedded programming are fine with setting up a development environment with libraries, handling source files, telling the IDE what programmer hardware is being used, what target hardware is begin used, what oscillator frequency and which fuses to set, but that's simply overwhelming to someone who just wants to turn relays on and off to power an art project.

    And once a lot of people were using it, they all started releasing their code. Sure there are other great code repositories, PIClist, AVRfreaks, but many of the people there are pretty DIY so they'll exchange snippets of code that they build into something finished. Arduino code is often complete: download this program to do this entire process. That mindset has attracted lots of people, who have contributed even more code, so it benefits from a networking effect, so now anyone who is releasing anything for the electronics experimenter market has to provide an Arduino sketch that handles the hardware being offered -- and that drives it even further.

    There are cheaper platforms, there are faster ones, there are ones with much better hardware (and some that are all three, the MSP430 being a likely example) but nothing that combines the simplicity and codebase of the Arduino.

  • Re:Agree, mostly. (Score:5, Insightful)

    by serviscope_minor ( 664417 ) on Friday February 11, 2011 @05:56PM (#35180736) Journal

    I hate anything M$" is hardly a meaningful or valid reason.

    Unless you rephrase it as "I don't want to get locked into Microsoft products again, since I had a bad experience last time.".

    Seems meaningful and valid.

  • Re:Agree, mostly. (Score:4, Insightful)

    by SanityInAnarchy ( 655584 ) <ninja@slaphack.com> on Friday February 11, 2011 @05:59PM (#35180774) Journal

    Another reason is, "I want to target platforms Microsoft doesn't."

    Say what you will about Oracle, but with OpenJDK, I can pretty much do what I want. The closes thing .NET has is Mono, which means you're basically castrating the feature set of .NET, whereas OpenJDK includes almost all of the Sun JDK, and is almost always out-of-the-box compatible.

    Or I can write my code in JRuby, which means I run anywhere Java does and anywhere CRuby does, as well as anywhere anyone writes a Ruby interpreter in the future.

It is easier to write an incorrect program than understand a correct one.

Working...