Welcome to PLAY Embedded, the go-to place for embedded systems enthusiasts! Since 2015, we have been dedicated to helping you learn, create, and innovate in this exciting field. Our wide range of articles, tutorials, and resources will support your journey into embedded systems. Our goal is to build a lively community of like-minded individuals who learn together, share experiences, and contribute to the field's growth. We aim to nurture future embedded systems engineers and professionals with our accessible and engaging content.
We know learning complex subjects can be tough. That is why our articles break down embedded systems concepts into easy-to-understand pieces. We cover topics from basic concepts and programming languages to hardware platforms and hands-on projects. At PLAY Embedded, we focus on Free and Open Source projects like ChibiOS. Our ad-free blog is a labor of love, created in our spare time without any financial interest. We value your feedback and suggestions, so don't hesitate to get in touch with us or join our community on LinkedIn.
Below you will find our latest articles. If you are new here, we recommend checking out our How to Start guide to begin your embedded systems journey. Don't forget to have fun!
The founders
ChibiOS is a powerful solution specifically designed for developing production firmware for various microcontrollers. It stands out in the open source community due to its ready-to-use formula and its composition of interconnectable, yet independent products. As subsystems are often used in ...
Pulse Width Modulation is a powerful technique used in various applications in the world of electronics. It allows for the generation of square waves with a variable duty cycle, which can be used to control the amount of power delivered to a device.
In this article, we will delve into the ...
In the world of digital communication, Serial Peripheral Interface (also known as SPI) stands out as a versatile and widely adopted protocol enabling communication among connected devices. The SPI offers a straightforward and efficient means of communication between microcontrollers, sensors, ...
In embedded systems, the clock is an essential element responsible for synchronizing all the different parts of the system and ensuring that they work together correctly. Modern microcontrollers are complex systems having different domains running often at different speeds. However, the clock ...
In this article, we will explain what race conditions are and provide examples to help you understand their impact on multi-threading applications.
We will also introduce a powerful tool to prevent race conditions: the mutex. We will explain what a mutex is, how it works, and provide ...
Digital outputs are an essential part of embedded systems development, and one of the best ways to experiment with them is by using LEDs. In this article, we will take a hands-on approach to digital output using LEDs hooked together with resistors as a peripheral. Along the way, we will explain ...
When it comes to lighting, LEDs have become increasingly popular in recent years due to their numerous advantages over traditional light sources such as incandescent bulbs and fluorescent tubes. One of the most significant advantages of LEDs is their energy efficiency. Unlike incandescent ...
Breadboards are an essential tool for anyone interested in electronics. They allow you to quickly connect through-hole components together and experiment with electronics. In this article, we will explore the different types of breadboards, including solderless breadboards and ...
Digital inputs are one of the primary ways embedded systems interface with the external world, allowing device-to-device communication and MCUs to respond to user inputs or environmental changes. In our previous article, we covered the fundamentals of the PAL driver of ChibiOS/HAL, which ...
Bitmasking is a common technique that leverages bitwise operators to selectively modify specific bits or bitfields within a larger data structure, such as a register or memory location. Using bitwise operations such as AND, OR, XOR, NOT, and bit shifting it is possible to extract, modify, or
...Embedded system applications are becoming increasingly complex, and as a result, developers are constantly looking for new ways to make their firmware nimbler, simpler and more efficient. One of the most critical aspects of programming embedded systems is the use of interrupts to handle ...
The General Purpose Input/Output (GPIO) is a crucial peripheral in microcontrollers, enabling communication with the external world by sending and receiving signals through its input/output lines. GPIOs are highly configurable and versatile, with a single microcontroller often capable of ...