Arduino April 23, 2025

Arduino C++ class for sending and receiving data using UART

In embedded systems, UART (Universal Asynchronous Receiver-Transmitter) is commonly used for serial communication. In this tutorial, you’ll learn how to create a C++ class for Arduino that enables easy sending and receiving of data through UART. We’ll walk you through the steps of designing a class that encapsulates UART functionality, allowing you to send messages, receive data, and handle communication errors effectively. With practical code examples and explanations, you’ll be able to integrate UART communication into your Arduino projects with ease.

Read More
Arduino April 23, 2025

Arduino C++ class for controlling a keypad

Keypads are widely used in embedded systems for user input, and controlling them efficiently can enhance your Arduino projects. In this article of the "Learning C++ with Arduino" series, we’ll guide you through creating a C++ class for Arduino to interface with and control a keypad. You’ll learn how to manage rows and columns of the keypad matrix, read key presses, and implement a simple, reusable class to handle keypad input in your projects. By the end of this tutorial, you’ll be equipped with the knowledge to seamlessly integrate keypad functionality into your Arduino applications using object-oriented programming principles.

Read More
Arduino April 23, 2025

Setting up Eclipse to develop freeRTOS projects with Arduino

Eclipse is a powerful, open-source Integrated Development Environment (IDE) that can be used for Arduino development, especially when integrating FreeRTOS for multitasking. In this tutorial, we’ll guide you through the process of setting up Eclipse to develop Arduino programs using FreeRTOS. You’ll learn how to install necessary plugins, configure the Arduino toolchain, and set up the FreeRTOS kernel for multitasking. By the end of this guide, you’ll have a robust development environment that enables you to write, compile, and debug FreeRTOS-based Arduino applications in Eclipse.

Read More
Arduino April 23, 2025

FreeRTOS software timer with Arduino

FreeRTOS software timers are a valuable tool for creating time-based events and managing delays without blocking your tasks. In this guide, you’ll learn how to use FreeRTOS software timers with Arduino to execute functions after a specified time or at regular intervals. We’ll walk you through the software timer APIs and demonstrate how to implement them in a practical project, allowing you to handle timed events like periodic sensor readings or LED blinking without interrupting other tasks. By the end of this tutorial, you’ll understand how to integrate software timers into your FreeRTOS-based Arduino applications for more efficient time management.

Read More
Arduino April 23, 2025

FreeRTOS binary semaphore with Arduino

In embedded systems, managing interrupts and deferring processing to tasks is critical for smooth operation. FreeRTOS binary semaphores offer a simple yet powerful way to synchronize tasks and defer processing from interrupts. In this tutorial, you’ll learn how to use FreeRTOS binary semaphores with Arduino to handle interrupt-driven events and safely pass control to tasks for further processing. We’ll guide you through the Binary Semaphore APIs and show you how to implement them in a practical project, ensuring that interrupt-driven actions are handled efficiently and safely within the FreeRTOS environment.

Read More
Arduino April 23, 2025

Visual Studio Code for Arduino development

Visual Studio Code (VSCode) is a versatile and powerful code editor that’s become a favorite among developers. In this guide, you’ll learn how to set up VSCode as your primary development environment for Arduino projects. We’ll walk you through the steps to install necessary extensions, configure the editor for Arduino development, and explain how to leverage VSCode’s features such as IntelliSense, debugging tools, and integrated terminal for a smoother development experience. By the end of this tutorial, you’ll be equipped to boost your productivity and write better, more efficient Arduino code using the full power of Visual Studio Code.

Read More
Arduino April 23, 2025

FreeRTOS Event Group with Arduino

Event Groups in FreeRTOS are a powerful tool for synchronizing tasks and managing multiple event flags efficiently. In this guide, you’ll learn how to use FreeRTOS Event Groups with Arduino to handle complex task synchronization scenarios. We’ll cover the Event Group APIs and demonstrate how to set, clear, and wait for multiple event bits in a practical project. By the end of this tutorial, you’ll understand how to use Event Groups to coordinate tasks in your Arduino applications, making your code more responsive and modular.

Read More
Arduino April 23, 2025

FreeRTOS task notification with Arduino

Task notifications in FreeRTOS offer a lightweight and efficient way to communicate between tasks compared to using queues. In this guide, you’ll learn how to use task notifications with Arduino to synchronize tasks or send signals without the overhead of traditional message passing systems like queues. We’ll walk you through a practical project where task notifications are used to signal one task from another, making your code more efficient and responsive. By the end of this tutorial, you’ll have a solid understanding of how task notifications work and when to use them in your Arduino projects.

Read More
Arduino April 23, 2025

FreeRTOS mutex with Arduino

When working with multiple tasks in embedded systems, protecting shared resources from simultaneous access is critical to prevent data corruption. In this tutorial, we’ll explore how to use FreeRTOS mutexes in Arduino to ensure that shared resources are accessed safely. You’ll learn how to implement mutexes using FreeRTOS APIs, protecting shared variables or peripherals that could otherwise be accessed by multiple tasks concurrently. By the end of this article, you’ll understand how to manage critical sections and safeguard your Arduino projects against race conditions and inconsistent states.

Read More
Arduino April 23, 2025

FreeRTOS Queue With Arduino

In embedded systems development, effective inter-task communication is essential for managing multiple tasks concurrently. In this tutorial, we’ll explore how to use freeRTOS queues with Arduino to send and receive data between tasks. You’ll learn how to create and configure a queue, and then implement a project where tasks use the queue to exchange information. This hands-on project will demonstrate how to leverage the power of freeRTOS for task synchronization and data management, allowing your Arduino projects to become more efficient and responsive.

Read More