-
How to Create a Web Server (with WebSockets) Using an ESP32 in Arduino
A few months ago, I created a video showing how to use WebSockets with an ESP32. WebSockets have proven to be very fast (relatively speaking) at controlling hardware over WiFi. They still rely on TCP, but they have little overhead, so the latency is much less than other methods (e.g. using separate web pages). However,…
-
How to Use printf on STM32
By default, most microcontrollers have no concept of a console, so you have to help them out a bit. When it comes to debugging, outputting information to some kind of console can be extremely useful. One option is to use semihosting with STM32CubeIDE. However, semihosting can be extremely slow. Another good option is to output…
-
How to Use Semihosting with STM32
Semihosting is a debugging tool that is built in to most ARM-based microcontrollers. It allows you to use input and output functions on a host computer that get forwarded to your microcontroller over a hardware debugging tool (e.g. ST-LINK). Specifically, it allows you to use printf() debugging to output strings to your IDE’s console while…
-
Getting Started with STM32 Nucleo USB (Virtual Com Port)
As I continue my journey with STM32 development, I wanted to share my findings with how to get a Virtual COM Port (VCP) working with a Nucleo board. Specifically, I’m using the Nucleo-F042K6, as it has a built-in USB device peripheral (full speed), and it does not require an external crystal. I highly recommend looking…
-
KiCad Tutorial – Beginner Worksheet
Download worksheet here: KiCad Tutorial Worksheet Please note that the worksheet is licensed under CC BY 4.0. If you would like to teach yourself KiCad, please download the above worksheet and get started! You are also welcome to download it to teach a workshop at your school, makerspace, Maker Faire, etc. About the KiCon Beginner…





