Maker Pro
Maker Pro

arduino is it all its cracked up to be?

as the title says.
I am trying to figure out whether to spend time on it or to go straight into the high end stuff?
I figure arduino is great for newbies like me trying to make stuff but the limitations are they too extreme?
 
Personally I think they are a waste of money, overall at least in the long run... They do have the advantage that they are a cheap starter option as the IDE and compiler are free, but that cost diminishes very rapidly as you create and implement new designs that don't require the Arduino platform...

They have GREAT support forums but the scope is so focused and limited to a single platform...

I'm of the opinion that those that really plan to stick with it should start with a foundation that you can actually progressively build upon and the Arduino platform lacks this...

I primarily lean towards PICs and only dabble in AVR designs, but I do know with WinAVR studio and a cheap programmer you can jump right into the entire AVR lineup, from 8 pin up to whatever... You won't be stuck using a $30 - $60 Arduino to blink an LED, instead you can use a $1 chip and a few pennies in support components to build your design...

If you want a simple plug in and go USB development module, look at the real Teensy USB, write your code with whatever compiler and load it into the Teensy with USB in a flash... Like the Arduino this is building upon a single platform though, and again no need for a $16 module to blink a few LEDs...

For me cost isn't so much of an issue since I can factor it into the small projects I do flip for a profit every once and a while... PicBasic Pro for me was worth every penny as I have been writing BASIC for about 30 years now, I took to it like a fish to water... It's not the most elaborate compiler and it has it's issues, but since all my other devices like programmers and development tools are not device specific I can switch to other compilers without any issue, just dump the hex from any compiler, burn and run it all the same... PicBasic Pro also has a ton of online support in their forums, the fact that it emulates the BasicStamp syntax also means that for the most part BasicStamp support applies, or at least you will be able to snag code snippets without huge porting issues...

But, language choice is yours... It's clear in todays world that the C language is the preferred choice, so if you want to jump from AVR to PIC to ARM to whatever it might be best to start with C and forget Basic...

Edit, BTW I do own a Ardunio, and I do tinker with it since there is a ton of already written code that is fun to play with... But, at the end of the day I will re-write or port my code to different chips and boards of my own design... Many of my designs simply do not need say a 28 pin micro, and there is no reason to waste a development module on a finished design like I see many do with the Arduino...
 
Last edited:
instead you can use a $1 chip and a few pennies in support components to build your design

still need to pay for a programmer. Cost is hardly $1 to start.

If you are new to programming then I would say go with the arduino till you learn its limitations. I paid $20 bucks for my arduino on ebay, cheap chinese knock off. If you are familiar with programming then by all means take cola's advice, because C is the chosen language...
 

Harald Kapp

Moderator
Moderator
May I throw in my opinion?

A development kit is good stuff if you want to learn the basics of microcontroller (or embedded) programming. The big advantage is that the dev board is ready made and functional so in case something doesn't work as expected you have to fight at one front only: software. This comfort comes at a cost as CocaCola rightfully stated. A selection of more or less pricely boards is listed here: http://www.sparkfun.com/categories/2 . You may also be able to find a subsizdized dev kit made for promoting their chips directly by a manufacturer here http://www.designspark.com/ or on most manufacturer's websites.

If you're experienced in building your own hardware, a do-it-yourself circuit tailored to the application is less costly. As long as the circuit is not too complex, the effort and risk is small when using modernd microcontrollers as they include alsmost everything you need from clock generatiom, memory, CPU and I/O.

