Arduino Forum

Development => Suggestions for the Arduino Project => Topic started by: stevenvh on May 08, 2015, 01:29 pm

Title: Time to retire ATmega328P?
Post by: stevenvh on May 08, 2015, 01:29 pm
The AVR-based Arduino is now ten years old, and I think it's time for the AVR's retirement. It was a good controller in its day, but now it's hopelessly passé. The future (AND the present!) is ARM. There is an ARM-based Arduino Due, but what I mean is a Uno replacement. Same price of even cheaper. For instance the NXP LPC824 has:

- more I/O
- more I2C buses
- more SPI buses
- more USARTs
- a 30 MHz clock
- 12 A/D channels
- 12-bit A/D resolution
- etc. etc.

yet it's 30% cheaper than the ATmega328P. (It doesn't have EEPROM, but you can throw one in for 20 cents.)
The ATmega328P is dead, or should be. I really hope you'll consider an ARM M0/M0+ for the next Uno version/replacement.
Title: Re: Time to retire ATmega328P?
Post by: C-F-K on May 08, 2015, 02:13 pm
My 2 cent's?

Yes and no...

The LPC824 has less I/O pins than a 328P and the same 32kB memory, so those are no advantages.
When you want a board with more I/O pins just for connecting stuff, the 328P is better.

Yes you can have a I2C expander or such on a LPC824, but that's an extra IC...

It all depends on what your project needs.
The UNO is an UNO, and a ARM M0/M0+ board is what it is, all with it's own advantages and disadvantages.
Title: Re: Time to retire ATmega328P?
Post by: stevenvh on May 08, 2015, 02:58 pm
The LPC824M201JHI33 has 29 GPIO, ATmega328P has 23. And I mention half a dozen other points on which the LPC824 is better, at a lower price! Would I want all these extras on a board the same price? You bet.

Advantages and disadvantages, true, but my point is that IMO the ATmega328P is outdated. There's such a thing as progress, right? Today you don't drive the car you had 20 years ago, or watch the TV set you had 20 years ago, do you?
Maybe the Arduino team needs more visionaries...
Title: Re: Time to retire ATmega328P?
Post by: robtillaart on May 08, 2015, 04:42 pm
imho Arduino is the "high level" programming abstraction of the real low level register stuff. And not to forget the shield pin layout.

It is made popular on the AVR series but available on faster AND slower (e.g. tiny) processors and there are several "Arduino" compatible boards that run the software and/or can use the shields. These include ARM processors based boards.







Title: Re: Time to retire ATmega328P?
Post by: bperrybap on May 09, 2015, 05:58 pm
I say YES.
My view is even a bigger in that I think it is time to start moving away from all the AVR parts given that there are alternatives that offer significantly more and better resources at similar and sometimes even better price points.
Also moving away from the AVR allows starting to phase in processors that are not only faster but easier to use for novices since only the AVR has the split memory address spaces that requires special user coding to deal with.
Also, the other processors have significantly more ram.

I place a high value on having const work correctly and more ram.
This means that novices don't have to learn proprietary AVR specific kludges like the progmem macros and their corresponding declarations and access routines since const "just works" as it should on all the other processors.. They also won't have to play games or learn optimizing techniques just to make fit into the part nearly as soon as there are so many more resources available on the other parts. And finally, there are many types of additional applications that start to become possible once there is more ram available.

I think that a board based on the pic32 PIC32MX250F128B would be a great replacement for the m328p based boards.
To me, this processor is what would be used if Arduino were starting all over again.
This part is also a 28 pin DIP so it works great for hobbyists and DIY projects.

There are many advantages of this part over the 328p
A few of the biggest ones being faster, lots more flash and ram, 3v with 5v tolerant inputs, and no more AVR PROGMEM crap to deal with. const works like it should.

Given that it is basically the same cost as a m328p I see little reason to continue on with the 328p.

Here are some more of the advantages of this pic32 part over the m328p AVR:

