Espressif ESP32

Espressif ESP32-S2

When Espressif release ESP32 WiFi & Bluetooth capable MCUs back in 2016, many things changed in the DIY and tinkerers community. We finally had a cheap MCU that could do real IoT stuff and was easy to use. However, the cheap ESP32 is not really cheap in relative terms. Sure, it is cheap, but there are cheaper solutions. ESP8266 for example.

Yes, the old ESP8266 that lacks any built-in security and which power consumption is not that low even in a deep sleep mode. It was expected that Espressif would, sooner or later, offer an improved replacement for ESP8266. Cheaper than ESP32, but with features that ESP8266 lacked. Read More

Ohm’s Law for beginners

Yes, Ohm's Law for beginners, not for dummies. I do not want to offend anyone and if you are interested in things like Ohm's Law, you are clearly not a dummy.

In this video, we will talk briefly about what Ohm's Law is and how it influences everything connected with electricity. That it describes the relationship between voltage and current. That when you increase the voltage, you increase the current as well. And that voltage and current combined together give you power! And that doubling the volatge, you increase the power 4 times!

Low Pass Filter Experiments

All flight controllers we use in RC hobby (FlightOne, Betaflight, INAV, Pixhawk, dRonin, and all the other) use low pass filters. What does a low pass filter do? It passes low-frequency components of a signal (below cutoff frequency) but attenuates high-frequency signal components (above the cutoff frequency).

Since it’s hard to make a visualization of this process with a software LPF filter, let’s make an analog equivalent using a resistor and capacitor and connect all of that to signal generator and oscilloscope.

Impedance Matching 101

Why do we match the impendance? And what the heck the impedance really is? 50Ohm, 75Ohm, low impedance, high impedance, reflections and all that crap that normal people usually ignore. Nobody said that we are “normal” over here so let’s take a look at this whole input/output impedance matching business.

ESP32 and GPS with a help of TinyGPS++ library

One of the first projects I did with ESP32 development boards is a simple GPS tracker. OK, it's not really a tracker since it does not store the position anywhere, more like distance meter with a UBLOX Neo-8M Beitian BN-880 GPS unit and small SSD1306 OLED display.

This ESP32 GPS Thingy as I call it uses one button to store current position and then report straight line distance, speed and altitude compared to "Home Point". GPS communication is handled by TinyGPS++ library.

Oh, one the best things about ESP32 is that you can map ports to almost any pin you want. It's not like on ATmega328 where UART and I2C are always the same pins. Here you can choose them. How nice is that?

Code is available on GitHub.

Espressif ESP32

Getting started with ESP32 development boards and Arduino

However fond of good old Arduinos based on ATmega328 and ATmega32u4 we might be, no one can now say they are state of the art. Sure, they might be the first choice to do something cheap and simple, but compared to most more modern designs, they are just too old and too weak. Slow, little flash memory, little RAM, no built-in connectivity: no Bluetooth or WiFi.

When a few years ago ESP8266 started to appear, everything changed. The tinkers finally got something small and cheap with WiFi. And then, the world has changed, since ESP32 it the market.

Geekcreit ESP32 development board

Read More

Arduino hygrometer with DHT11 and SSD1306 OLED display

One of the things I like about Arduino ecosystem is that you can prototype pretty decent device in very short time. It might not be pretty, but will work. Just like my DIY hygrometer built with DHT11 and SS1306 OLED display I’ve built few weeks ago:

Simple, efficient and runs on 4 AA batteries. The best part is that it can be powered all the time. Arduino does humidity measurement, display the result and then powers itself down to conserve power. Cool, right?

Arduino DHT11 hygrometer with OLED SSD1306 display

Code is available in GitHub repository.