‹ BackHN Continuity

Thread

The newest ESP32 can run Linux and it's getting close to a Raspberry Pi

237 points · 123 comments · adunk

  1. jameshart · · focus · HN ↗
    The range of difference in capabilities of different boards branded ESP32 is getting larger. Makes it tricky to figure out when someone says ‘you can run this on an ESP32’ what level of hardware investment is required.
    1. philipallstar · · focus · HN ↗
      I am really struggling to understand what ESP32 is. I've got into adjacent things a bit recently, but haven't figured that one out yet.
      1. the__alchemist · · focus · HN ↗
        It's a family of microcontrollers by Espressif. A microcontroller (MCU) is a type of integrated circuit (IC: physical appearance: Black rectangle of epoxy with exposed metal tabs). It has, in the same IC, a CPU, RAM, non-volatile FLASH memory, and a collection of peripherals which vary depending on the MCU. These usually include I/O protocols, ADCs, DACs, DMA controllers, math processors etc.

        Stated another way: An MCU, like the ESP32, is a tiny computer, sans the hardware you physically interface with it.

        The computing power, and memory is much lower than your desktop or laptop PC (or mobile phone), but if you are using it to run a dedicated task, instead of using a big OS like Linux or Windows, it can complete the tasks really fast (often microseconds) and with minimal power use. This is because it's easy to program to do exactly what you need, with nothing competing for the hardware.

        A note on ESP in particular compared to other MCUs: It's one of the only (Or was?) options which has Wi-Fi integrated into the MCU itself. It's a good default if you want that.

        1. trklausss · · focus · HN ↗
          I’d say as well, that a huge difference is a microcontroller has direct access memory (I.e. without translation), and a bigger computers CPU/SoC has an MMU (memory management unit) that does address translation. This is a key hardware difference for isolation of multiple processes, which you don’t typically have in a microcontroller (you _could_ have an MPU to give you some partitioning, but that’s further down the road).
          1. SideQuark · · focus · HN ↗
            Lots of microcontrollers have MMUs, such as some Esp32, some microchip flavors, some stms, nxp, ti siara, renesas and Infineon flavors.

            So I wouldn’t claim this is a hard and fast rule. Lots of mcu lines have added mmus on some variants.

          2. yencabulator · · focus · HN ↗
            The article literally has a section heading

            > Espressif put a real MMU in the ESP32-S31

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.