- const "just works" vs having to use the AVR proprietary progmem support
- 32 bit vs 8 bit
- 40mhz vs 16mhz (typical values not the absolute max possible on each)
- 128k flash vs 32k
- 32k ram vs 2k
- DMA capability
- native USB support
- 2 uarts vs 1
- 2 spi vs 1
- 2 i2c vs 1
- 3v with 5v tolerant inputs

About the only big downside to using many of the newer processors including the pi32 over the AVR is that that output drive capability of the pins is significantly lower.  While this can be deal breaker for some applications like driving LEDs, for many applications the additional and faster resources are more than worth the price of losing that capability.


My strategy would be to eliminate production of m328p boards, along with releasing a pic32 DIP based board.
There are other AVR based boards for those that still want the AVR.
The clone market beats the crap out of the margins anyway for the m328p boards and a new pic32 DIP based board could open up and new markets with higher margins than the existing m328p boards can offer.
Then, over time, start to phase out the other AVR based products based on shipping volumes.

Eventually moving everything over to the better micro-controllers and leave the 8 bit AVR world behind.



--- bill

Title: Re: Time to retire ATmega328P?
Post by: robtillaart on May 09, 2015, 06:45 pm
For me there is one issue that the AVR does not solve

- support for double (64 bit) math - preferably in HW.

I have seen many posts (esp GPS related) where floats just are not precise enough.

Title: Re: Time to retire ATmega328P?
Post by: pert on May 14, 2015, 11:59 pm
One huge advantage of the ATmega328P is that it's available in a through hole package which means a beginner can prototype with an Arduino board and then be able to easily solder the same MCU in their finished project. Sure there are faster and cheaper ARMs, but the ATmega328P is sufficient for most Arduino applications. For a hobbyist the price difference really doesn't matter.
Title: Re: Time to retire ATmega328P?
Post by: bperrybap on May 15, 2015, 12:50 am
One huge advantage of the ATmega328P is that it's available in a through hole package which means a beginner can prototype with an Arduino board and then be able to easily solder the same MCU in their finished project. Sure there are faster and cheaper ARMs, but the ATmega328P is sufficient for most Arduino applications. For a hobbyist the price difference really doesn't matter.
Not over the pic32 part I described in post #4:
The PIC32MX250F128B is also a 28 pin DIP

http://forum.arduino.cc/index.php?topic=321571.msg2224799#msg2224799 (http://forum.arduino.cc/index.php?topic=321571.msg2224799#msg2224799)
which is why I said if the Arduino were starting over today it would probably pick that part over the 8 bit M328p.

For the same price as a 8 bit AVR, you get a 28pin DIP package with a much faster 32 bit processor with tons more resources including 128k of flash with 32k of ram and none of the progmem crap to deal with since const works as it is supposed to.

--- bill
Title: Re: Time to retire ATmega328P?
Post by: pert on May 15, 2015, 01:02 am
Yes I agree that is an excellent choice for an ATmega328P replacement. It's nice to see there are still some good microcontroller options in a DIP package. I was referring to the NXP LPC824 ARM the OP was recommending, I should have made that clear.
Title: Re: Time to retire ATmega328P?
Post by: bperrybap on May 15, 2015, 01:15 am
In the bigger picture I think that the free market will resolve this.
If people stop buying the AVR based products, then those products will self retire.
There are many other options available out there, including in DIP packages, so if you want something faster with more resources, buy that instead.

Use the old "Vote with your Wallet" method.

--- bill
Title: Re: Time to retire ATmega328P?
Post by: pert on May 15, 2015, 01:37 am
There are many other options available out there, including in DIP packages, so if you want something faster with more resources, buy that instead.

