Author Topic: (SOLVED/ANSWERED)Why NOT use an Arduino for professional project?  (Read 25500 times)

0 Members and 1 Guest are viewing this topic.

Offline ejeffrey

  • Super Contributor
  • ***
  • Posts: 3717
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #100 on: May 21, 2018, 04:15:47 am »
Folks, I am looking for reasons why not to use an Arduino when it WILL do the job. Please use words as to why it is a bad idea, not personal opinions. I have already stated the 'protecting the software' part, what other reasons?

Well if it will do the job, then it will do the job.  For a lot of commercial products it won't fit the size, peripheral selection, or cost targets, or they will prefer a more powerful micro-controller, or the don't need that much power and would save money with a cheaper one.  Or they will need sufficiently control of the peripheral and IO setup that they basically have to throw out the arduino environment.

Quote
Ok, cost seems to be thrown in, how much does an Arduino cost compare to a custom board?

A custom board is pretty cheap if you are making more than a few.  Especially if you can leave off the some of the connectors (do you need USB?).  But that isn't the real point: an arduino by itself isn't useful for much of anything.  You can plug a USB cable into it an show up like a serial port, and that is about it.  To do anything you need to connect it to something.  That will usually be another PCB, probably a shield using the stacking pin headers.  So you will likely be using a custom PCB anyway, and adding a microcontroller to a custom PCB costs next to nothing.  Plus you eliminate the pin headers, and possibly other parts.  Also, you eliminate potentially costly assembly steps of attaching arduino, then attaching the shield.

There are still reasons to have a stand alone microcontroller talking to other components, but then you probably want to use cables so that the components can be remote, rather than just stacked on top arduino style.  With an arduino, you might then end up needing a shield that just goes from pin headers to whatever connector you need or just screw terminals.

I'm also not a big fan of using pin headers to mechanical support a shield in a production product.  I would like to have a latching/locking connection or mechanically mount with screws and then run a cable that isn't providing mechanical support.

There are definitely commercial products produce in small volume that use arduinos because it works.  If that is your situation, go for it.  But for higher volume products, it is almost always going to be overall cheaper and more reliable to use a custom board that does what you want.
 

Offline CatalinaWOW

  • Super Contributor
  • ***
  • Posts: 5231
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #101 on: May 21, 2018, 04:58:40 am »
I'm not sure how an Arduino would make repairing the thing any easier. If the micrcontroller is shot and you don't have the source then you're pretty much SOL anyway.

It is a known processor with standard I/O locations.  Replacements for the hardware will be around for many years on the NOS and used/salvage marketplace.  And the code libraries used are known making reverse engineering of the SE easier, which may well be available since it isn't protected.  Of course if the micro is dead that isn't available, but in a generic box the Arduino very possibly will not be the dead bit, and knowing what it is doing provides real clues about what the fried bits should be doing.  Even if the Arduino is dead there is a real chance of recovering the code.
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 7764
  • Country: de
  • A qualified hobbyist ;)
Re: Why NOT use an Arduino for professional project?
« Reply #102 on: May 21, 2018, 10:24:11 am »
The ATmega has some lock bits to prevent firmware extraction. And they are set even for open source firmware by some vendors. We've seen this several times for clones of the Transistortester. :palm:
 

Online brucehoult

  • Super Contributor
  • ***
  • Posts: 4034
  • Country: nz
Re: Why NOT use an Arduino for professional project?
« Reply #103 on: May 21, 2018, 12:33:51 pm »
Does this answer OP's question?  :phew:




Clearly not a professional project.

But the problem does not lie with the Arduino.
 

Online Fungus

  • Super Contributor
  • ***
  • Posts: 16647
  • Country: 00
Re: Why NOT use an Arduino for professional project?
« Reply #104 on: May 21, 2018, 01:28:35 pm »
The ATmega has some lock bits to prevent firmware extraction. And they are set even for open source firmware by some vendors. We've seen this several times for clones of the Transistortester. :palm:

Yep.

If you really want to you can lock an Arduino using the little six pin header on the board.
 

Offline JaspaJami

  • Contributor
  • Posts: 48
  • Country: fi
    • Susijarvi
Re: Why NOT use an Arduino for professional project?
« Reply #105 on: May 21, 2018, 05:57:20 pm »
I can agree atleast in that if you use Arduino Uno board, thats not professional :)

Online Fungus

  • Super Contributor
  • ***
  • Posts: 16647
  • Country: 00
Re: Why NOT use an Arduino for professional project?
« Reply #106 on: May 21, 2018, 06:55:55 pm »
I can agree atleast in that if you use Arduino Uno board, thats not professional :)

