# Esp32 vs raspberry pi

#### JustSomeHuman

Joined Oct 2, 2016
18
If you are trying to source these sorts of boards, do you yourself a favor and look at adafruit.com. This is a fantastic resource for parts and knowledge. Another good resource is sparkfun.com.

#### DrScanlon

Joined Jan 27, 2017
1
I didn't see it mentioned, but if your setup is battery-powered, I would recommend the ESP32 which can be placed in a sleep mode when required for very low standby current drain--less than .5ma in my app.

The ESP32's run freeRTOS and multitasking is about as easy as it gets. There are also built-in ADCs and Wifi. It is trivial to setup a small web server. In my app, I have a web server with websocket for asychronous transfer of text and binary data to either a cellphone or PC/MAC browser.

I also use RPIs, but for a battery system and less required additional hardware, I favor the ESP32.

Frank

#### k1ng 1337

Joined Sep 11, 2020
701
I didn't see it mentioned, but if your setup is battery-powered, I would recommend the ESP32 which can be placed in a sleep mode when required for very low standby current drain--less than .5ma in my app.

The ESP32's run freeRTOS and multitasking is about as easy as it gets. There are also built-in ADCs and Wifi. It is trivial to setup a small web server. In my app, I have a web server with websocket for asychronous transfer of text and binary data to either a cellphone or PC/MAC browser.

I also use RPIs, but for a battery system and less required additional hardware, I favor the ESP32.

Frank
I was blown away by the current draw of Pi when I read the figures. It goes without saying it's obviously doing a LOT of things at once. I remember the first time I disabled auto run services on my PC.. holy cow.

#### mmcginty

Joined Feb 4, 2010
57
I'm thinking about long term learning, initial costs are moot. For amateur to intermediate robotics the crossroad is at esp vs pi so it's a matter of learning one or the other or both, each having an extensive learning curve.

This forum is probably not the best to ask this kind of question as many probably haven't used both. Thanks though to all for their time and patience.
I've worked fairly extensively with both. I built a chart plotter/navigation manager around RPi4, and several sensor loggers to WebAPI around ESP32.

RPi has multiple distros of Linux and embedded Win 10 as available O/S possibilities, if you've done any desktop programming for any of those systems then you already have coding experience that directly applies. C runtime, MFC, .NET and the whole set of libs for Linux, it is a very rich development environment. You can even get quite a bit done without any low-level coding, a lot can be accomplished in Bash shell or batch language, and many, many apps have already been written. If you want a complex graphical display, RPi is the one to choose.

ESP32 has a more limited selection, but it is still a fairly rich set -- but you'll definitely have to do some coding to use it. It's supported by Arduino IDE, so if you've been using that there should be little to learn. Or you can code in C using IDF, which offers a comprehensive set of APIs. Also there's NodeMCU, which offers a high-level language (Lua) and a set of capabilities that I found easy to pick up, and quite productive. (There are a few of the chip's capabilities it doesn't expose, but you can always write your own extensions in C/IDF if needed.) There're also implementations of Python, Perl, JavaScript and more. For headless sensor monitors, with WiFi and HTTP capabilities (including over-the-air firmware updates) that you might want to make more than one of, ESP32 is cheap and capable.

You can get ESP32 dual core with 4MB memory for under $5, or dev board for under$12 if you order from China.