Live data from Hacker News

How to pick a microcontroller

sureshjoshi.com

41–50 of 100 posts

Re: How to pick a microcontroller

#41
post #39

Earlier quoted context omitted.

Paul Stoffregen's Teensy boards are the way to go. The hardware and the software are excellent. Heaps of power thanks to the ARM Cortex M4 and you still get the Arduino IDE. Can't recommend them enough, wish I had of moved to them far sooner. Everybody I've given one to has loved them, and the USB support is also very welcome. (As far as price goes, they're development boards and worth every cent for beginners.)

One of the things I like about this choice is one does not need an IDE, at least not with the 2.0. One can do non-graphical (systems) programming on an underpowered computer with no graphics. I statically compile the loader. On BSD at least, no 3rd party libs are needed. Then all I need is avr-gcc. I can do everything from the command line. No closed source tools. No requisite graphics layer (e.g., Windows OS). No la…

The AVR-based Arduinos (Really, I think most AVR-based boards, unless it has some really strange proprietary way of flashing).

The MSP430-based TI Launchpads.

The various ESP-something WLAN boards have open toolchains and programming over serial as well as far as I know.

Re: How to pick a microcontroller

#42
post #12

Earlier quoted context omitted.

I'll append with: Do you need wifi: Wemos D1 mini Do you need bluetooth low energy: light blue bean

Light blue bean is $30. ESP is production ready. But doesn't have bluetooth (esp32 is not ready for prime time yet). What are other considerations? Wemos D1 mini or NodeMCU :).

I really wish the bean was cheaper too. $30 seems absurd for that thing (even though I love it).

Re: How to pick a microcontroller

#43

Earlier quoted context omitted.

Do you want to understand in detail what's happening? => Arduino UNO I wonder what your definition of "understand in detail what's happening" is if you recommend an Arduino for that. It doesn't have to get as far as https://www.youtube.com/watch?v=UJHeDvr_doM (something that I recommend every should try at least once if they claim to know how things really work) but I think reading the datasheet and using the bare MC…

You can actually do a soft transition from the (opaque) Arduino programming style to a programming style closer to hardware. After all, Arduino programs are just C++ and you can plug in your own functions and assembler and you can even compile and upload your own ASM/C/C++ program written from scratch and compiled with the gnu-avr-toolchain to the UNO. After you have done all of that it might be a good idea to start…

Isn't it better to start with the mbed though(if you intend for a commercial product, at least at kickstarter/~20K-units level) ?

The quality of the libraries is higher(written by professionals), you have a wider selection of supported mcu's if you'd need to port, some mcu's support the mbed, easy to-use low-power api(an event driven framework that automatically puts the mcu to sleep when it isn't needed), ARM has put a lot of work in the security of the device and that's something that's very hard to replicate.

And like the arduino, if something isn't optimal - you can always write your own.

The only major drawback is the mbed is a bit more complex. For example, you need to use pointers, unlike the Arduino, where it's not a necessity.

Re: How to pick a microcontroller

#44

1: PLAY "Shenzhen I/O"[0] 2: JMP :1 [0] http://www.zachtronics.com/shenzhen-io/

Is this a recruiting tool?

Not anymore than FarmVille is a recruiting tool for farms I think. Just a game that happens to look like work (which is true for many games).

Re: How to pick a microcontroller

#45
post #38

Its slightly ironic that this article "for beginners" is filled with obscure acronyms he doesn't define (UART, BOM, BLE...).

A more productive way to make this point is to simply ask what the terms mean. UART is a programmable serial interface; it usually refers to the kind of serial you speak to peripherals in the outside world, as opposed to something like SPI, which is serial spoken to components on the same board. BOM is "bill of materials". It's the catalog and price of all the components needed to ship an actual product. If your chip…

Its all readily googlable, certainly. My point was that its poor practice when writing a piece aimed at introducing people to a subject; if they have to go to google every few lines to see what something means, that distracts attention from what the article is actually trying to convey. For that matter, they could just as easily google for a different article.

Re: How to pick a microcontroller

#46
post #38

Its slightly ironic that this article "for beginners" is filled with obscure acronyms he doesn't define (UART, BOM, BLE...).

A more productive way to make this point is to simply ask what the terms mean. UART is a programmable serial interface; it usually refers to the kind of serial you speak to peripherals in the outside world, as opposed to something like SPI, which is serial spoken to components on the same board. BOM is "bill of materials". It's the catalog and price of all the components needed to ship an actual product. If your chip…

> A more productive way to make this point is to simply ask what the terms mean.

It depends. If you know what they mean but want to point TFA's deficiency, OP's post is the way to go :)

Re: How to pick a microcontroller

#47
Related on EE.stackexchange: https://electronics.stackexchange.com/questions/264794/how-d...

I agree with OP's "grief factor" - difficult to estimate but really critical to your project timeline.

I'm also going to advocate my "pick something" suggestion; the first one of anything you buy in an unfamiliar product area will always be wrong. This applies to computers, cars, cameras, houses, everything; when you're entering the market you won't understand your own requirements and anti-requirements. So buy something cheap and standard then use it to understand how it's inadequate for you specifically. You'll also appreciate the expensive options.

If you've never bought a microcontroller, buy an Arduino. It may not be right but you'll have a lot of company.

Re: How to pick a microcontroller

#48
We use NXP/Kinetis chips (Cortex M0+) and have been relatively happy with them from a cost and hassle point of view. When developing we use SWD with a kinetis dev board as the programmer hooked up to the target MCU. We have had strange issues with the MSB bricking things when updating the bootloaders but thankfully they're cheap enough to replace.

Re: How to pick a microcontroller

#49
Starting with a beefy ARM chip! Try Arduino. If you are not familiar with micro controllers you might as well stick to something that is made for beginners. Plus as you get more advanced you can always use the raw AVR chip without the added Arduino bootloader.

Re: How to pick a microcontroller

#50
This was a pretty good overview. I get asked this same question a lot because I have been working with microprocessors for decades and I have used many different ones from the old 8051 to Microchip, Arm and even FPGA embedded. The way I usually start is I ask this "will you need an OS like Linux ?" (there are a bunch of follow on questions on that issue to decide that.

If the answer is yes then that steers you to a much bigger and more expensive chip, usually and increases the complexity significantly. For beginners who need an OS for their project, I steer them to the RPI simply because there is just a ton of resources on the web to help them along. There are other really good boards but I steer them to an off the shelf solution like that and the RPI seems to be really well supported.

If you don't need Linux or RTOS or similar then that narrows it to a lower end simpler solution. For beginners I almost always steer them to the Arduino even though I rarely use it myself but for the same reason, tons of support on the web and you can, over time move to C or C++ on it as you advance your skills.

I am not a big super fan of those platforms I personally have my own dev system using my own boards and system that I have evolved over the years to be able to get designs done very fast. But I just think those are good starting points for a beginner.

Post reply on HN