EDuino – Arduino or AVR breakout?

We’ve had a lot of requests in the comments for more Arduino centered posts so we were happy when [Njay] told us about his EDuino board. This is a minimal Arduino clone that has a crystal and its capacitors, a pull-up resistor and button on the reset pin, and a detachable serial programming connection. He also has a breadboard-friendly version seen above with all the interface pins on one side of the board. This is certainly a useful project and we’re glad to see the board files available for download. This does get us thinking… is this an Arduino, or is it an AVR ATmega168 breakoutboard that happens to use the Arduino boot loader and programming language?

@ rasz
I have a feeling he knows what it means. After your remark, though, you might want to look up ‘irony’ instead.

Nice project. Not so much a hack as a product, though. Which I think is the problem with Arduino posts on this forum; too often it’s a simple bit of code to use one of its features.

People don’t go all ga-ga eyed when a person uses a swiss army knife to open a bottle, saw something, cut something else, pop a cork, and pick their teeth, since it’s designed to be versatile. Same for Arduino.

The “Arduino programming language” is C. Don’t get fooled by the IDE and the trivial modifications it makes to the source before it passes it to GCC (yes, the Arduino text editor uses GCC to compile your “sketch”. Surprised, heh?). The Arduino people are obviously too dumb to write a compiler, so please don’t praise them for that.

Same thing for the bootloader, it is in fact the STK500 bootloader.

One day, I will take Debian GNU/Linux and rename Linux to “Lekernel OS Core”, GCC to “Lekernel Compiler”, apt-get to “Lekernel Software Manager”, KDE to “Lekernel Desktop Environment” and change the default wallpapers and logos. Then I will sell it to Windows newbies who never used anything else than Word and Internet Explorer, and I will get a lot of fame and money.

Actually the “Arduino programming language” is C++ with a provided main() equivalent to:

void main() {
setup();
for(;;) loop();
}

I still don’t understand the anti-Arduino venom that is prevalent here. I have had a lot of fun hacking with the architecture, and the software development tools helped me get started very quickly. I soon graduated to making my own makefiles, but at least I had a quick place to start.

But the point is well-taken. I think it was counterproductive of them to feign yet another niche programming language when in fact it is one of the most widely used programming languages in the world. It’s like the book you don’t read because it says it is written in a brand new language made up just for that book. Only you eventually look inside and find out it’s English.

@lekernel: And you’re too dumb to make your own hacking blog, so you use this, right?
One of the first FOSS rules is “Don’t reinvent the wheel”.

Besides, they aren’t trying to fool anyone. From the Arduino FAQ:

“Can I program the Arduino board in C?

In fact, you already are; the Arduino language is merely a set of C/C++ functions that can be called from your code. Your sketch undergoes minor changes (e.g. automatic generation of function prototypes) and then is passed directly to a C/C++ compiler (avr-g++). All standard C and C++ constructs supported by avr-g++ should work in Arduino. For more details, see the page on the Arduino build process. “

Well, with hacking, projects are usually judged on grounds of novelty, creativity and technical excellence. Arduino misses all points. It is just:
– an AVR microchip (existing)
– a simple PCB (trivial, you can do it in 30min with veroboard)
– a text editor that runs the compiler for you (trivial)
– a compiler (existing)
– a bootloader (existing)

And still it gets all the hype.

Moreover, it is often touted as “open hardware” while it does not cover at all the interesting part which is the inside of the AVR chip. Those details are Atmel confidential and proprietary. All that Arduino releases which is really “open hardware” is the PCB drawing, which is totally trivial and can be done in one hour or so if you ever used a CAD program.

@Don Cross : a lots of the bashing come from trivial project posted presumably only because they involve an Arduino, and which would never have been posted otherwise. To the point that people started to suspect there was some underlying interest pushing those articles.

Arduino did bring a lot of people to electronics though, and this alone is a good thing. Did it lower the overall quality of projects ? It’s subjective and not necessarily true. We see only what people take the time to publish, and if there are more “blink an LED” projects, I don’t see why there would be less good quality ones.

On the newsgroups I saw recently a thread saying that microcontrollers suck and only people using transistors and discrete logic have merit. Similar thinking here.

@vic, fair enough. When I see the lame stuff, I just skip over it and wait until the next thing that actually is interesting. I would say the Arduino project is what got me into electronics as a hobby in the first place. I never bought a pre-made Arduino. I bought the parts and built one myself using their published schematics. I started out with a device that could send and receive Morse Code: this would be very difficult to do without software (especially receiving irregularly keyed Morse from a human). Then I did my digital clock:

So, kudos to the Arduino project for making all their hardware and software freely available. So as a friendly challenge: all of you who are bored with stuff you see here, don’t just complain, show us what you got! :)

I don’t see how Uzebox is a “novel, creative and excellent microcontroller project” but Arduino is not. It’s exactly the same thing, a simple hardware with supporting software enabling easy development.

And please stop with the elitist crap, being “simple and convenient” is a good thing.

I hope no one pays for this, or even builds one. Notice the crystal is bent sideways and not sitting flat on the board. From experience, this will eventually lead to messy resets when in a noisy environment (i.e. near some motors).

I’m doing some pretty sophisticated stuff with micros and CPLD/FPGA’s. It irked me when someone recently asked me if I’m “playing with Arduinos”. Due to the hype, micro-controller projects are being seen as Arduino projects by the masses. Not good – here’s why…

