Arduino Is Not For Real Engineers? Really?

I’ve been working as an embedded engineer for the last two years, successfully delivered real products to real customers; receiving real salaries and bonuses for my works; no doubt I am a real engineer, yet I'm using Arduino platform for my projects.

Yes, Arduino platform is targeted mainly for hobbyists and anyone who interested in learning electronics. Arduino platform offers seamless experience when doing a prototype, Arduino is also encapsulating embedded systems complexity, Arduino is about getting things done. It is damn too easy to get started with it even a fourth grader can do amazing projects on this board.

Some people argue that Arduino is only for a total beginner, it is lacking higher flexibility, it is slow, and it's not teaching the real embedded systems design; it encourages bad embedded practices. Thus it should be avoided by every single embedded engineer out there.

All above argument is (probably) true, except for the last sentence. This article will wrap up some of my thoughts about doing projects using Arduino platform.

Arduino Is Only A Tool

You might have your first contact with embedded world through Arduino. That's okay, the only thing is not okay is that you are now an embedded engineer and not willing to learn anything beyond this board. Just like any devices, Arduino is only one from a vast range of solution. If simple board like Arduino doesn't fast enough to perform demanding task (like doing image processing), then you really should switch to STM32 series, for example. Don't master STM32 yet? Then the best time to learn is NOW. No excuse.

My Alma-mater Encourages To Use It

Funny fact, my alma-mater (Institut Teknologi Bandung) encourages its students to use Arduino for prototyping. I've taken countless EE courses, and they all consistently put Arduino in the first place. In my Embedded Systems Design course (EL4121) I was learning RTOS and students were allowed to tinker FreeRTOS with Arduino. Here's the proof: 

I have also had my Instrumentation Systems course (EL3013), and guess what? For its final project, I've implemented respiration rate measurement device using Arduino Nano combined with a cheap microphone.

Arduino Isn't Something To Avoid

I have to admit, for my next projects I prefer not to use Arduino platform because I've witnessed its severe limitations when it comes to flexibility, performance, and modularity. Even further, Arduino Libraries aren't designed to work for each other peacefully when they are used together, you literally have to disable some codes there, and some here. And for me, that's a nasty way to employ libraries. Yuck!

But hey, if I'm asked to do a prototype real quick like "Hey Aji, could you build a simple demo device for our client meeting next week? It just needs to switch the blah blah blah. Nothing complex."

I'm very likely to answer "Hell yeah, I'll bring it to you within 2-3 days for your comments.". And I build that request with Arduino.

See? I didn't avoid Arduino, I used it whenever it fits. And yeah later the client loved it and asked us to deploy more devices with some minor changes.

Conclusion

Real engineers don't use Arduino? Think again.

What do you think? Do you agree? Or instead, do you disagree? Leave your comments below.

(images taken from Google Images)

要查看或添加评论,请登录

社区洞察

其他会员也浏览了