Maybe ... but only if everything else is on a nicely soldered shield.  ::)

 

Offline David Chamberlain

  • Regular Contributor
  • *
  • Posts: 249
Re: Why NOT use an Arduino for professional project?
« Reply #107 on: May 21, 2018, 09:48:50 pm »
I finding this thread to be somewhat confusing.

The Arduino platform is a microcontroller + a boot loader and that's it. Please correct me if I'm wrong as I've never used one. The discussions in the Pro-Arduino camp in this thread seem to conceded that an Arduino Uno in a 'professional' project is a little amateur hour BUT an Arduino Nano is more professional because it allows you to directly solder it to another board or because it's small or because it is missing all the peripheral connectors that may be unused?

Well lets look at the Nano then... Current list price US$22. And yes lets ignore the cheaper clones because we're making a 'professional' product here and not one sourced from questionable gray market supply lines.

What do the components cost?

- Microcontroller (ATMEGA168-20AU) = $3.42
- USB Serial UART (FT232RL - 895"FT232RL) = $4.50
- +5VDC regulator (UA78M05CDCYRG3) = $0.62
- 16 MHz christal   (ABL-16.000MHZ-B2) = $0.34
-  Mini-B socket (67503-1020) = $0.65
- About 10 passives.  Lets say your getting ripped off for the passives like everyone else at the moment and pay $0.13 each.
So your total component cost here is $10.83

If you can get a PCB made for $5 !! then you have just saved $6.17 per unit. And those prices above are for single units. { Actual part.no and sources - https://www.arduino.cc/en/uploads/Main/ArduinoNanoManual23.pdf }

Point is, you would be better of designing that stuff in to your own PCB and if your product requires more components then those listed above then you have saved the need for a PCB and separate Arduino board.


My other reason why this all does not make sense is that for any product to be sold in any country requires some type of regulatory approvals be it CE or FCC. The minimum would be radio emissions & immunity and trust me, because I've done it several times now, you don't get much change from $10k once all is said and done. That many zeros just for a bit of paper that no one is ever going to read does sharpen your mind on the dollar and cent savings I listed above.

It also makes me a little mad when people bodge a product together without any approvals and think it's all so easy. They are the ones who look at a real professionally engineered product and say 'WOW what a rip off I can make that for a 10th of the price and sell it'. But that's a rant for another time.

 

Offline Dubbie

  • Supporter
  • ****
  • Posts: 1115
  • Country: nz
Re: Why NOT use an Arduino for professional project?
« Reply #108 on: May 21, 2018, 10:42:50 pm »
I didn't realise that AVR chips were so expensive.
Not sure why you wouldn't use a $2 Arm chip instead. Way more powerful and way more features.

 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3146
  • Country: ca
Re: Why NOT use an Arduino for professional project?
« Reply #109 on: May 21, 2018, 10:58:05 pm »
- Microcontroller (ATMEGA168-20AU) = $3.42
- USB Serial UART (FT232RL - 895"FT232RL) = $4.50
- +5VDC regulator (UA78M05CDCYRG3) = $0.62
- 16 MHz christal   (ABL-16.000MHZ-B2) = $0.34

Can replace all that with PIC16F1454 = 1.20 and save $7.68.
 

Offline Seph.b

  • Regular Contributor
  • *
  • Posts: 78
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #110 on: May 21, 2018, 11:21:25 pm »

- Microcontroller (ATMEGA168-20AU) = $3.42


$1.75 all over the place on AliExpress. If that is pro enough is another matter. I have never have issues with them though.


To go back a bit in the convo, I didn't realize that using modules in the arduino library applied their license. I only ever program atmegas over the ICSP pins and don't use the bootloader. I guess I should start using ports directly vs digitalRead/Write and remove the licensing requirement on at least 50% of my projects. Not sure why I even still use the clunky Arduino IDE even. Guess it is time for me to finally figure out getting rid of it entirely.
 

Offline julianhigginson

  • Frequent Contributor
  • **
  • Posts: 783
  • Country: au
Re: Why NOT use an Arduino for professional project?
« Reply #111 on: May 22, 2018, 05:40:27 am »
can you use a proper debugger with arduino yet? That would be my biggest showstopper for arduino in professional development of any kind.. Even initial proof of concept development. Because once managers see "progress" - even with an unreliable tool, they really don't want to re-do anything ever.

I have seen a few projects where work was begun on arduino with stuff wired to it (which is all good for a cheap proof of concept!) And the project eventually moved to an AVR and relevant parts on a custom board -  but it was still running the AVR bootloader and  the code was arduino code developed in arduino IDE... and when they had subtle problems, it was not an easy thing to debug using printf().

Compare to C AVR projects using the exact same chip and the proper C language, which you can debug with AVR Studio and a standard atmel jtag probe.
 

Offline westfw

  • Super Contributor
  • ***
  • Posts: 4199
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #112 on: May 22, 2018, 07:16:28 am »
Quote
Please correct me if I'm wrong as I've never used one.
You're wrong, and you've admitted that you don't have the background to adequately pass judgement...
Quote
- Microcontroller (ATMEGA168-20AU) = $3.42
- USB Serial UART (FT232RL - 895"FT232RL) = $4.50
- +5VDC regulator (UA78M05CDCYRG3) = $0.62
- 16 MHz christal   (ABL-16.000MHZ-B2) = $0.34
-  Mini-B socket (67503-1020) = $0.65
If you'd put those parts, at those prices, on your "professional" board, I think your customers would have been better off with one of those "cheaper clones" that you rejected...  In particular, both the m168 and the FT232rl are long-obsolete and consequently overpriced compared to their more modern replacements.

Maybe we should be careful to define "professional" as well?  I don't believe it's the same as "mass produced"...
 
The following users thanked this post: tpowell1830

Online brucehoult

  • Super Contributor
  • ***
  • Posts: 4034
  • Country: nz
Re: Why NOT use an Arduino for professional project?
« Reply #113 on: May 22, 2018, 07:47:45 am »
can you use a proper debugger with arduino yet? That would be my biggest showstopper for arduino in professional development of any kind..

Do you mean like gdb?

There's nothing very special about Arduinos. Those that have non-AVR CPUs are usually pretty easy to debug. The RISC-V HiFive1 (Uno form-factor) and LowFive (Pro Mini form factor) both support debugging with OpenOCD with JTAG-over-USB and/or a Olimex ARM-USB-TINY-H or similar directly on the JTAG header. I'd expect most ARM-based Arduinos are the same.

AVRs in general have the problem that many of them (including the 168 and 328) don't have JTAG. It doesn't matter whether they are in an Arduino or on your own board. They do however have "debugWIRE" using the reset pin. You need an AVR Dragon or similar to understand that and connect to your PC. You need to minimise the capacitance on that line because the communications is reasonably high speed, which on an Uno means removing the cap connecting the reset pin to the reset button.
 

Offline David Chamberlain

  • Regular Contributor
  • *
  • Posts: 249
Re: Why NOT use an Arduino for professional project?
« Reply #114 on: May 22, 2018, 08:09:21 am »
Quote
Please correct me if I'm wrong as I've never used one.
You're wrong, and you've admitted that you don't have the background to adequately pass judgement...

That's fine I don't mind being wrong however your statement might have been more constructive if you pointed out how you thought I was wrong. I will guess. The Arduino platform has a huge eco system of users, ready to go libraries and IDE so clearly that's the BIG value add beyond just the raw component costs and if it gets any one at all interested in electronics in general then it's a good thing in my books. My statement "The Arduino platform is a microcontroller + a boot loader and that's it" may have been a little flippant but I was following on from other lines of thought regarding integrating them in to products from a hardware perspective.

Quote
- Microcontroller (ATMEGA168-20AU) = $3.42
- USB Serial UART (FT232RL - 895"FT232RL) = $4.50
- +5VDC regulator (UA78M05CDCYRG3) = $0.62
- 16 MHz christal   (ABL-16.000MHZ-B2) = $0.34
-  Mini-B socket (67503-1020) = $0.65
If you'd put those parts, at those prices, on your "professional" board, I think your customers would have been better off with one of those "cheaper clones" that you rejected...  In particular, both the m168 and the FT232rl are long-obsolete and consequently overpriced compared to their more modern replacements.

Yes my point was that even with over priced components you could still build your own board for cheaper even for a one off design / prototype.

I rejected "cheaper clones" because often the source and as such reliability can not be determined and this for me is important, whether or not it's a single unit or 100000 units. The conversation here is about low volumes surely because again as I was attempting to demonstrate once you look at purchasing 100K Arduinos you'll realize how much profit you're missing out on.

Maybe we should be careful to define "professional" as well?  I don't believe it's the same as "mass produced"...

I agree and think that this is exactly what this thread is attempting to do. It seems to be a harder question to answer then we all first thought. I'll take a stab at it though - I think a lot of engineering experience is hard to quantify because after a while you just do things because 'that's the way it's done' without giving it much thought.
« Last Edit: May 22, 2018, 09:52:15 am by David Chamberlain »
 

Offline Gibson486

  • Frequent Contributor
  • **
  • Posts: 324
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #115 on: May 22, 2018, 02:04:48 pm »
Quote
Please correct me if I'm wrong as I've never used one.
You're wrong, and you've admitted that you don't have the background to adequately pass judgement...
Quote
- Microcontroller (ATMEGA168-20AU) = $3.42
- USB Serial UART (FT232RL - 895"FT232RL) = $4.50
- +5VDC regulator (UA78M05CDCYRG3) = $0.62
- 16 MHz christal   (ABL-16.000MHZ-B2) = $0.34
-  Mini-B socket (67503-1020) = $0.65
If you'd put those parts, at those prices, on your "professional" board, I think your customers would have been better off with one of those "cheaper clones" that you rejected...  In particular, both the m168 and the FT232rl are long-obsolete and consequently overpriced compared to their more modern replacements.

Maybe we should be careful to define "professional" as well?  I don't believe it's the same as "mass produced"...

LOL...I have been using the FT232rl for the past decade. It is sort of, well, just works, so why replace it? What is a more modern option? I am not arguing, I really want to know.
 

Offline Gibson486

  • Frequent Contributor
  • **
  • Posts: 324
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #116 on: May 22, 2018, 02:21:02 pm »
The licensing on the arduino itself is not a problem. It is the stuff add to it. They mean to use the MIT license, but they use the other more restrictive ones. It is still open source, but you are supposed to make your code open source as well IF you make any changes to the library or code you are using that references that license. I think the arduino PID library has that issue.

There is a lot of arduino snobbery. Me, personally, I like it. In terms of prototyping, it is great. The fall out is that it has created a generation of hacking engineers that just copy designs without any regard as to how it works or if the design was proper at all. Also, it has created a generation of wannabe firmware engineers as well. There is nothing that annoys me more than a library made for some device (like a DAC) that has actual Arduino code in it. Really? Way to make your whole library non portable. So, yeah, I like the arduino, but do not be one of those people that stop there. You should expand yourself and go beyond the platform and actually learn how to use just Atmel itself.
 

Offline wraper

  • Supporter
  • ****
  • Posts: 16860
  • Country: lv
Re: Why NOT use an Arduino for professional project?
« Reply #117 on: May 22, 2018, 02:27:42 pm »
- Microcontroller (ATMEGA168-20AU) = $3.42
- USB Serial UART (FT232RL - 895"FT232RL) = $4.50
- +5VDC regulator (UA78M05CDCYRG3) = $0.62
- 16 MHz christal   (ABL-16.000MHZ-B2) = $0.34
-  Mini-B socket (67503-1020) = $0.65
- About 10 passives.  Lets say your getting ripped off for the passives like everyone else at the moment and pay $0.13 each.
So your total component cost here is $10.83
Prices are unrealistically high. Why particularly NRND ATMEGA168-20AU, why not ATMEGA168PA at half of the price?
Vreg like 5-20 cents depending on model.
Crystal < 10 cents
Micro usb connector < 20 cents (who needs mini USB?)
Passives are almost free.
Quote
- USB Serial UART (FT232RL - 895"FT232RL) = $4.50
Who generally needs it in the circuit anyway unless you want to program the MCU weird way? And if you need USB, just pick another USB capable MCU for <$1, or ATMEGA16U2.
Not to say that you likely won't need this additional vreg and crystal in your circuit. RC oscillator in AVR is crap. Other manufacturers offer like 0.5-1% without any crystal in MCUs which are cheaper.

« Last Edit: May 22, 2018, 02:44:40 pm by wraper »
 

Offline wraper

  • Supporter
  • ****
  • Posts: 16860
  • Country: lv
Re: Why NOT use an Arduino for professional project?
« Reply #118 on: May 22, 2018, 02:35:40 pm »
LOL...I have been using the FT232rl for the past decade. It is sort of, well, just works, so why replace it? What is a more modern option? I am not arguing, I really want to know.
USB UART converter is a workaround in it's nature. If you need USB, just pick MCU which supports it natively.
 

Offline Gibson486

  • Frequent Contributor
  • **
  • Posts: 324
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #119 on: May 22, 2018, 02:43:39 pm »
LOL...I have been using the FT232rl for the past decade. It is sort of, well, just works, so why replace it? What is a more modern option? I am not arguing, I really want to know.
USB UART converter is a workaround in it's nature. If you need USB, just pick MCU which supports it natively.

LOL....good point. Thanks!

Quick question, though. If you use USB, is the driver stuff taken care of?
« Last Edit: May 22, 2018, 02:47:57 pm by Gibson486 »
 

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3146
  • Country: ca
Re: Why NOT use an Arduino for professional project?
« Reply #120 on: May 22, 2018, 02:50:23 pm »
Maybe we should be careful to define "professional" as well?  I don't believe it's the same as "mass produced"...

Sure it is. By definition, professionals are those who make money from their activity, while amateurs do not (e.g. professional golfer vs. amateur golfer). In electronics, to make money, the product must be produced in some quantity. And conversely, if you produce something in quantity, you're doing this to make money. "Mass production" is probably too big of a word. but production in quantities is what distinguish professionals from amateurs.

Professional certainly doesn't mean better than amateur (e.g. your local golf pro vs. Bobby Jones). Professionals are often restricted by a multitude of factors which force them into technically inferior designs because of business or marketing considerations. Amateurs are free.

Libraries and communities don't matter much for professionals. Instead, they have education and experience, which beats the community support in and out.

Looking from that perspective, Arduino is certainly not suitable for production - extra cost, bulky form factor, bad power consumption, no real benefits. So, professionals rarely use it. There's nothing inherently wrong in using Arduino for production - you will just make less money that you would otherwise. If you're rich or have wide margins, this may be Ok for you.

 
The following users thanked this post: David Chamberlain

Offline wraper

  • Supporter
  • ****
  • Posts: 16860
  • Country: lv
Re: Why NOT use an Arduino for professional project?
« Reply #121 on: May 22, 2018, 02:55:05 pm »
LOL...I have been using the FT232rl for the past decade. It is sort of, well, just works, so why replace it? What is a more modern option? I am not arguing, I really want to know.
USB UART converter is a workaround in it's nature. If you need USB, just pick MCU which supports it natively.

LOL....good point. Thanks!

Quick question, though. If you use USB, is the driver stuff taken care of?
Use HID or virtual com port library/example from MCU manufacturer. HID won't need a driver, virtual com port will have a driver already available.
Example: https://www.silabs.com/community/mcu/8-bit/forum.topic.html/vcpxpress_want_tom-MGyE
 

Online Fungus

  • Super Contributor
  • ***
  • Posts: 16647
  • Country: 00
Re: Why NOT use an Arduino for professional project?
« Reply #122 on: May 22, 2018, 02:59:14 pm »
LOL...I have been using the FT232rl for the past decade. It is sort of, well, just works, so why replace it? What is a more modern option? I am not arguing, I really want to know.
USB UART converter is a workaround in it's nature. If you need USB, just pick MCU which supports it natively.

LOL....good point. Thanks!

Quick question, though. If you use USB, is the driver stuff taken care of?

Yes.

If you use an AVR chip with onboard USB you get the USB-2-RS232 for free, eg. Arduino Leonardo.

If you want something cheaper than the FT232 then all the Arduino clones seem to use the CH340. I'm betting it's very cheap.
 

Online brucehoult

  • Super Contributor
  • ***
  • Posts: 4034
  • Country: nz
Re: Why NOT use an Arduino for professional project?
« Reply #123 on: May 22, 2018, 05:32:58 pm »
Maybe we should be careful to define "professional" as well?  I don't believe it's the same as "mass produced"...

Sure it is. By definition, professionals are those who make money from their activity, while amateurs do not (e.g. professional golfer vs. amateur golfer). In electronics, to make money, the product must be produced in some quantity. And conversely, if you produce something in quantity, you're doing this to make money. "Mass production" is probably too big of a word. but production in quantities is what distinguish professionals from amateurs.

I can't agree with that.

Many many professionals make money from selling their time, not from selling quantities of of a product.

Computer programmers often write systems that only have one copy in use, by one client. Consulting engineers of any kind (mechanical, electrical) as well. Not to mention architects.

I would say that many of these people are a lot more professional than some salary slave designing products in a megacorp, even if the resulting products are sold in the millions or billions -- their personal reputation and future work depend on it.
 
The following users thanked this post: tpowell1830

Offline NorthGuy

  • Super Contributor
  • ***
  • Posts: 3146
  • Country: ca
Re: Why NOT use an Arduino for professional project?
« Reply #124 on: May 22, 2018, 06:19:13 pm »
Computer programmers often write systems that only have one copy in use, by one client. Consulting engineers of any kind (mechanical, electrical) as well. Not to mention architects.

You're right.  The diversity is enormous and there are lots of different cases. May be my generalization went too far.

For example, industrial automation often uses PLCs, which are way more expensive and inefficient than Arduino. The economics of this is totally different than designing products for sale. Arduino would be a cost saver, if only Arduino could get regulatory approval.

 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf