Slashdot Mirror


Companies Selling Microcontroller Kits?

An anonymous reader asks: "I'm in college working on an electrical engineering degree, and I've had a few labs so far involving microcontroller setups. I'd now like to start doing some microcontroller projects of my own devising, so I'll need a programmer, the development software, and the MCUs themselves. The problem is that I don't have a wide experience with the different companies selling this sort of equipment. I know about the BASIC Stamps and the PIC offerings, but what other architectures are there? Both of the MCUs I've named have development tools, but they're for Windows. Are there any companies out there that supply their tools for BSD/Linux? What open source projects are there working on this (I've found gputiles). As always, free (as in beer) is good for us college students. :-)"

23 of 56 comments (clear)

  1. Linux friendly microcontrollers by ActiveSX · · Score: 3, Informative

    I've been using the BASIC Stamp Tools for Linux for a while now. It uses the (unfortunately) beerfree parallax pbasic tokenizer so. If you don't want to use the BS, the Atmel AVR series is well supported by open source software, and really fast as well (native code vs. interpreted).

    1. Re:Linux friendly microcontrollers by slacy · · Score: 3, Informative

      I too would recommend the AVR series from Atmel. Their development boards (STK500 et. al.) are fairly inexpensive, and work with a variety of chips, including the cheap and versatile "2313" chip, my personal favorite.

      If you're famaliar with C programming, then the AVRs are excellent, as gcc will cross-compile for these chips, and give excellent performance for the dollar, as most of the chips operate at 1 instruction per clock, speeds between 4 Mhz and 10Mhz. Getting a single-chip, 10 MIPS solution for $4 is pretty unbelivable.

      As well, the chips are extremely cheap, (between $1.25 and $10) and easy to incorporate to whatever homebrew projects you can come up with, with minimal extra circuitry required, and extensive documentation in the spec sheets. Most of them are available in DIP form, so they're easy to prototype using a handy-dandy protoboard.

      Just go to digi-key, and search for the parts I've mentioned above, and go from there.

      Steve

    2. Re:Linux friendly microcontrollers by rossifer · · Score: 2, Informative

      One of the best places for information on AVR software modules, OS's, emulators, compilers, assemblers, application notes, prototype boards, etc. is avrfreaks.net

      Many of the software offerings are free (especially those from Amtel and the Open Source world) and most of the prototype boards are very reasonably priced. One of the more sophisticated boards is available for under $200.

      Regards,
      Ross

  2. Well, since you are looking for... by rusty0101 · · Score: 2, Informative

    ...free as in beer, might I suggest starting by looking at freshmeat.com, and typing 'pic' in the litle search field. When I did it came back with this url which lists several pic programers. The first three specificly indicate they are for Linux. Several of the others indicate that Linux support is included. And so on.

    I think you would probably find something similar for Basic Stamp, but I think that I have provided enough suggestions that you might be able to figure out how to look for that as well...

    Then again, I could be wrong. Things like that are known to happen.

    -Rusty

    --
    You never know...
  3. How about an 80186 board by baywulf · · Score: 2, Informative

    JK Microsystems has a 80186 board for only $69. It has 1 MB of memory and a DOS like shell. They even give you a full Borland C compiler. Pretty good deal.

    http://www.jkmicro.com/products/flashlite186.htm l

    1. Re:How about an 80186 board by baywulf · · Score: 2, Insightful

      I just realized you wanted non-windows development environment. Since this board is a x86 with a DOS like shell, you can use any 16-bit x86 cross compilers for Linux.

    2. Re:How about an 80186 board by Froggie · · Score: 2, Funny

      Hm, you could port Minix ;-)

  4. good book for pics by brandond1976 · · Score: 4, Interesting

    Programming and Customizing PICmicro Microcontrollers by Myke Predko

    Available on Amazon. The book icludes a PCB and parts list for building a PIC programmer. It includes a dos program (runs fine in wine) for transfering your programs to your pics.

    This book is a lot of fun if your into this type of thing. I highly recommend it.

  5. Consider the AVR by maetenloch · · Score: 2, Informative

    If you're doing simple one-off projects, the BasicStamp is all you need. If you think you'll be doing more projects, it's probably worth investing the time to learn a more complete architecture like the AVR from Atmel.

    For $135 you can get a complete development kit for the AVR complete with programmer, leds, and push buttons that will work with almost any chip in the AVR family. You can get a complete GCC toolchain for the AVR free here and lots of support at AvrFreaks.com. That's pretty much all you need to start developing real applications.

    1. Re:Consider the AVR by mlyle · · Score: 3, Informative

      The AVR is wonderful. Note you can get a complete development platform, the AVR Butterfly, for $20 and the price of soldering down a 3 pin serial header. Digikey has a bunch in stock.

      The AVR is a really powerful architecture, and the GCC toolchain works pretty nicely, though there are some idiosyncracies (the main being that register naming is not consistent between all the parts, and occasionally flags are wrong.

    2. Re:Consider the AVR by slacy · · Score: 3, Interesting

      Wow. I'm famous!

      You should really be going here: slacy's page about building avr-gcc and avr toolchains for Linux

      Thanks!

    3. Re:Consider the AVR by cnvogel · · Score: 2, Interesting

      If you consider doing more complex stuff with AVR microcontrollers, the "Ethernut 2" functions as a very interesting development environment (or even as a complete building block for products/projects). For about EUR 150 you get:

      ATMega128 Microcontroller + 512 kByte RAM
      Serial ports: RS232 + RS485
      100 MBit Ethernet
      most digital I/O and analog inputs of the Mega128 accessible on a row of jumpers.

      The complete operating system (providing TCP/IP networking for example) that's running on that board is availably as sourcecode, you use your trusted gcc/binutils toolchain.

      Programming is done via straight cables from your parallel port to the ethernut (or you can buy ready built programmers very cheap).

  6. PIC's by Artega+VH · · Score: 3, Informative

    You've already found gputils its a great place to start...

    For the pic16f and 18f series also check out the small device c compiler (works with other MCU's too).

    There is a related GNU pic site at www.gnupic.org it lists pretty much everything you might need.

    You asked about development tools for platforms other than windows - but in true /. style i'm going to ignore that: :p

    winpicprog - i've found is quite good, i've yet to find anything in linux or bsd quite as complete...
    -----------
    As far as programming resources go since I'm actualy focusing on compiling c code for the pic using sdcc i've found that:
    Nathan Hursts page on sdcc and the pic14 port (for pic 16 series)
    and
    Martin Dubuc's pic16 port
    have been invaluable resources.

    --
    groklaw, wired and slashdot. The holy trinity of work based time wasting.
  7. PIC's rule! by pedro · · Score: 3, Insightful

    While I am sure that there are probably better examples of deadly serious microcontrollers out there, I have to say that Microchip's products really satisfy the hacker impulse in me.
    I cut my teeth on 8080's (conditional calls and returns? WOOHOO!) and 6502's (gotta love those flag behaviours) and the PIC families rock if you're into major algorithmic gymnastics.
    Everything you could possibly want in a uP is there, and executed beautifully if you're a cycle counting maniac like I am.
    Microchip's tools are basic, yes, but they *are* free, mostly, and perform as advertised.
    Braving the win environment is just something you'll have to put up with if you want to stay on the bleeding edge of what they offer.
    As other posters have mentioned, however, there exist GNU style tools that I suspect might fulfill your needs.
    I must mention, however, that the real power of the PIC products can only be accessed fully by coding to the metal directly.
    Know the chip that you're using intimately.
    A logic analyzer might help also, since you're going to be twiddling ports in a rather brazen fashion.

    --
    Brak: What's THAT?
    Thundercleese: A light switch.. of TOTAL DEVASTATION!
    1. Re:PIC's rule! by AmiMoJo · · Score: 2, Insightful

      "Everything you could possibly want in a uP is there"

      Almost - the only PIC with USB has a UV erasable ROM, not the easiest thing for doing development with.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
  8. MSP430 by Jim+Morash · · Score: 3, Informative

    Check out the msp430 series from TI - fun to program, featureful, low power, and fully supported by free software in the form of 'MSPGCC'. Good stuff

    1. Re:MSP430 by nmnilsson · · Score: 2, Informative

      I'll second that! The MSP430 is a really fun MCU and easy(fast) to get started with.
      You'll get a devkit (with JTAG programmer) from Olimex for cheap (~20$).
      And it works fine with MSPGCC.
      This page holds your hand during your first gdb session.

      I've used this setup in several projects with no real problems.

      --
      No sig to see here. Move along.
  9. 8052 by pauldy · · Score: 2, Informative

    It would have been better had you been more specific on your intent. The microcontroler market is vast and to accuratly answer such a broad question is not easy in a forum like this. First figure out what language you want to program in.

    If you are worried about programmers for linux look for microcontrolers that support in circuit programming (ICP) via serial bootloaders. The one that jumps to mind is dallas/maxim's 89c4xx series. Building a programmer for this device requires very little and works nice with minicom.

    For more high end you can look at network based microcontrolers. Many of these have small RTOSs that allow remote programming and programs execution.

  10. handyboard by blackcoot · · Score: 2, Interesting

    it may be overkill for you, but i've used the handyboard (www.handyboard.com) for robotics stuff. it uses a c-esque language called interactive c, which is available gratis for linux, windows, and os x. it's a pretty decent (not great) environment. and if that fails, you can just program it in assembly (motorolla).

  11. Maxim-IC TINI board by Miguel+de+Icaza · · Score: 3, Informative

    These things are fairly robust for only having 20Mhz to work with allowing telnet access, FTP access, and even http access straight out of the box. This is one of the easiest microcontrollers I've seen to program do to the fact that you simply write Java code in your regular IDE (IDEA!!), rename the compiled .class file to a .tini file and FTP it over to the board. To start your program, you simply type 'java Test.tini &' and it loads into the background. These boards even have garbage collection (which makes things easier for you, but can slow things down). We were able to get the simple LED flashing demo up and running in about 10 minutes. I consider this a pretty big accomplishment since we have yet to get a serious demo running on the C-based microcontrollers from Atmel which continue to tell us we can't flash them due to some lock bits somewhere on the development kit. While some people have mentioned that the TINI board isn't really Java, I have to argue that the fact that I can write my code using my Java IDE and upload it nearly unchanged makes a pretty strong statement that this board is indeed running Java. At $100 for full Ethernet connectivity and a 20Mhz processor, I think it's a pretty good deal especially if you're a Java programmer looking to get into embedded systems. Now I just have to figure out how we tie it to our RF transmission system!

    --
    Before adopting WHATWG, read the moonlight.NET EULA [http://www.microsoft.com/interop/msnovellcollab/moonlight.mspx]
  12. what I use by fliptout · · Score: 2, Interesting

    I do some consulting using the Microchip Pics (pic16f870 mostly for the moment). In school we used the motorola 68hc12.

    Since you are an EE student, you might look into checking out a development board from your department. That should give you something to play with for free.

    Failing that, I'd recomment getting a breadboard, a few sample Pics (free samples, w00t) or whatever microcontroller you want, instead of a development board. Depending on what kind of controller, you may need an external oscilator or that sort of thing, but overall the setup should be pretty cheap.

    I cannot attest to the quality of open software tools, but for my consulting, i use a combination of Sourceboost and MPLAB to program pics. There is a linux version of the Sourceboost IDE for around $70.

    --
    A witty saying proves you are wittier than the next guy.
  13. piclist by mmynsted · · Score: 2, Informative

    Be sure to check out piclist at http://www.piclist.com

    This is a really nice resouce for microcontrollers. (Folks ask questions about electronics, non-pic controllers, etc.) Great place to start your search.

    -MM

  14. Get on the PICList by gmiller123456 · · Score: 2, Informative

    http://www.piclist.com/techref/piclist/index.htm

    Even if you're not going to go with PICs, there is still a lot of info and help available there. Even though it's called the PICList, it's divided up into several different categories including PIC, AVR, and Electrical Engineering.

    Personally I don't like PICs, I use the Atmel *51 series normally. Specifically the AT89C2051. These are small, cheap, and have a lot of support. SDCC supports them very well, any any old Programmer you get on E-Bay supports them. But they're not high performance chips, so you still need to be familiar with other chips for specific needs.

    You can get the AT89C4051 at Futurlec for $1.85 each when you buy 25.
    http://www.futurlec.com/Atmel/AT89C4051pr.sht ml

    Also I recommend you buy a Programmer on E-Bay rather than try to make your own. My point being, if you screw up one little thing on your programmer, you don't know where the problem lies. After you've got your feet wet, you might try building your own more modern programmer.