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

0 Members and 1 Guest are viewing this topic.

Online brucehoult

  • Frequent Contributor
  • **
  • Posts: 720
  • Country: nz
  • Currently at SiFive, previously Samsung R&D
Re: Why NOT use an Arduino for professional project?
« Reply #25 on: May 17, 2018, 02:15:00 pm »
Because it makes zero sense for product with a volume greater than 1 unit.   Just put your MCU directly on the board.   Why pay a a margin on a board that doesnt provide any value in your product.     

So everyone using PC/104 is crazy?
 

Offline ataradov

  • Super Contributor
  • ***
  • Posts: 4712
  • Country: us
    • Personal site
Re: Why NOT use an Arduino for professional project?
« Reply #26 on: May 17, 2018, 02:17:01 pm »
You are comparing the effort needed for designing a computer to Arduino? Anyone with a bit of a clue can layout Arduino board in a day or two.
Alex
 
The following users thanked this post: ivan747

Online brucehoult

  • Frequent Contributor
  • **
  • Posts: 720
  • Country: nz
  • Currently at SiFive, previously Samsung R&D
Re: Why NOT use an Arduino for professional project?
« Reply #27 on: May 17, 2018, 04:46:06 pm »
You are comparing the effort needed for designing a computer to Arduino? Anyone with a bit of a clue can layout Arduino board in a day or two.

Ok, so 15 hours at $100/hour charge out rate. $1500.

You can get a heck of a lot of $3.50 Pro Mini boards from Ali Express for that.

I know the 328 is very easy to deal with. Few external components needed, and still available in a DIP package. That's not the case with very many (if any) ARM chips. I would not hesitate to solder a Teensy 3.5 or 3.6 into any commercial project I did rather than try to design and build that myself. Same goes for Raspberry Pi Zero, or LoFive. Simply not worth doing it yourself.
« Last Edit: May 17, 2018, 10:08:06 pm by brucehoult »
 

Offline ataradov

  • Super Contributor
  • ***
  • Posts: 4712
  • Country: us
    • Personal site
Re: Why NOT use an Arduino for professional project?
« Reply #28 on: May 17, 2018, 04:50:25 pm »
If your project can be done entirely on Arduino, then yes. If it requires external boards, then you are wasting your time aligning connectors to be Arduino compatible at the same hourly rate. And then designing an enclosure to house that board, which you have no control over.

If you have to design at least one board for a product, additional cost of putting m328 there is negligible.
Alex
 

Offline JaspaJami

  • Contributor
  • Posts: 39
  • Country: fi
Re: Why NOT use an Arduino for professional project?
« Reply #29 on: May 17, 2018, 05:01:07 pm »
Not exactly Arduino, but im going to use ESP32 and Arduino IDE + library's in one commercial project with OTA updates. Most likely first prototypes even use Espressif ESP32-DevKitC development modules, final product most likely just ESP-WROOM-32 modules.

Why? Because it should be suitable for our needs and im familiar with that environment. A lot of ready good library's available.
 

Online brucehoult

  • Frequent Contributor
  • **
  • Posts: 720
  • Country: nz
  • Currently at SiFive, previously Samsung R&D
Re: Why NOT use an Arduino for professional project?
« Reply #30 on: May 17, 2018, 10:26:23 pm »
If your project can be done entirely on Arduino, then yes. If it requires external boards, then you are wasting your time aligning connectors to be Arduino compatible at the same hourly rate. And then designing an enclosure to house that board, which you have no control over.

If you have to design at least one board for a product, additional cost of putting m328 there is negligible.

Of course you're not going to use Arduino Uno with its wacky pin spacings!

Boards such as the Pro Mini (AVR), Teensy (AVR or ARM), or LoFive (RISC-V) that I mentioned in the last message or the NodeMCU or ESP32 Espressif boards have standard 0.1" pin spacing and usually come with bare holes in the PCB and header pins you can solder on and use or not as you wish. It's extremely simple to physically interface to them. With the header pins added they can be mounted to a breadboard, or soldered to another trivial to design board very easily.
 

Offline Rerouter

  • Super Contributor
  • ***
  • Posts: 3405
  • Country: au
  • Question Everything... Except This Statement
Re: Why NOT use an Arduino for professional project?
« Reply #31 on: May 17, 2018, 10:57:25 pm »
Ive use various arduino boards to proof and test my work, spun up some boards with the chip baked in and never changed the software from that original proof.

