First time ESP32 development with Linux

Revision as of 08:30, 18 January 2019 by Hamster (talk | contribs)
Jump to: navigation, search

First time ESP32 deveopment with Linux

Come along and play with an ESP32 micro-controller using C and/or Micropython.

I have about dozen boards people can play with. Come and blink an LED.

What to bring with you

  • a computer running Linux
  • clones the repositories for the type of development you want to do (see below)
  • a microUSB cable.

Where / When =

Monday 21st, 11:00 - 12:20, Location to be announced, but is likely to be Café 1894.

What is an ESP32

The ESP32 is an inexpensive micro-controller, but don't let its sub-US$10 price fool you. It is an advanced 32 bit, dual core CPU, with WiFi and Bluetooth, with over half a MB of RAM. It can also run using very little power, making it suitable for battery powered applications.

It might be the perfect device for low-cost edge sensor for your IoT network.

The ESP32 can be easily programmed from your Linux system - most boards need only a microUSB cable.

Programming in C

The standard ESP32 runtime environment is the Open Source ESP-IDF toolchain and SDK.

The GitHub repo can be cloned from

NOTE - this requires python-pip to be installed, as well as a few dependencies. See the README!

It has many examples in the "examples" directory.

Programming in MicroPython

Micropython is a subset of the Python Language, which can be used directly on the ESP32. A utility called "ampy" allows you to update the python scripts on the module.

Ampy can be cloned from

If your module does not have micropython installed, or you wish to update the firmware you will need "esptool" (clone from and the micropython firmware from

What if I want a board, now or later?

When I buy one board, I usually buy four, so I have plenty spare. If you would like a board to keep, wave a $15 or a $10 note and a cup of coffee.

Boards are available from many suppliers on AliExpress -

A petty overpriced, under-speced board is available retail from Jaycar -