Use the old "Vote with your Wallet" method.
If you want to buy an Arduino then those options are not on the ballot and voting for the ARM candidate will make a much larger dent in your wallet. So most people will continue to vote AVR. But really the Arduino buyer's vote is insignificant compared to other microcontroller buyers who I'm sure are overwhelmingly moving away from AVR so I think that it is inevitable that the ATmega328P will be retired in the near future. Unfortunately I see the same thing happening to through hole packages.
Title: Re: Time to retire ATmega328P?
Post by: bperrybap on May 15, 2015, 02:19 am
If you want to buy an Arduino then those options are not on the ballot and voting for the ARM candidate will make a much larger dent in your wallet. So most people will continue to vote AVR.
I'm not understanding what you are trying to say about the alternatives to m328p AVR based "..duinos" not being "on the ballot".
What I'm saying is if you don't want the 8 bit AVR based stuff and want something better while still using the "arduino" programming environment, just vote with your wallet and buy something else that you percieve to be better.

There are other alternatives to the m328p based duinos.

For example here are 2 alternatives you could buy:
Teensy LC (arm based and DIP compatible) for under $12 USD.
28 pin dip based pic32 PIC32MX250F128B chips pre-programmed with bootloaders for $3.80 USD quantity 1 for DIY solutions.

Both of those offer significant speed and resource improvements over the 8 bit m328 and also have support for an arduino IDE.
And neither of them requires jumping through all the progmem hoops required by the AVR to use constant data.

Title: Re: Time to retire ATmega328P?
Post by: ODwyerPW on May 27, 2015, 02:20 am
I think the ZERO accomplishes this... provided it gets sold at a reasonable cost.  Only down side is of the ZERO in relation to UNO for me is the lack of EEPROM space to store calibration constants* and older 5V shields.

*Although I just read the note about using a few pages of flash memory as nonviolatile storage.  Which is probably sufficient to occasionally write offsets/slope data for calibrating sensors....

Looking forward to trying the ZERO.
Title: Re: Time to retire ATmega328P?
Post by: 68tjs on May 27, 2015, 09:08 pm
Problem of ATMEL ARM is they are not 5V tolerant as all STM32 and NXP.

DIP package are  completely obsolete.
Buy a micro  in DIP package is more expensive than buying a mini board ready for use with a form factor mini-pro or nano.
 This is due to the fact that the manufacturer of these mini board purchased the IC by thousands.
Title: Re: Time to retire ATmega328P?
Post by: CrossRoads on May 27, 2015, 09:17 pm
Quote
DIP package are  completely obsolete.
Baloney.
If they were obsolete, the distributors would all have them listed as "Discontinued", "End of Life", etc. and they are not:
http://www.digikey.com/product-search/en?vendor=0&keywords=atmega328p-pu (http://www.digikey.com/product-search/en?vendor=0&keywords=atmega328p-pu)
with >40,000 pieces in stock.
You want to buy a mini board that is assembled by thousands using underpriced labor and gov't subsized free shipping to undercut the rest of the world, and sure, you can get one cheaper.
Title: Re: Time to retire ATmega328P?
Post by: 68tjs on May 28, 2015, 12:05 am
You do not want to understand you.

In this discussion there are two concepts:

1) Is Atmel  will continue to make avr ?
IMHO  answer is YES.
Anyway when Atmel will announce the end of avr there will be the possibility of buying millions of units in a last order. It's always the way it happens.

2) Is the avr technology obsolete ?
IMHO  answer is difficult because there is a technical side, a practical side and an irrational dimension.
- Technical side:
 IMHO   answer is NO.
 It is often enough to think and avoid costly programming methods in time and memory usage.

- Practicality.
IMHO  answer is  difficult. How long will it continue to exist foundry for 90nm ?
It is an economic problem. I can't answer.

- Irrational side:
  - Much buyers of Arduino board, or other board, are not specialists.
     They tend to choose the biggest, the strongest, even if it is useless.
  - For advanced users still use the same component ends up being boring.


Consequences:
If a  board manufacturer (Arduino or NXP or ST or Chinese), mostly sells boards based on ARM it will stop  to make boards based on 8 bits micro-controler.  Keep a single product line is the solution that allows  maximum profits.
 
Another point: all products created in US or in Europe are copied in China and sold for a very low price.
The only solution is to always introduce innovative products even if they are not really necessary.
Title: Re: Time to retire ATmega328P?
Post by: 68tjs on May 28, 2015, 12:15 am

