<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Embedded Systems on Pranav Kumar</title><link>https://pranav083.github.io/tags/embedded-systems/</link><description>Recent content in Embedded Systems on Pranav Kumar</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>Copyright © 2016–2030, Pranav Kumar</copyright><lastBuildDate>Tue, 06 May 2025 00:00:00 -0400</lastBuildDate><atom:link href="https://pranav083.github.io/tags/embedded-systems/index.xml" rel="self" type="application/rss+xml"/><item><title>Real-Time Scheduling and Resource Sharing Protocols in FreeRTOS</title><link>https://pranav083.github.io/post/project/rtos-scheduling-protocols/</link><pubDate>Tue, 06 May 2025 00:00:00 -0400</pubDate><guid>https://pranav083.github.io/post/project/rtos-scheduling-protocols/</guid><description>
&lt;p&gt;&lt;strong&gt;ECE 5550G — Advanced Real-Time Systems · Virginia Tech · Spring 2025&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A four-project sequence building real-time scheduling infrastructure inside FreeRTOS on STM32 hardware, working up from task primitives to resource-sharing protocols that bound priority inversion.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="why-this-matters"&gt;Why this matters&lt;/h2&gt;
&lt;p&gt;FreeRTOS gives you preemptive fixed-priority scheduling and mutexes. It does &lt;em&gt;not&lt;/em&gt; give you periodic task abstractions, deadline tracking, or the protocols that make shared resources safe under hard real-time constraints. Those you build — and building them is how the theory stops being theory.&lt;/p&gt;</description></item><item><title>STSPIN220 Stepper Driver Library for Arduino</title><link>https://pranav083.github.io/post/stepper_stspin220/</link><pubDate>Sun, 20 Dec 2020 00:00:00 +0530</pubDate><guid>https://pranav083.github.io/post/stepper_stspin220/</guid><description>
&lt;p&gt;&lt;strong&gt;Open source · C++ / Arduino · &lt;a href="https://github.com/pranav083/Stepper_STSPIN220-library"&gt;github.com/pranav083/Stepper_STSPIN220-library&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;An Arduino library for STMicroelectronics' &lt;a href="https://www.st.com/resource/en/datasheet/stspin220.pdf"&gt;STSPIN220&lt;/a&gt; low-power stepper driver. It is my most-used piece of open-source work.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="why-it-exists"&gt;Why it exists&lt;/h2&gt;
&lt;p&gt;The STSPIN220 can microstep down to &lt;strong&gt;1/256 of a full step&lt;/strong&gt; — fine enough for 3D printers, camera slides, and any application where audible stepping or positional granularity matters.&lt;/p&gt;
&lt;p&gt;Existing Arduino stepper libraries treated the driver as a step-and-direction black box, leaving the microstepping mode fixed in hardware. That throws away the part of the chip that makes it interesting.&lt;/p&gt;</description></item></channel></rss>