Remember the S in IoT stands for security. Especially on a device with built in Wifi and Bluetooth.
Not better or worse. All depends what you need.
It depends on application. I'm a hobbyist, so I never use the same microcontroller for every project. When I only need to read and send data (e.g. via 433mhz network), attiny85 is irreplaceable, consumes little and does everything necessary. If you need to run the display and do other things at the same time, and the RPi is too big, then the esp32 is the best option, but as someone below said, analog reading is bad, consumption is huge, etc. it has its downsides... (many people, including me, never use its low power core, because it is complicated to program)
Arduino was always meant to be the most inexpensive way to get in to programming robotics. I remember when you could get one included with a magazine. or like $5 usd.
ESP32 is suitable for IoT project which requires Wifi or Bluetooth connection. Meanwhile, Arduino is suitable for projects that do not require an Internet connection, such as smart trash, automatically opening doors, burglar alarm devices, etc... And devices that consume very little power.😊
I use ESP32, however, some pins have issues; some pins start turned on or pulsating for a few milliseconds, which is critical when the pin is being used to drive motors or power equipment.
This isn’t balanced information, it’s just an advertisement.
I'll stick with my atmega*8 for most projects. Current consumption easily tuned down to micro amps when needed.
People will grab a 100mhz+ esp to read a single digital pin and send that info to their web app.
I use both but: - arduino has reacher and better libraries/examples/tutorials -Uploading program to esp takes ages compared to arduino -arduino uno has higher pins amperage - less need for additional transsistors - arduino has more pins for use - it's bigger and i can at least see it :-)
If you do not need IOT the vanilla MCU''s are very durable. I have a Atmel 328p running a motor (with driver) on a PUMP in a factory 24/7 on and off for months now even if a FET goes short to VCC 12v it does not kill it, a resistor is on the MCU pin to limit current though. Replace the MOSFET and away we go. We do use the ESP 32 for some sanitizing device that needs IOT control, but yeah sometimes the Bluetooth and WIFI just dies not regularly ,but after a few years it can.
ESP32 is a nice microboard when you need integrated WiFi/BT. I rarely use those, so my board of choice is RP2040 (cheap, compact, battery-friendly and quite powerful). And when the project is math-heavy, Teensy 4.0 is still the king. This thing is so fast, it can run circles around other Arduino-compatible boards of similar size, including all versions of ESP32.
Aside from the low prices and ready availability of development boards, the best argument here is that it makes working with web/network services much, much easier. Most beginners won't really understand what the factors limiting them are, only whether something is easy or hard /for them/ in practice.
You are forced to use proprietary software for the low level stuff on ESP32s which is a non-starter at least for me. I’ve spent too long trying to figure out how to use their API and why things don’t work the way I expect, so I just prefer STM32s with an off-chip wifi or bluetooth module.
The raspberry pi pico is dominant in my opinion. It out performs the Arduino and is $5
I do really like ESP32’s and 8266’s for things like holiday light display projects using WLED but the most glaring issue is the closed components of these boards, imho.
Also keep in mind esp32 very power hungry fo battery based projects.
ESP32 is running a binary blob for the network stack that could have a potential CCP backdoor.
I don't think people realize just how fast 16 megahertz is. There's a very good chance that 12 megahertz is even fast enough for whatever microprocessor home utility or robot you're wanting to make.
@cmxpotato