Quote
If they were obsolete, the distributors would all have them listed as "Discontinued", "End of Life", etc. and they are not:
(http://"http://forum.arduino.cc/index.php?msg=2250459")
I think we do not give the same meaning to the word "obsolete".
 Probably our culture are not the same side of the Atlantic.

 Here, "obsolete" does not mean "not found", it means that it's products or methods of the past.
To day you can always write your mail with a typewriter even it is "obsolete", there always exists that work but I think you're using a PC with a word processor and printer. :smiley-mr-green:
Title: Re: Time to retire ATmega328P?
Post by: CrossRoads on May 28, 2015, 12:40 am
Quote
adjective
1.
no longer in general use; fallen into disuse:
an obsolete expression.
2.
of a discarded or outmoded type; out of date:
an obsolete battleship.
3.
(of a linguistic form) no longer in use, especially, out of use for at least the past century.
Compare archaic (http://dictionary.reference.com/browse/archaic).
4.
effaced by wearing down or away.
5.
Biology. imperfectly developed or rudimentary in comparison with the corresponding character in other individuals, as of the opposite sex or of a related species.
[color]


You are correct, my understanding of the word as it relates to electronics does not fit any of those definitions.  If a part is still being manufactured & consumed by the mass market and the manufacturer continues to supply and support it, it is not obsolete.[/color]
Title: Re: Time to retire ATmega328P?
Post by: CrossRoads on May 28, 2015, 12:50 am
The PIC has some disadvantages - 3.3V output and only 10mA supply current, so of limited use for driving LEDs (could be limited to Red only), small motors, transistors, couldn't drive small telecom relays - so all the stuff that the '328P is good for in embedded projects without needing extra components.
More expensive - $3.15/100 vs  vs $2.71/100 (digikey pricing)
Does have nice features for software projects, if you're into writing big software projects.
Title: Re: Time to retire ATmega328P?
Post by: odometer on Jul 05, 2015, 09:09 pm
For me there is one issue that the AVR does not solve

- support for double (64 bit) math - preferably in HW.

I have seen many posts (esp GPS related) where floats just are not precise enough.


I was thinking of writing a library for that sort of thing, but the coding would likely be too complicated for me.

As for myself, I wonder whether floating-point arithmetic really belongs on an AVR. If it were up to me, I would just use fixed-point arithmetic (https://en.wikipedia.org/wiki/Fixed-point_arithmetic) and be done with it.
Title: Re: Time to retire ATmega328P?
Post by: robtillaart on Jul 05, 2015, 10:47 pm
floats are mostly easy for us mere humans, when we do not need to have an exact number.

If I count apples I want to be exact. If I want the distance to the moon, I want an order of magnitude and that is where floats come in.

@Odometer
BY chance do you have a link to a good fixed point lib that includes functions like sqrt and trigonometry?
(I'm familiar with the big number lib )

Found this one - https://code.google.com/p/libfixmath/ - for my todo list
Title: Re: Time to retire ATmega328P?
Post by: odometer on Jul 06, 2015, 04:28 am
Quote
@Odometer
BY chance do you have a link to a good fixed point lib that includes functions like sqrt and trigonometry?
(I'm familiar with the big number lib )

Found this one - https://code.google.com/p/libfixmath/ - for my todo list
Not good, only 16 bits after the radix point.
Maybe use it as a model to construct a more precise library, though.

I wonder if it would be OK to use, say, 64-bit integers. I wonder which would be better, 16.48 format or 32.32 format.
Title: Re: Time to retire ATmega328P?
Post by: fjrg76 on Jul 12, 2015, 04:55 am
No one is saying ATMEGA328 is obsolete. What is starting to be outdated are the 8 bit architectures. ARM (in all its flavours) is the future; and for the embedded market the Cortex M branch is the future.

LPC824 is better than ATMEGA328
Title: Re: Time to retire ATmega328P?
Post by: fjrg76 on Jul 12, 2015, 05:18 am
LPC824 is better than ATMEGA328 in all aspects, from performance to price. For the Arduino's end user the change to a newer architecture (in regards to the Arduino One) is painless.

Some interesting features that should be taken into account for the Arduino designers are:

a) LPC824 is faster (Up to 30 MHz). It includes its own 12 MHz on-chip oscillator at 1.5% accuracy. On-chip oscillator + on-chip PLL = core running at 24 MHZ
b) LPC824 is cheaper
c) 32 bit bus lets do more work with less programming instructions
d) 16 bit instructions means more code in less flash
e) Imagine all you can do with 8 KB in RAM
f) Better power-save profiles. It means you might power the board with batteries
g) Better peripherals
h) No external programmer other than a UART.
i) 12-bit ADC with a sample rate up to 1.2 Msamples per second
j) One of my best LPC824 features: the SWITCH MATRIX. If you are not aware of what this means here is a short explanation: you can move any peripheral function to (almost) any pin (**power pins are not movable**).
k) All that and many more features plus the Cortex-M0+ beauties: 32 bits bus, 16 bit instructions, NVIC and SysTick included at the very kernel.