An intermediate solution is a breakout board (for AVRs e.g. here: http://www.microcontrollerprog.com/Boards.html). The breakout board has all components to make the CPU run (clock generation, reset circuit etc.) and ideally has a DIL pinout which allows direct insertion of the breakout board into a breadboard, Thus you can easily combine your own extension circuit with a tested CPU module (especially clock generation using a quartz can be tricky on a breadboard due to parasitic elements).
Once the circuit and programming have been verified on the breafborad, it is straight forward to generate a PCB without the need for the breakout board which can be recycled for the next project.

It is also a good idea to have a slightly more powerful microcontroller in your development circuit than the application will require. This leaves more room for testing and optimizing your code (should that be necesssary). Once everything is fixed, you can then select the smalles (aka cheapest) microcontroller for the final design.
This approach bears some risk, however: Programmers tend to using all available ressources. There is often no way back.

Harald
 
I find that the Arduino being a prebuilt kit allows you to quickly change projects, and change design.

The functionality is great, and with the secondary boards/shields you can get you can really integrate them with tons of things.

I like them a lot because the software is good, and fairly easy to use/get used to

I have built all sorts of little things as well as some larger complicated setups with relative ease.

As people have said its good for a starter board
 
still need to pay for a programmer. Cost is hardly $1 to start.

And you would need a new Arduino if you wasted it blinking an LED... Never said it was $1 to start, but it can be substantially cheaper in even the short run... I'm talking the long haul mostly, the few bucks you pay on the programmer will be negated in a short time vs getting a new Ardunio for every project...
 
what about limitations on code length and cpu handling?
I know to not expect them to be as fast as a desktop, laptop or even a smartphone, but could i use it for example to display a map, recieve a code via 433mhz(or other) then display that on the map?
i know most of its coding, and decryption but would arduino be capable of doing this?
if not I have found arduino is capable of connecting to android phones so might go and make an android app and use arduino as the reciever shield
 
what about limitations on code length and cpu handling?

The Arduino Uno uses a ATMEGA328P @16MHz

And this is one of the issues I have touched upon, it's a single device platform... YES, the code you write can be ported to other chips and such but then you are not using the Arduino platform any longer, the Ardunio itself can still be used as a programmer though... There are bigger and better AVRs as well as smaller and less powerful AVRs, so doing it from scratch opens the ability for you to tailor the micro to the needs of the project... Need a big chip with built in USB instead of the cluster of USB interfaces support chips on the Arduino? If so just use a AVR with built in USB like the MEGA32U4, no need for the support chips...

I know to not expect them to be as fast as a desktop, laptop or even a smartphone

That gap is really closing, with a solid foundation or even if you want to start with you can hop right into ARM chips... Yeah not as fast as a desktop but they are the same chips used in many smart phones and tablets... There are also screaming fast PICs and AVRs as well, you can get a lot of punch for a few bucks... Remember a computer is a general purpose device that is designed to do and run a gambit of things, when you make an application specific design using a mirco it doesn't need all the overhead as it can focus 100% on a single job...

but could i use it for example to display a map, recieve a code via 433mhz(or other) then display that on the map?

You will find out immediately that internal code space and storage is the biggest limitation... But with external storage even some of the wimpy micros can display a bitmap on a graphics display... There is no decoding with bitmaps so it's just a matter of having enough storage and a fast enough pipe to load the display...

i know most of its coding, and decryption but would arduino be capable of doing this?

Yes, in some capability... You can get 433MHz modules that are simple serial interfaces, the module itself does all the encryption and description, the micro only has to be able to communicate with the module via a simple serial connection...

if not I have found arduino is capable of connecting to android phones so might go and make an android app and use arduino as the reciever shield

Just about any micro can interface a phone, it's just a matter of implementing it...
 
I am a PIC guy, so I can't talk about AVR or Arduino. But I concur with CocaCola that it is a waste of money to buy any development board for each of your uController projects.

I started with a PICKit 2 and low pin-count demo board ($50). I feel that this was good for me as a start because I did not want to learn the hardware and software at the same time. But for my first project, I wired it all up myself on a prototype board. No need to waste my expensive prototype board and need another one!

And once you have learned the basics of PICs, using the full range of them comes pretty naturally, so you have many possibilities.

Bob
 
I am a PIC guy, so I can't talk about AVR or Arduino. But I concur with CocaCola that it is a waste of money to buy any development board for each of your uController projects.

I started with a PICKit 2 and low pin-count demo board ($50). I feel that this was good for me as a start because I did not want to learn the hardware and software at the same time. But for my first project, I wired it all up myself on a prototype board. No need to waste my expensive prototype board and need another one!

And once you have learned the basics of PICs, using the full range of them comes pretty naturally, so you have many possibilities.

Bob

I agree that for everything it is not the best option, but what I mainly use mine for is proof of concept, so get it working with the arduino, which is easy to rewire, swap parts out, and reprogram, before settling in with a final design

It really depends on what you are going to use it for, if you think of it essentially as a protoboard (breadboard) and use it in that sense it would save you money in the long run with time to set up the chips and everything for initial prototyping and such
 
would it be wiser to make my own board for prototyping? i want something easy like arduino, how hard would it be to do that? and another thing is I am having an issue with digital and analogue parts, to make life easy I am just making this for output but the idea is that i contorl the speed of a motor, but I have seen shields for use when motors are being installed and these are all digital.
am I missing something here or am I right that the output would have to be analogue to give me a beetter control of speed? and is that shield even necessary?
 

(*steve*)

¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥd
Moderator
If you want to start with arduino, it pays to use one of their boards. Certain pins are assumed to perform certain functions, and getting software to run will just be easier.

I bought one of these.

Of course, from that place it comes via a slow boat...
 
Top