Standardising on a single microcontroller or family  - Page 1
Forum section: electronics / general

author: Josebeeblebrox
author_rank: Newbie
timestamp: September 26, 2020, 11:38:35 pm
content: Hi All! I am an old school Electrical Engineer in Aviation & Telecommunications who defected to IT 20+ years ago ($$$$...) and now has limited time to dedicate to my microcontroller hobby.I want to maximise my learning efficiency and decided (after a couple of years of catching up with Arduinos and the like) toREALLY learn one powerful family of MCUs and associated toolsthat I can then use to have fun, change the world, help humanity and all those great things!The collective in this topic represents a huge repository of knowledge and experience; I am am really looking forward to your comments and guidance.ESP32? SMT32? 8085?(just kidding, that's how I started back in the early 80's)Jose

author: dmendesf
author_rank: Frequent Contributor
timestamp: September 27, 2020, 01:39:30 am
content: If you want IOT stuff go for ESP32 (embedded wifi +bt, lots of communication libraries ready). If you want to do signal processing stuff go to STM32 (3 to 5 simultaneous sampling MSPS ADCs). That's my 2c advice.

author: jnz
author_rank: Frequent Contributor
timestamp: September 27, 2020, 01:49:50 am
content: Quote from: dmendesf on September 27, 2020, 01:39:30 amFor practical reasons this is fair. If I was a hobbyist, it would ESP32 and STM forever.But... commonality is way oversold. Even in STM32 world, the F1 to H7 aren't really all that similar. And the hal still sucks so far as I know.

author: Josebeeblebrox
author_rank: Newbie
timestamp: September 27, 2020, 05:41:30 am
content: Obrigado dmendesf! I guess I'll have to learn at least 2 families and as jnz says there is not much commonality even within the same family...

author: GromBeestje
author_rank: Frequent Contributor
timestamp: September 27, 2020, 07:23:29 am
content: In the generic case, I'd say STM32. It's a broad family, but the variants tend to be pin compatible. (most of them, but not the G series)However, this is not a definite answer. There is no one size fits all. If you're looking for doing something like Bluetooth Low Energy, then I would recommend the nRF52 series. If you're looking for WiFi, I suggest the ESP32.So, yeah, I'd say, standardise on STM32, but don't de afraid to derive from that if your use case has specific requirements.

author: westfw
author_rank: Super Contributor
timestamp: September 27, 2020, 09:41:50 am
content: Even a single manufacturer's product line (like "AVR") can have quite a lot of "non-standardization" issues.The new "mega0" style AVRs are programmed substantially differently that slightly older AVRs. Ditto for ARMs, even from a single manufacturer. SAMD vs SAM4 from Microchip are substantially different in spite of having nominally similar CPUs.:-(

author: ebclr
author_rank: Super Contributor
timestamp: September 27, 2020, 09:53:08 am
content: One woth every second of your time is PSoC

author: jnz
author_rank: Frequent Contributor
timestamp: September 27, 2020, 05:13:34 pm
content: Quote from: ebclr on September 27, 2020, 09:53:08 amI'd like to think so, but I have yet to ever need to fabric/FPGA peripheral, as much as I'd like to use it, just never had a need! Although, to your point, if you had to lock down to at least one company, Cypress (now Infineon) with the PSoC isn't bad. When you do need a small amount of fabric you would have it.

author: radar_macgyver
author_rank: Frequent Contributor
timestamp: September 27, 2020, 05:20:49 pm
content: The fabric comes in handy when you need an oddball collection of peripherals (eg: six SPI ports). Even when you don't need the fabric, the ability to route special functions to almost any pin makes PCB layouts with PSoC a breeze. The downside is cost, and the requirement to use their IDE to configure the programmable logic and analog.

author: rstofer
author_rank: Super Contributor
timestamp: September 27, 2020, 05:28:33 pm
content: Quote from: ebclr on September 27, 2020, 09:53:08 amI haven't built anything with it but I'm a huge fan of the dual core PSoC 6. There are a lot of videos...Many times I want something with a 'stamp' form factor so I can plug it into a daughter card. The mbed LPC1768 was a favorite but I think I'm getting really interested in the Teensy 4.1. It's nearly 8 times as fast as the ESP32. It can run at 600 MHz! That's 300 times as fast as an Arduino Mega and 24 times as fast as an Arduino Due. Just sayin'...The iMXRT1062 chip used in the Teensy 4.1 has a concise 3,437 page User Manual - there will be a test later!Look at the datasheet. Is there enough information to program the device without the HAL? Can you figure out how the DMA and Interrupt Controller work? Can you figure out how to write an interrupt driver? Can you figure out how to turn the UART clock and power on? I always get the UART working first. My experience with NXP datasheets and user manuals has always been positive.If you plan to use the factory provided HAL, many of these things are simplified but you will probably never know how and why they work.

author: Harjit
author_rank: Regular Contributor
timestamp: September 27, 2020, 10:30:07 pm
content: I think a lot depends on what you want to do and the level of abstraction.I've seen a lot of work done with Raspberry PIs, Arduinos, etc.These eco systems are great because they have a decent entry bar and there is a ton of stuff people have done with them.The Teensy 4.1 is quite interesting for a few reasons:1) Incredibly high performance level2) Arduino port3) Active community and support4) Pretty decent internal architecture, if you want to ever go down the bare metal path.I say pretty decent because they have some advanced peripherals that they have done a really good job of connecting together and then, out of left field, there are a few important ones that they don't interconnect. I'm guessing they had to get the part out and let it go.Also, because of the Arduino port, you'll have a lot of code to look at and repurpose.5) Dirt cheapNOTE: I haven't used the Teensy 4.1 - just looked very closely at the chip (actually, I looked at the iMXRT1064 but it is close enough).My experience has been with the STM32F1, and F4 family with a deep dive into the H7 and G4. I'll be doing a project soon with the STM32G474 instead of the iMXRT1064 because I can get the STM32G474 in an 8mm x 8mm package @ 0.8mm ball pitch VS 12mm x 12mm or 14mm x 14mm @ 0.8mm ball pitch for the iMXRT1064. How I wish I could use the iMXRT1064 - it is quite well thought out.

author: Flump
author_rank: Frequent Contributor
timestamp: October 20, 2020, 06:17:32 am
content: I have recently been considering this for myself as I started playing (totally new to microcontrollers) around with them about 2 months backand so far I have tried-Arduinos- Nano, Nano 33 IOT, Uno, Mega.Stm32 F103C8T6, F401CCU6.Seeeduino Xiao.ESP32.They are all different and shine in different areas but I have settled on the ESP32 for general use,mostly because it has classic bluetooth so no need for an extra module.one word of caution though to anyone getting into microcontrollers-watch out for the clones/fakes as often they use different chipsets and pin layouts.Which is why I have just put an order in for 5 genuine Espressif Systems ESP32'sESP32-DevKitC-32Ehttps://www.mouser.co.uk/ProductDetail/356-ESP32-DEVKITC32E