I might continue listing the LPC824 features but it's better that you can see it by yourself:

http://www.mouser.com/ds/2/302/LPC82X-466467.pdf
Title: Re: Time to retire ATmega328P?
Post by: CrossRoads on Jul 12, 2015, 08:12 am
Drawbacks: SMD only, no fixing your board by replacing the chip. Need the 32-pin leadless part to get a comparable qty of IO as the '328P.

32K Flash, 8K SRAM.  I could see a lot of the flash being used for setting up the flexible hardware configuration.

('1284P has 128K flash, 16K SRAM. And available in a DIP (not an official board, but pretty handy).)

"High-current source output driver (20 mA) on four pins."  Not the handiest - need to add external hardware for simply driving LEDs for example, leading to a multichip board right off the bat. 

Does have a lot of nice features. The input switch matrix would need to be addressed by the IDE - I can see lots of confusion there getting that set up.

Maybe have the SMD part as a module to go on a board so it could be swapped out when folks smoke it.
Title: Re: Time to retire ATmega328P?
Post by: westfw on Jul 17, 2015, 03:53 am
Quote
LPC824 is better than ATMEGA328 in all aspects
That seems doubtfull.
Quote
c) 32 bit bus lets do more work with less programming instructions
For some operations.  An m328 AVR can set or toggle an IO bit (or a byte register bit) in a single 16bit instruction.  Not so an ARM.

Quote
d) 16 bit instructions means more code in less flash
Most AVR instructions are also 16 bits.

Quote
g) Better peripherals
More complicated peripherals.

