Why I am considering PIC even though still in love with Arduino

With Arduino, it was love at first sight. I love the Arduino IDE. However, my customers do not like products based on AVR because they are expensive compared to PIC. At the same price point, AVR 8-bit MCUs have fewer hardware peripherals, SRAM and flash. Flash size for Atmega328 is only 32KB. To move up, one got to use Atmega1280 and the price difference is huge. For PIC, there are much more variety of MCUs to use at the correct price point.

To the experienced engineers here, are these considerations valid? Please tell me if I am wrong because I am still very much in love with Arduino.

lightaiyee:
With Arduino, it was love at first sight. I love the Arduino IDE. However, my customers do not like products based on AVR because they are expensive compared to PIC. At the same price point, AVR 8-bit MCUs have fewer hardware peripherals, SRAM and flash. Flash size for Atmega328 is only 32KB. To move up, one got to use Atmega1280 and the price difference is huge. For PIC, there are much more variety of MCUs to use at the correct price point.

To the experienced engineers here, are these considerations valid? Please tell me if I am wrong because I am still very much in love with Arduino.

Well between the 328P and the ATmega1280, there are the ATmega644/644P and the ATmega1284P chips. While the arduino IDE does not support these chips directly several IDE hardware download file/folders are available to support these and other avr chips with the standard IDE. Several members here run 644P/1284P boards and member CrossRoads sells some nice bare PCB for these chips. Not sure of the price point for these chips and if they are comparable to the PIC.

Usually raw chip cost is only a big issue when building very high volume runs of product boards. But a true engineer will use whatever chip the customer specifies I guess.

Lefty

retrolefty:

lightaiyee:
With Arduino, it was love at first sight. I love the Arduino IDE. However, my customers do not like products based on AVR because they are expensive compared to PIC. At the same price point, AVR 8-bit MCUs have fewer hardware peripherals, SRAM and flash. Flash size for Atmega328 is only 32KB. To move up, one got to use Atmega1280 and the price difference is huge. For PIC, there are much more variety of MCUs to use at the correct price point.

To the experienced engineers here, are these considerations valid? Please tell me if I am wrong because I am still very much in love with Arduino.

Well between the 328P and the ATmega1280, there are the ATmega644/644P and the ATmega1284P chips. While the arduino IDE does not support these chips directly several IDE hardware download file/folders are available to support these and other avr chips with the standard IDE. Several members here run 644P/1284P boards and member CrossRoads sells some nice bare PCB for these chips. Not sure of the price point for these chips and if they are comparable to the PIC.

Usually raw chip cost is only a big issue when building very high volume runs of product boards. But a true engineer will use whatever chip the customer specifies I guess.

Lefty

You are right. A true engineer should not stick to easy way out like Arduino. The fault lies with myself. But if I cannot use Arduino, I might as well switch to PIC because customers will always ask for value-for-money deal.

their toolset is not the worlds greatest and they like to nickel and dime you for hardware, but if your doing a TON of product it usually works out to be cheaper to use pic's

However, my customers do not like products based on AVR

Whatever paying customers want (whatever it may be) takes precedence over what you want.... as long as they keep writing the check to you.

For your personal projects, pick whatever you love/want to use.

Osgeld:
their toolset is not the worlds greatest and they like to nickel and dime you for hardware, but if your doing a TON of product it usually works out to be cheaper to use pic's

I did a quick check on PIC and AVR 8-bit MCU on stockist website like digikey, element14. PIC is definitely cheaper even at low volume. Customers like cheap stuff. They don't care about toolset. That is the engineer's problem. Without Arduino, I am not sure if development on AVR becomes significantly faster than PIC to justify the higher price of AVR.

lightaiyee:

Osgeld:
their toolset is not the worlds greatest and they like to nickel and dime you for hardware, but if your doing a TON of product it usually works out to be cheaper to use pic's

I did a quick check on PIC and AVR 8-bit MCU on stockist website like digikey, element14. PIC is definitely cheaper even at low volume. Customers like cheap stuff. They don't care about toolset. That is the engineer's problem. Without Arduino, I am not sure if development on AVR becomes significantly faster than PIC to justify the higher price of AVR.