Equally some of the atmel chips supported are bloody brilliant, in size, power and io, so i tend to bake in a varient of an alternative arduino bootloader, modified to suit and bam, feild upgradable units over a mutlidrop rs485 with less than a day of code bashing and testing.

Many times i have seen people talking about moving to ide s with better testing options, but yet to find something pain free and clear on how to set it up.
 

Offline Gibson486

  • Regular Contributor
  • *
  • Posts: 187
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #32 on: May 17, 2018, 11:55:22 pm »
I have worked for two companies that thought they could use Arduinos to actually make a product. It is a bad idea. 

if you are a solo engineer or your company is a 1 man team, then yeah, it could work.

However, the real truth is that you cannot really get past the prototyping stage with it with a whole team. The whole platform is not really scalable and cost wise, it makes no sense.

1. The arduino software stack is sort of hacked together with weak glue.

2. In order to make it scalable, you have to hack the hack. You see where this is going? You will be pissed off when the stuff only works for half your team. Then the other half of your team does not want to move past the Arduino IDE. It is a mess.

3. Oh, so you will do everything in Linux? See number 2. Then get pissed off when you see that the ubuntu repo still uses the old ass arduino version, which does not even work with the new Atmel programmers. Then you have to upgrade AVRDude (yeah, it is called AVRDude)

4. Mega2560 cost more than a cortexM4 with more than double of everything.

Need I go on?

 

Offline donotdespisethesnake

  • Frequent Contributor
  • **
  • Posts: 737
  • Country: gb
  • Embedded stuff
Re: Why NOT use an Arduino for professional project?
« Reply #33 on: May 18, 2018, 04:07:27 am »
"Real engineers don't eat quiche"

To summarise : the main reason for not using an Arduino is professional snobbery.  ;)
Bob
"All you said is just a bunch of opinions."
 
The following users thanked this post: SL4P, asmi

Offline ataradov

  • Super Contributor
  • ***
  • Posts: 4712
  • Country: us
    • Personal site
Re: Why NOT use an Arduino for professional project?
« Reply #34 on: May 18, 2018, 04:11:00 am »
It is not snobbery. It is experience with shipping product in large quantities.

There is some sort of confusion here. If you plan to make 10 or even a 100 of something, then by all means use whatever you have at hand. If you need 10K of something, then things change a lot.

It is like saying that professional electricians don't use $5 Harbor Freight multimeters because of snobbery.
Alex
 

Offline taydin

  • Frequent Contributor
  • **
  • Posts: 276
  • Country: tr
Re: Why NOT use an Arduino for professional project?
« Reply #35 on: May 18, 2018, 04:28:08 am »
I don't like generalizations like "an Arduino board should not be used in a professional product". This is engineering guys! If it satisfies the requirements, then it is good to use, be it professional or amateur, it's that simple. Many of the show stoppers mentioned here can be things that aren't even required for that particular customer.

Let's say somebody comes to your shop and asks for a control system for a simple mechanical system, and he doesn't want to spend thousands of dollars on Siemens etc. PLC's. And the system isn't doing anything mission critical (in other words, if something goes wrong, nobody's going to get hurt and no huge loss of money will ensue). An Arduino based solution would work very well and would also have the right price.
Real programmers use machine code!

My hobby projects http://mekatronik.org/forum
 
The following users thanked this post: tpowell1830

Online Bassman59

  • Frequent Contributor
  • **
  • Posts: 938
  • Country: us
  • Yes, I do this for a living
Re: Why NOT use an Arduino for professional project?
« Reply #36 on: May 18, 2018, 04:45:04 am »
"Real engineers don't eat quiche"

To summarise : the main reason for not using an Arduino is professional snobbery.  ;)

Not snobbery! If you have to spin a board to fit onto the Arduino's connectors, you might as well put the micro on that board and save the expense of buying the Arduino.

If the prototype software written for Arduino works, there's no point to re-writing it.

I think that most professionals reading this forum already have code to implement the things that the Arduino "ecosystem" supports. Whether that code runs on the Atmel parts or some other processor, it's already done. There is no need to switch platforms.

(Veering off the topic: For kids learning how to write programs for microcontrollers, the Arduino is great. When the kid runs into the limits of the platform, then s/he'll look for alternatives, which invariably means having to get under the hood to understand what's going on. But with the Arduino, the canned demos and such work out of the box, which gives the kids confidence that they can actually do something with a microcontroller.)
 

Offline wraper

  • Supporter
  • ****
  • Posts: 8256
  • Country: lv