OTOH, Switch Matrix is pretty awesome.  (although... I'm not exactly sure how to take advantage of it in an Arduino context.)

Have you implemented an Arduino "core" for LPC824?  If so, how big is "Blink."  One problem I've seen with a lot of the ARMs is that the vendor libraries are not very space-efficient.  That used to be fine, when most of the chips had 128k+ of flash memory (like Due and Zero), but it starts to worry me on these smaller (32k or less) chips...
Title: Re: Time to retire ATmega328P?
Post by: Pinaki_Gupta_1982 on Jul 25, 2015, 06:09 pm
I'm very new to this domain. May I ask a silly question? Is there any bread-board for smd parts? Do the ARMs have ADC/DAC built-in? Do they have a large flash+eeprom+ram inside? Do they run at 5V? Are they easy to solder? Is there any veroboard for smd parts? If all these meets I will jump to arm. Otherwise I think people those who are learning will be using DIP based AVRs but 8-bit DIP AVRs will be educational and instructional purpose tool only, may be used when prototyping a project, the same is true to the 'Through The Hole' parts also.
Title: Re: Time to retire ATmega328P?
Post by: Isaac96 on Jul 25, 2015, 10:20 pm
Many ARMs have ADCs and DACs. The Arduino Due has a large ARM chip with both of those features, as does Teensy 3.1.
The Due is 3.3V only and cannot take 5V inputs, while the Teensy operates at 3.3V but will tolerate 5V on its inputs.
EDIT Also, many ARMs cannot supply much current on their outputs. That makes it hard to power LEDs.
Title: Re: Time to retire ATmega328P?
Post by: westfw on Jul 26, 2015, 12:12 am
Quote
Is there any bread-board for smd parts?
Is there any veroboard for smd parts?
The usual solution is something like a breakout board that will plug into a breadboard, or a less-specialized "Schmartboard" (specifically designed to be easier to solder.)  Such stuff appears all over Tindie.   Of course, if you were moving to ARM for lower cost, these "extras" would blow your budget.

Quote
Do the ARMs have ADC/DAC built-in?
Yep.

Quote
Do they have a large flash+eeprom+ram inside?
Yep.
I just picked an STM32L476 "Discovery" Board (MSRP about $20).  The chip (http://www.st.com/web/catalog/mmc/FM141/SC1544/SS1687/LN1874/PF260094) has 1M Flash, 128K RAM, 12bit A2D and D2A, 6 uarts, native USB, and more.


Quote
Do they run at 5V?
Mostly not, but some do.  Atmel has announced a "SAMC" series that has 5V operation.  The Cypress PSoC parts will run at 5V...

Quote
Are they easy to solder?
It is reported that they're not as bad as they look, assuming you have a pretty high-quality PCB.  Which is ok, given that they look awful, and high-quality PCBs are a lot easier to get than they used to be.

The real issue shows up when your program stops fitting in an ATmega328, or you need some modern peripheral like USB or Ethernet.  Then you're pretty much stuck with SMT and 3.3V anyway, and you get to decide whether you're going to bite the bullet, or deal with module-level components (Pro Mini, Teensy, Maple Mini, etc, etc.  All similarly priced.)

All that said, there is little reason to "retire" the 328 for those problems that don't stress it...

Title: Re: Time to retire ATmega328P?
Post by: Avamander on Jul 26, 2015, 11:12 am
The PIC has some disadvantages - 3.3V output and only 10mA supply current, so of limited use for driving LEDs (could be limited to Red only), small motors, transistors, couldn't drive small telecom relays - so all the stuff that the '328P is good for in embedded projects without needing extra components.
More expensive - $3.15/100 vs  vs $2.71/100 (digikey pricing)
Does have nice features for software projects, if you're into writing big software projects.
If I'd knew how to program those ARM processors, I'd dump Arduino IDE instantly. I seriously hate it sometimes, but there are no solutions as simple as it is (for Linux).

People have to deal with workarounds and removing features to deal with the low space Uno's and Nano's have. As soon as one wishes to use any networking, GPS or anything else other than simple led blinking.

Multiple SPI ports would be a godsend (no more bitbanged SPI!), 3V logic with 5V tolerance would be nice dealing with ESP alongside 5V LCD's.

Claiming that ARM chips are newbie hostile isn't a valid argument, you, smarter ones can make it as simple as programming ATmega328s. For beginners adding one more resistor and a transistor to blink a led would not be hard, would take a bit more space on a breadboard, but seriously, we can handle it. A lot worse is to deal with logic level incompactibilities, bitbanging and memory and space limits later on.
Title: Re: Time to retire ATmega328P?
Post by: Isaac96 on Jul 26, 2015, 11:10 pm
The Teensy is a great product. Costs the same amount as a Pro Mini (in the Arduino store) and has  built-in USB,
(the picture from the product page)

Microcontroller
MK20DX256VLH7
Operating Voltage
3.3V
Input Voltage (limit)
5V
Digital I/O Pins
34
PWM Digital I/O Pins
12
Analog Input Pins
21
Analog Output Pins
1
Flash Memory
256 KB
SRAM
64 KB
EEPROM
2
Clock Speed
72 MHz

It also has 2 SPI ports. And the emulation for the AVR is amazing.
There is also CAN bus functionality.
Title: Re: Time to retire ATmega328P?
Post by: odometer on Jul 27, 2015, 01:19 am
People have to deal with workarounds and removing features to deal with the low space Uno's and Nano's have. As soon as one wishes to use any networking, GPS or anything else other than simple led blinking.
That would be cool for an info Web site:


Which board is right for you?

Question #1:
Do you want to
(a) just blink an LED
or
(b) do more than just blink an LED?


Title: Re: Time to retire ATmega328P?
Post by: Pinaki_Gupta_1982 on Jul 27, 2015, 09:45 am
I don't understand why Atmel does not release a 48 pin native USB based ADC/DAC included DIP packed ARM. Question is not who will buy. Who buy AVR? We.
When they released AVR who were their target customers? All these does not matter. Initially that might be a little problem but they will find intended customers at the end.
If an ARM like this comes into the open market we can think about UNO R3 ARM. At least we will be able to soil our hands with ARM development process with no or little effort.
Things will be a lot easy.
Title: Re: Time to retire ATmega328P?
Post by: Pinaki_Gupta_1982 on Jul 27, 2015, 10:35 am
Just now I found an ARM  LPC1114 (https://blog.adafruit.com/2012/03/13/32-bit-meet-dip-arm-cortex-m0-in-dip-packages/) DIP packed IC. Just google 'arm in dip package'.
It application has been mentioned here (http://www.pittnerovi.com/jiri/hobby/electronics/lpc1114/).
Now our Arduino can create an ARM board based on this IC.
One question, Can I create a JTAG or alike programmer with UNO R3 board? Can I create a usbasp (http://www.fischl.de/usbasp/) like ARM programmer? I would not mind using gcc-arm.
Title: Re: Time to retire ATmega328P?
Post by: 68tjs on Jul 27, 2015, 08:54 pm
Quote
When they released AVR who were their target customers?
Professionals and only professionals.

You, like me, represent a very very small percentage of Atmel  customers and it is happy for Atmel.
Our opinion has no weight compared to that of professionals

Professionals refuse DIP: too big, too long to assemble.
In total cost of a product percentage of pcb area is very important so packages have to be smaller as possible.

Currently professionals prefer SMD and BGA.
Tomorrow they will use only chip on board (COB) or Wafer Size Package.

You'll have to admit that it will be increasingly difficult to make our board ourselves and  we will have to content ourselves to  assemble manufactured modules.

Regarding the ATmega328 IMHO it is still usable for many years.
 The real question is: "How long Atmel will maintain production lines etching 90nm".
IMHO the answer will not be technical but financial.
Title: Re: Time to retire ATmega328P?
Post by: Pinaki_Gupta_1982 on Jul 28, 2015, 02:04 pm
Quote
You'll have to admit that it will be increasingly difficult to make our board ourselves and  we will have to content ourselves to  assemble manufactured modules.
Yes, we are already doing this. We cannot make our own motherboards. It will be too difficult to assemble a large circuitry. We are also buying modules BMP, motion analyzer like this one (http://www.ebay.in/itm/GY-521-MPU-6050-Module-3-Axis-Gyroscope-Accelerometer-for-Arduino-/151340690164), or Wi-Fi like this (http://www.ebay.in/itm/252015668808?aff_source=Sok-Goog) etc are examples.
But for a small custom circuit their production method is not feasible. Their method is suitable for a commonly and widely used products like our arduino boards, sensors, computer SMPS, motherboards, mobile phones, TV set, washing machines, automobile electronics, calculators etc, not for a custom solution.
Also there is a prototyping stage in every manufacturing process. Oh! I forgot to tell a little story, what about schools and colleges? So DIP is not going to be obsolete. But it will be limited within a few types of usages and the price will be prohibitively high.

Quote
Regarding the ATmega328 IMHO it is still usable for many years.
 The real question is: "How long Atmel will maintain production lines etching 90nm".
IMHO the answer will not be technical but financial.
But Atmel is still manufacturing ATMEGA328 because there are other customers who buy 328. And NXP has released their DIP packaged ARM  LPC1114 (https://blog.adafruit.com/2012/03/13/32-bit-meet-dip-arm-cortex-m0-in-dip-packages/). All we need a USB-TTL converter, find a description (http://www.pittnerovi.com/jiri/hobby/electronics/lpc1114/). We can make our own USB-TTL if we hate to buy it. There are AVR-CDC (http://www.recursion.jp/avrcdc/), V-USB (https://www.obdev.at/products/vusb/index.html) based on existing AVRs. Many China manufacturers are shipping cheap Chinese SMD versions of AVR-CDC here in India. These are cheap and small. So we can start our ARM Arduino with NXP even if Atmel stops the DIP AVR production line.
And why not use LPC1114? Its all
   50 MHz
   32KB Flash
   8KB SRAM
   SPI
   I2C
   USART
   10-bit ADC
   1×16-bit timer
   2×32-bit timers
   Cortex M0+
Best part its 1 USD. We expect at least at 1.6-1.8 USD when it will reach the local market. Atmega is still much above 2 USD. I bought an ATMEGA328-PU from an old stock rack from a local shop for 150 Indian Rupees (nearly 2.5 USD).
If we wish we can get into ARM and DIP at the same time. I expect our next Arduino UNO R3 ARM now.
Yes a lot of trouble is waiting there. We have to add a new tool-chain GCC-ARM plus we will have to configure our IDE so that it can compile ihex for ARM via GCC-ARM from Arduino C++ ino codes.
But it is possible if we wish.

Title: Re: Time to retire ATmega328P?
Post by: Isaac96 on Jul 28, 2015, 09:14 pm
There are already ARM boards in Boards Manager. The STM32 core is an example of porting to 32-bit ARM processors, and works well (so I've been told). http://stm32duino.com (http://stm32duino.com)
Title: Re: Time to retire ATmega328P?
Post by: westfw on Jul 29, 2015, 03:02 am
Quote
And why not use LPC1114? [in DIP]  Its all
   32KB Flash
   8KB SRAM
Well, to start with, it doesn't have the stuff like MORE FLASH MEMORY that we wanted an ARM to have, and there's no growth path to another DIP chip that does have more flash...

Quote
Best part its 1 USD. We expect at least at 1.6-1.8 USD when it will reach the local market.
Digikey and Mouser are both charging nearly $6 for the LPC1114 in DIP.
Also note that it's a "wide" DIP; I don't know if you can fit it on an arduino form-factor board.

Title: Re: Time to retire ATmega328P?
Post by: Pinaki_Gupta_1982 on Aug 01, 2015, 06:40 pm
Quote
it doesn't have the stuff like MORE FLASH MEMORY that we wanted an ARM to have
Well, this chip is meant to replace the 8-bit micro available in DIP package. This chip may not have much memory, but they (NXP) may release another with more memory. Memory has nothing to do with the ARM architecture. Our ATMEGA328 has the same amount that does not bother us.

Quote
there's no growth path to another DIP chip that does have more flash...
This is not the end of anything. ARM is not limited with this particular chip. We might have another DIP with a better memory or even another SMD ARM from a different vendor. Since the architecture is same, ARM, we won't have to pay very extra efforts. At anytime we can switch to an SMD version of another ARM. So nothing is in stake.
How do we think 8-bit DIP AVRs have a better growth path! AVR will remain, but a better AVR will always be SMD. So whats our problem to jump into ARM. It is at least learning a new platform with a DIP. And we don't need very specialized tools/skills to deal with a DIP, all are available at our home. We should not compare everything based on some negligible aspects. Its not AVR vs ARM, its just riding a new Motorbike. Even if it does not have a better memory still it is ARM, and ARM has a growth path. Its the future. Not only this. It has a better clock speed, 50MHz at least. And Arduino is not going to kill their UNO boards with AVR chips. It will just be another weapon in their arsenal. So whats wrong with it!