But I assume you are not just selling raw chips to your customer? I assume you are selling something requiring design, layout, fabrication, testing, integration with other chips or modules, software development and testing? The price you quote a customer would include all the costs, material, labor, and your profit margin. Only you would know what cost savings in the total package would be using PIC Vs AVR chip.

Or perhaps you are just selling the design/software to the customer, not anything physical?

Lefty

retrolefty:

lightaiyee:

Osgeld:
their toolset is not the worlds greatest and they like to nickel and dime you for hardware, but if your doing a TON of product it usually works out to be cheaper to use pic's

I did a quick check on PIC and AVR 8-bit MCU on stockist website like digikey, element14. PIC is definitely cheaper even at low volume. Customers like cheap stuff. They don't care about toolset. That is the engineer's problem. Without Arduino, I am not sure if development on AVR becomes significantly faster than PIC to justify the higher price of AVR.

But I assume you are not just selling raw chips to your customer? I assume you are selling something requiring design, layout, fabrication, testing, integration with other chips or modules, software development and testing? The price you quote a customer would include all the costs, material, labor, and your profit margin. Only you would know what cost savings in the total package would be using PIC Vs AVR chip.

Or perhaps you are just selling the design/software to the customer, not anything physical?

Lefty

I am referring to entire product. One limitation with Atmega329 is the small flash size. I fear the day when customer asks for more features and flash size runs out. AVR MCUs with larger flash size costs significantly more. Not so with PIC.

I am referring to entire product. One limitation with Atmega329 is the small flash size. I fear the day when customer asks for more features and flash size runs out. AVR MCUs with larger flash size costs significantly more. Not so with PIC.

So just charge them the 'significantly' more chip cost when you quote them the price for their 'more features' request. Again you aren't selling them chips, your selling them the total value you add.

I guess we need a more details on your specific business model and specific products you sell to offer solutions to your dilemma.

Most instructions are single cycle execution (2 clock cycles, or 4 clock cycles in 8-bit models), with one delay cycle on branches and skips

At a given clock speed, an 8 bit AVR processor will be roughly 2.5 times faster than a comparable PIC.

One accumulator (W0), the use of which (as source operand) is implied (i.e. is not encoded in the opcode)

One accumulator = lots of instructions swapping values in and out of the accumulator. For a given expression, the PIC will generally need more machine instructions.

A small amount of addressable data space (32, 128, or 256 bytes, depending on the family), extended through banking

Even more instructions swapping banks.

I like PICs fine, but your reasoning is flawed...

One limitation with Atmega328 is the small flash size.

One limitation of the PICs is the small RAM size. There's an architectural limit at 4k of address space, and some of that is used by the IO registers. A $10 ATmega1284 has 128k of Flash and 16k of RAM for less than $10, and "many" AVRs support external RAM up to 64k total. There's no PIC equivalent. The 644 and other chips are intermediate. (and it pains me to think of 32k as "small" for a microcontroller.)

Extra peripherals aren't important if they aren't used. Which ones did you find particularly interesting?

A major reason that Microchip has so many product offerings is that they tend to never discontinue a chip, so you can buy anything back to the original 16C54 and 17C series. But they are not relevant to new designs.

Customers that second-guess a designer based on a $3 chip vs a $10 chip, who aren't building 10000+ units are bad customers. Or maybe you're not charging enough for NRE costs. The $700 difference over 100 units disappears in about a week's work... YOU are the most expensive part of a custom design, and any customer that doesn't realize that is foolish. (and that's why things like the BASIC Stamp succeeded, even though it's pretty much inferior to Arduino in every sense (except for having been around for ~15 years longer.))

I do like the PIC24s and PIC32s in 28pin SDIPs, for which Atmel has no equivalent.

You do know about the "ChipKit" Arduino-like clones based on PIC32, right?

You should just charge your customer more if he wants a PIC because it takes you longer or it is more difficult to get working. That will concentrate his mind some what.