Slashdot Mirror


Ask Slashdot: Best Electronics Prototyping Platform?

crankyspice writes "Having recently picked up the Erector set I've wanted since I was a kid, I quickly found myself wanting to plunge deeper into makerspace by adding more sophisticated electronics to moving devices (rovers, maybe eventually flying bots). My first instinct was Arduino (maybe because of brand recognition?), but that got me thinking — what's the 'best' platform out there (most flexible)? Arduino with its myriad options (Nano, Mega, Uno, Mini)? PICAXE? BASIC Stamp? Raspberry Pi? (The latter seems like it would easily be the most flexible, but at greater cost in terms of weight and complexity.) I'm a hobbyist programmer, having learned C and C++ in college and recently re-learning Java (took and passed the Oracle Certified Professional exam, FWIW)..."

8 of 228 comments (clear)

  1. CopterControl by Sowelu · · Score: 5, Informative

    If you want it to fly, you might want this: http://www.openpilot.org/products/openpilot-coptercontrol-platform/

    Yes, yes, it takes the "fun" out of building your own flying code, but your machine will be a lot more fun to play with when it's actually stable. Put whatever other board you want on it, but for your own sake, use a dedicated flight board if you want to go airborne!

  2. Arduino, AVR, RPi, Beaglebone by n1ywb · · Score: 5, Insightful
    In that order. Arduino is cheap and dirt simple and surprisingly powerful and flexable. Arduino is based on AVR which is the next step if you wish to pursue ultra cheap ultra lower power micro designs. AVR is compatbile with the complete GNU toolchain including GCC and GDB via JTAG and in-circuit emulation using the astoundingly cheap Atmel Dragon, the $50 JTAG adapter. Raspberry Pi and Beaglebone both run Linux. The RPi is super cheap but is better targeted at apps which require a GUI. The BeagleBoard is more expensive but is better tuned for embedded use. It would be nice if the inverse were true, but oh well.
    • http://www.arduino.cc/
    • http://www.nongnu.org/avr-libc/
    • http://www.atmel.com/tools/avrdragon.aspx
    • http://beagleboard.org/bone
    • http://www.raspberrypi.org/
    --
    -73, de n1ywb
    www.n1ywb.com
    1. Re:Arduino, AVR, RPi, Beaglebone by n1ywb · · Score: 5, Informative

      Oh I should mention why I don't recommend PIC based platforms; poor support for using Linux as a development host.

      --
      -73, de n1ywb
      www.n1ywb.com
    2. Re:Arduino, AVR, RPi, Beaglebone by Ford+Prefect · · Score: 5, Informative

      I agree. Get an Arduino Uno at first and then you'll start to get a sense of what direction you want to move in from there.

      Agreed also. I started off with an Arduino nearly two years ago, and learned a lot of electronics and C/C++ building a camera timelapse gadget. (Videos here!)

      The community is definitely incredibly helpful, and if you're trying to do something there's a good chance someone's done aspects of it already. Plus the limited platform means it's difficult to get too sidetracked, and you pretty much have to build things in an efficient manner. It's built over that pretty standard AVR stuff too, so implementing your own Arduino-alike hardware is frighteningly simple.

      The ecosystem of Arduino shields is pretty amazing, but often a bit on the expensive and unwieldy side - for example, paying a fair amount for WiFi when an Arduino can barely handle a single connection, or full-colour backlit LCDs when the thing has almost no RAM - at some point you're going to have to make the leap to a Raspberry Pi or similar if projects are heading that way. I built a ridiculous time-travelling radio around a Pi, using some pretty standard UNIXy stuff which would have been impossible on an Arduino.

      On the other hand, I've seen many learning projects built with Raspberry Pis which would be far better suited to Arduinos - the Arduino has no real operating system, just the (tiny) bootloader and the standard libraries that get linked in, so it's extremely difficult to break a working, embedded setup. My timelapse gadget? Ideal. Starts almost instantly, has no easy-to-corrupt storage - think of the Arduino as programmable electronics glue. Whereas the Pi is more like software glue - if you need a tiny UNIX box doing software-type stuff, potentially interfacing with the real world, then the Pi and friends win hands-down.

      --
      Tedious Bloggy Stuff - hooray?
    3. Re:Arduino, AVR, RPi, Beaglebone by Darinbob · · Score: 5, Interesting

      PICs are ok, but the C for it is extremely limited and it can be a bit frustrating at times. AVR is limited too, but it felt a bit less odd at times. Both come with a large variety of options so the stuff I hated about PIC may not apply to others. The better compilers for PICs are proprietary and as I recall GCC for PIC just isn't that great as the PIC model is too unusual, and there are so many variants of PIC instruction set. AVR feels a bit more like a normal CPU and the differenet models don't change the instruction set too much.

      Both are Harvard architectures meaning you may have a lot of room for programs (ie, 16K or more), but very little memory for RAM (256 bytes). Which means that if you only have a 4K program you don't get to use all that unused space to have more runtime memory. That tiny amount of RAM however is shared with system registers!! The more peripherals your chip has the more RAM that ends up reserved. So what you read on a data sheet may not be what you actually have to work with.

      I am not an Arduino fan. However it's probably good for beginners as it's easier to get started with. You can program it using USB and they can get power over USB as well, which is really handy to avoid extra purchases of power supplies and system programming hardware. Other systems beside Arduino have USB too but boards intended for professionals may not have these quick-start options. These boards are probably going to give you more than you need as well to avoid the frustration of having something too small, after all a hobbyist isn't going to be quibbling about how many pennies they can save per chip in bulk and the hobbyist is going to be building multiple designs with the same chip. It can also can be used without soldering and has a variety of stuff you can buy to attach to it.

      On the other hand Arduino is pushing their programming system as well, which is really the thing that separates Arduino from any other AVR board. It is a C-like language with a library; you're not programming to the bare board, you're not even writing your own main() routine. It is not intended for profressional programers, the target audience appears to be "multidisciplinary" (ie, people who aren't programmers). But you can skip that stuff and go for real C or assembler if you like.

  3. Those are not electronics prototyping by Anonymous Coward · · Score: 5, Insightful

    The toys you have listed are for developing firmware and software.

    Prototyping electronics involves first designing some electronics, simulating them (if applicable or able), and then designing the boards, ordering parts, and having them assembled (or assembling them yourself).

  4. $4.30 MSP430 Launchpad for starters by javawocky · · Score: 5, Informative

    I recently starting wanting to fiddle with Micro controllers for this or that and stumbled across the Texas Instruments Launchpad. For $4.30 delivered (yes including shipping world wide) you get a complete development board, 2 chips, some headers and the USB cable. TI have a free IDE you can program it with, or if you are on Linux you can use the MSPGCC command line tools, which I use. Its ultra low power - 3.3V - which means if you want to interface to 5V systems you may have to do a little homework, but other than that, their is no risk in ordering one to try out with the money you would have wasted on Starbucks. http://www.ti.com/ww/en/launchpad/stellaris_head.html?DCMP=stellaris-launchpad&HQS=stellaris-launchpad Order directly from Ti - https://estore.ti.com/MSP-EXP430G2-MSP430-LaunchPad-Value-Line-Development-kit-P2031.aspx

  5. Arduino + Fritzing by Bitsy+Boffin · · Score: 5, Informative
    No question in my mind, an Arduino for the microcontroller platform, and Fritzing to do the design.

    Why?

    Arduino: community, quite simply, it has the critical mass of community behind it so you have a real source of knowledge (and existing code) to draw from. It's like the hardware analog of PHP, sure it's not necessarily the best, but the sheer amount of resources out there means you will have an easier time getting it to do what you want.

    Eventually your projects might extend from running on top of an actual Arduino form board (I like the Diavolino board/kit from Evil Mad Science, mainly because it looks cool, but also because you can set it up with the minimum of components to suit you), to you incorporating the AVR onto your own PCB design but still using the Arduino bootloader/environment, to you incorporating a bare AVR on the board and moving away from the Arduino environment. So you have a clear progression of learning.

    Fritzing: open source, simple, and a GOOD interface for HOBBY users. No it's not a replacement for Eagle, or Altium or DesignSpark... but a hobbiest working on small things just doesn't need the power of those, they want a nice easy system which they doesn't have a steep learning curve, and can help them draw the schematic, breadboard it, and design a pcb. There are other open source packages, such as KiCad but universally, I found, that the interfaces just suck, hugely, unless you really invest the time to become familiar with them, and then they still suck but you can live with it. Fritzing is far FAR more intuitive, if less professional.

    --
    NZ Electronics Enthusiasts: Check out my Trade Me Listings