Re: Why NOT use an Arduino for professional project?
« Reply #37 on: May 18, 2018, 04:52:33 am »
On the hardware side, the cheap clones are unreliable, while the genuine ones are very expensive. Also, for most professional projects you have no use for the  Arduino board that surrounds the microcontroller, it just limits your design and takes up precious space.

I won't even start talking about the software  ;)
Genuine arduino in not much better. A piece of crap with inexcusable design mistakes. Particularly USB interface with non functional shielding and ESD protection  :palm:.
 

Offline wraper

  • Supporter
  • ****
  • Posts: 8256
  • Country: lv
Re: Why NOT use an Arduino for professional project?
« Reply #38 on: May 18, 2018, 05:03:24 am »
"Real engineers don't eat quiche"

To summarise : the main reason for not using an Arduino is professional snobbery.  ;)
:palm: Even without hardware part, real engineers don't need to use dumbed down libraries which are 10-100 times slower than doing the things right way. Not to say there are no libraries for many things real engineer will need.
 

Online westfw

  • Super Contributor
  • ***
  • Posts: 2654
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #39 on: May 18, 2018, 05:09:49 am »
You do realize that Arduino Nano like boards are currently cheaper (from reputable Chinese dealers) than bare  atmega328 chip from digikey (in moderate quantities.)

 

Offline JaspaJami

  • Contributor
  • Posts: 39
  • Country: fi
Re: Why NOT use an Arduino for professional project?
« Reply #40 on: May 18, 2018, 05:10:25 am »
:palm: Even without hardware part, real engineers don't need to use dumbed down libraries which are 10-100 times slower than doing the things right way. Not to say there are no libraries for many things real engineer will need.
I understand that if you are making a huge amount of some specific product thing is different. But i think its stupidity to not use ready library's when its making its thing and hours for work matter. If you code everything from scratch it just takes a lot longer time. Its often maybe ok, but quite often not if you are making one/two pieces. Still it can be professional customer project.
 

Offline wraper

  • Supporter
  • ****
  • Posts: 8256
  • Country: lv
Re: Why NOT use an Arduino for professional project?
« Reply #41 on: May 18, 2018, 05:18:56 am »
:palm: Even without hardware part, real engineers don't need to use dumbed down libraries which are 10-100 times slower than doing the things right way. Not to say there are no libraries for many things real engineer will need.
I understand that if you are making a huge amount of some specific product thing is different. But i think its stupidity to not use ready library's when its making its thing and hours for work matter. If you code everything from scratch it just takes a lot longer time. Its often maybe ok, but quite often not if you are making one/two pieces. Still it can be professional customer project.
How much faster is it to use superslow digitalWrite() instead of working with ports directly? Let me answer, it offers zero time savings. And when you realize Arduino limitations in the middle of the project, you may just start writing code in plain C (then why bother with arduino to begin with) or need to change the platform altogether.
 

Offline wraper

  • Supporter
  • ****
  • Posts: 8256
  • Country: lv
Re: Why NOT use an Arduino for professional project?
« Reply #42 on: May 18, 2018, 05:24:33 am »
You do realize that Arduino Nano like boards are currently cheaper (from reputable Chinese dealers) than bare  atmega328 chip from digikey (in moderate quantities.)
Chinese nano is not cheaper, and Digikey is not the cheapest place to buy components. Not to say there are much cheaper and more capable MCUs.
« Last Edit: May 18, 2018, 05:26:28 am by wraper »
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 6910
  • Country: us
    • SiliconValleyGarage
Re: Why NOT use an Arduino for professional project?
« Reply #43 on: May 18, 2018, 05:25:35 am »
if you strip down an arduino to the portion you really need in your application you end up with the microcontroller , the crystal and 4 caps ...

that should say it all ...
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Offline JaspaJami

  • Contributor
  • Posts: 39
  • Country: fi
Re: Why NOT use an Arduino for professional project?
« Reply #44 on: May 18, 2018, 05:53:24 am »
How much faster is it to use superslow digitalWrite() instead of working with ports directly? Let me answer, it offers zero time savings. And when you realize Arduino limitations in the middle of the project, you may just start writing code in plain C (then why bother with arduino to begin with) or need to change the platform altogether.
But i can make program with ready librarys in one hour that is measuring temperature with 1-wire DS18B20, downloading from internet via WIFI weather forecast, drawing this information to TFT display where is also touch screen button that if you press that it sends that information to phone via BLE.

