the future of arduino

Hello,

First of all i think the arduino is a great project, let me be clear on that.

I was wondering dough, about the main core chip, atmega328; it is a pretty old chip from 1996, its is 16 years old now.
Looking at the manufacturer of this chip Amtel, there have been a lot new of chips since.
Meanwhile new micro PC designs resulted in the rasberi-pi; which although cannt do analog read, it has about 20 digital pins.
Besides it has usb, ethernet, sound, video, card reader, it also costs more, but not an alarming level, its pretty close in fact.

I think for a micro controller video isnt that important, but might attract more people who want to program with it.
However ethernet (or wifi), and usb, and a card reader; might be the bare minimum for a nextgen product,
optional is low power consumption, or another option (version) to be able to handle 24 or 30v input output (automotive)

The latest official release is dough the arduino uno.. still using an atmega328 equivalent.
To stay popular, maybe something more is needed.

Is there progress or a general direction goal to a minimal microprocessor slightly more computer like next gen.. a beta board design perhaps?

One of the attractions is, the chip is easy to use and understand (and cheap!). If they change things (like the Leonardo for example) then a lot of existing libraries will stop working, because they will be relying on having the exact hardware.

the main core chip, atmega328; it is a pretty old chip from 1996

Where do you get that? As far as I can tell, the atmega328 was released about 2007 ("initial revision" of the datasheet.)
The duemilanove was released in 2009 and initially shipped with the m168 cpu because the 328 wasn't yet commonly available. And I think it was 2010 that saw "the great 328 shortage" !

You can find numerous discussions here on the "Arduino Due", using one of the Atmel ARM chips, and whether it will be useful or not. Not to mention many discussions elsewhere on whether or not 32bit cpus are going to "kill" 8bit chips.

And there are plenty of chips with more IO if you're after that. The 1284 and 1280/2560 will give you more and lots more IO and additional hardware serial ports too, all you need is the proper buffering for your signals.

PGTBOOS:
To stay popular, maybe something more is needed.

To stay popular, in my book, it stays stable. That way the libraries that have been developed over the last few years continue to work. This is, even now, not totally happening because the designers made some fundamental changes, like renaming the core "include" file, and changing functions like "receive" to "read" and "send" to "write", breaking a lot of existing code.

It would be a lot worse if, every six months, a new "cooler" chip was introduced, and a lot of code had to be rewritten. Remember a lot of libraries are written by unpaid amateurs. They don't necessarily have the time or inclination to keep updating them all the time.

And at the end of the day, the existing chip does what is required of it for the sort of applications it was designed for. Alarm clocks. Security systems. Tank level monitors. Robot controllers.

Besides it has usb, ethernet, sound, video, ...

I think that is just a different market. Your water tank monitor, beer manufacturing device, or fishtank feeding system, doesn't need sound, video, ethernet etc.

Do not agree with that. Your water tank monitor, beer manufacturing device, or fishtank feeding system, DOES need ethernet or wifi, for remote control.

dragonet80:

[quote author=Nick Gammon link=topic=111924.msg841641#msg841641 date=1340865879]
I think that is just a different market. Your water tank monitor, beer manufacturing device, or fishtank feeding system, doesn't need sound, video, ethernet etc.

Do not agree with that. Your water tank monitor, beer manufacturing device, or fishtank feeding system, DOES need ethernet or wifi, for remote control.
[/quote]

And there are shields and other methods that currently allow the atmega328-based Arduino boards to use either ethernet or wifi (and sound, video, etc... for that matter), if that is deemed necessary for a project. Yes, it would be more convenient for some with a chip that had more of those features built-in. However, the main purpose of a microcontroller is to control and communicate with other electrical and electromechanical devices. The Uno can do that with enough speed and processing capabilities for a huge number of potential applications (remember that the first generation of true personal computers (circa 1975 to 1984) had less than half the processing speed of an 16MHz Uno, and many only a quarter or less). IMHO, the Uno and it's derivatives will continue to be viable as long as the atmega328 is available in quantities large enough to be affordable by hobbyists, and that will be several years at least.

Backwards compatibility is always going to be a problem. You either are limited to boards that made sense back when you started, or you upgrade.

Personally, I just started programming on the Arduino, but I doubt in 2-3 years time the current boards will be my main focus, as the memory issues, particularly for video output are starting to be issues in projects I am thinking about. With video, I expect that the processor speed will also beome a gating feature. Whether the board says 'Arduino' on the front or not is a separate issue from what the underlying chip is. I could see that it might be 'Arduino', but I suspect it will be beefier than an AVR 8-bit processor.

Personally I would prefer a cleaner design in terms of the pins, ideally where you have 20+ pins, any of which can be the target of an interrupt, digital input, digital output, analog input, and analog output (such as PVM). I understand why these things come about, it is just I would prefer not to have to worry that I only have 6 PWM pins for instance.

Also, for embedded work, I probably would prefer not to have a full Linux distro like Raspberry Pi currently has.

The Raspberry Pi is not suitable for about 80% of projects we do with the arduino because while it might be able to do more instructions per second, it is not running in real time because of the operating system.
On the other hand 80% of the projects you can do on the Pi you can't do on an Arduino, like stuff with video. So the two systems are almost totally different.

I agree. And I think that most non-programming types (Like me :disappointed_relieved:) would quickly become discouraged if most of the resources, tutorials, etc. floating around the web suddenly became unworkable. I think that getting the simple things working encourages folks to move on to the more difficult stuff and increases the resources available.

Any way, the age of a chip is not really an issue - I know it is slightly different but look at the 555 timer - introduced in 1972 and still the simplest timer chip on the market - OK, it may not be that precise or accurate and there are more accurate ones around - but they are difficult to use and no real competition to the 555 which is still used for lots of projects where the time does not have to be exact. The other advantage of this chip is price. They can be as little as £0.30 ($0.46).

I think that most of these points also apply to this issue

Grumpy_Mike:
The Raspberry Pi is not suitable for about 80% of projects we do with the arduino because while it might be able to do more instructions per second, it is not running in real time because of the operating system.

Nothing says you have to run a general purpose Linux on the R-pi. I could imagine putting a real-time OS or even no OS on it. It is just somebody has to create the framework to use it. I could imagine if there is desire to do R-pi in hard or soft real time environments, people will start with the Linux kernel and make suitable improvements. Given R-pi has started shipping, I would expect to see R-pi real time improvements in the future.

There are also quite a few commercial vendors of real time OSes for ARM. Many of which are likely too expensive for the hobby programmer.

I can imagine putting a real time OS on it, but not no OS.

I would expect to see R-pi real time improvements in the future.

Getting what they have to actually work would be an improvement.
To get the best you will have to abandon Linux altogether. The RISCOS porting project offers the most promise at the moment. While it is not real time the interrupts can easly be turned off with that.