I’m not trying to be an elitist here. I had to blink my first LED just like everyone else. But at least I was doing it with Industry standard tools and languages that would serve me long-term. Long-term, being adept with Arduino sketches is probably not going to serve you as well as using professional tool-chains and being adept in assembler and the likes of native C/C++.

Using the ATMega168/328 with the free AVR-Studio/WinAVR IDE is just as easy (if not easier) than dealing with the likes of the Arduino “IDE”. Plus you get a real emulator and with a cheap programmer, in-circuit debug.

Arduinos have their place. My peeve with Hack-a-Day is that they’re posting some pretty lame projects based on Arduinos here; this is not the place for that IMHO. HAD, if you are going to keep the base that put you on the map in the first place and not just strive for more advertising eyeballs, then don’t insult us with lame content. You’ll live longer, trust me.

@lekernel: It’s al;eady done, only they called it ubuntu and didn’t make money out of it.

to all the haters, if it’s such a bad product, stop whining about it and go and code/build something useful yourself….

I think some people really do enjoy the pain of cracking a nut with a rocket launcher, arduno is aimed at everyone, not 1337 C/linux programmers/electronics gurus, its made easy to help ease people into hardware/software interfacing, those that have the inclination and/or mental capacity will move on to using a ‘real’ compiner or ‘better’ hardware/platforms but only if they need to :)

It took me about 2 months to blink an led on avr. However once you have mastered that things start moving a lot faster.

With an arduino I was talking to an i2c rtc after a few hours.

If you only have a few hours at the weekend or need to see results quickly to stay interested there are worse ways to start than arduino.

It’s worth remembering that the AVR used with arduino does not have a lot of resources. The arduino function library is also not well suited to many tasks.
I suspect most people prepared to do the work to learn AVR will end up doing so anyway. Either because they want to use a different AVR or because the arduino abstractions are getting in the way or wasting cycles.

First, I am 100% new to micro controllers, the logic etc. I work in the building automation field using proprietary logic and hardware. HAD and Hacked Gadgets are just a few of my favorite sites and Ardruino posts have gotten me interested in the MC and programming. I am the type of person that likes to know how and why things tick, not just to make them tick. This being said, would the seasoned MC people suggest I learn C+ first, should I bother with PICs and what are some sites/ books you would recommend?

@Ammaddon: You really just need to get your hands on a few microcontrollers and dig right in. You have to make the decision between PIC and AVR. I choose AVR and it worked out, mostly because of great help I’ve found on the avrfreaks forums.

If you have an elementary background in any programing language (understand flow control, etc.) you can probably pick everything else up along the way. In other words, I don’t think you need to learn the language first.

How is this versionn of arduino different from any other. an arduino IS basically just a breakout board, this one just rids the unessesary rs232 circuitry and is very breadboard friendly.
personally I am arduinoing with the atmega chip plugged straight into a breadboard. once I finalize a design, I produce a specialized PCB.

I’m a rapid application developer for software in my day-job, and arduino lets me work the same way in hardware. Bodge it together, see if the concept is sound, Then dig out a decent AVR (Or PIC, but I prefer AVR for entirely arbitrary reasons) and a soldering iron if it looks promising.

To me the arduino is essentially an evolution of the breadboar (though certainly not a replacement)

I do not understand all this hate. Being a software guy, I found arduino to be a perfect easy way to get into electronics and hardware programming. Not the industry standard? I may care about this when going beyond – 5 minutes prototype building.

The puritanical elitists are missing the point. The Arduino and other similar boards are SUPPOSED to be easy and convenient. They are not meant to be the do-all or end-all but they are useful tools for proof of concept applications and rapid prototyping and development projects. A major benefit is they bring the new generation into a technical field by showing youngsters (and oldsters, like myself) how much fun they can have while learning and doing something useful. Anyone else remember how the dependence on morse code was slowly killing off Amateur Radio? If you just like doing things the hard way, might I suggest using punch cards to program your CPLDs/FPGAs or better yet refrain from using any modern appliances like keyboards or a mouse and just stick with hand coding in machine language with DIP switches. Personally I still shave with a straight razor but it would be absolutely foolish of me to insist that everyone else abandon their electric shavers or multi-bladed safety razors on the grounds that I think they aren’t using a ‘REAL’ razor.

I learned qbasic when I was 12, and I’m 28 now, so I have some hobbyist experience. I’ve been messing with electronics a little bit longer yet. years ago, I’ve gotten an atmel 2313 to blink a led, but never got further then that. I’ve never gotten really good with c++ yet either, although I plan on learning.

I picked up an arduino, plugged it in, and I had a program working on it a few minutes later. I was astonished how easy it was. 2 days later I had a finished and working project, and posted it on my website. I love it, but the next thing I do is buy a ICSP programmer and start messing with the boot loader and removing it completely. what it quickly turned into for me, is a very quick and easy prototype development base. I put together an idea within minutes on the arduino, then eventually move it to a stand-alone atmel chip if it’s made permanent.

the arduino was a great learning tool for me. where I gave up early on the steeper learning curve of an avr, the arduino simplifies much of it, and has a great community. I love having a quick response on forums when I’m stuck on something. it’s a shame stalling out on a project because the obvious is overlooked, or a rare roadblock is found.