Its not maybe most powerfull one what comes to code (also im really not expert at coding), but without librarys it would take ages to make that. At least for me.
 

Offline ataradov

  • Super Contributor
  • ***
  • Posts: 4712
  • Country: us
    • Personal site
Re: Why NOT use an Arduino for professional project?
« Reply #45 on: May 18, 2018, 06:00:25 am »
But i can make program with ready librarys in one hour that is measuring temperature with 1-wire DS18B20, downloading from internet via WIFI weather forecast, drawing this information to TFT display where is also touch screen button that if you press that it sends that information to phone via BLE.
That is immediate gratification I was talking about. Now imagine you are actually working on a product, and did some testing, and the thing fails under certain conditions. And all of a sudden your "productivity" goes down the drain, since now you have to dig though heaps of poorly written unfamiliar code.

Or even worse, imagine that stock network library blocks until the data is returned from the server. It is fine when the server is under your bed, but when you deploy the device in Japan and it has to talk to a server in the US, your UI is blocked and device is unresponsive. Now you have a huge problem.

It is OK for hobby, not OK for actual production work.

also im really not expert at coding
And I think that where all the misunderstanding in this thread comes from. People that are experts don't need Arduino, and hopefully those are the same people working on releasing devices into wide production.
« Last Edit: May 18, 2018, 06:03:15 am by ataradov »
Alex
 

Offline Seph.b

  • Regular Contributor
  • *
  • Posts: 78
  • Country: us
Re: Why NOT use an Arduino for professional project?
« Reply #46 on: May 18, 2018, 06:17:31 am »
if you strip down an arduino to the portion you really need in your application you end up with the microcontroller , the crystal and 4 caps ...

that should say it all ...

If 8MHz is enough, all you need is 2 caps.

Programming via ICSP is so easy I can't see using an Arduino for anything more than a proof of concept anymore. My projects are in the 10s of units and the BOM for the board is a very small part of the total project cost. I could probably build 75% of my projects playing legos with Aliexpress modules. I like my stuff to look more professional though; layed out nice with our logos on it. Like others have said, if I am spinning a board anyway why not just drop a 328p on it and be done with it. I also don't have to worry about customers plugging a USB cable into it and changing the programming.
 

Offline JaspaJami

  • Contributor
  • Posts: 39
  • Country: fi
Re: Why NOT use an Arduino for professional project?
« Reply #47 on: May 18, 2018, 06:18:49 am »
That is immediate gratification I was talking about. Now imagine you are actually working on a product, and did some testing, and the thing fails under certain conditions. And all of a sudden your "productivity" goes down the drain, since now you have to dig though heaps of poorly written unfamiliar code.
Understand. But the good one is that those librarys are opensource and there is many vise and dummy heads trying to figure out problems in code.
Or even worse, imagine that stock network library blocks until the data is returned from the server. It is fine when the server is under your bed, but when you deploy the device in Japan and it has to talk to a server in the US, your UI is blocked and device is unresponsive. Now you have a huge problem.
Yes, in these things you have to have a backup solution. Im at the moment designing system that is spread over the world and we have to make OTA updates to those once in a while. Have to get also another factory firmware to inside that if OTA update for some reason crashes it doesn't brick whole system.

It is OK for hobby, not OK for actual production work.
Still partly disagree. If you have to do example unique systems its very possible that you don't get a deal if you spend to much time for the code (or you don't get descent salary from that work).

Even sometimes i think its best to use ready modules. If customer need one small project to electric cabinet mounted to DIN rail it can be best idea to use something like this and ready Mega board: https://www.ebay.com/itm/Electronics-Salon-DIN-Rail-Mount-Screw-Terminal-Block-Adapter-Module-For-R3/142788159920

vs. starting to plan own board, make that board, make code from scratch...
 

Offline JaspaJami

  • Contributor
  • Posts: 39
  • Country: fi
Re: Why NOT use an Arduino for professional project?
« Reply #48 on: May 18, 2018, 06:20:50 am »
I also don't have to worry about customers plugging a USB cable into it and changing the programming.
btw there is also arduinos without usb ports. But i dont see much use for those. In those cases where they would be handy almost everytime its better solution to design own one.
 

Offline @rt

  • Frequent Contributor
  • **
  • Posts: 826
Re: Why NOT use an Arduino for professional project?
« Reply #49 on: May 18, 2018, 08:08:27 am »
My air conditioning controller is based on Arduino. It’s in my house made of Meccano, and my car made of LEGO.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf