<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Zephyr Archives - The Golioth Developer Blog</title>
	<atom:link href="https://blog.golioth.io/category/zephyr/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.golioth.io/category/zephyr/</link>
	<description>Golioth, Zephyr, and IoT Development News and How Tos</description>
	<lastBuildDate>Fri, 29 May 2026 19:25:47 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://blog.golioth.io/wp-content/uploads/2023/09/cropped-Golioth_Symbol_Coral_RGB-1-32x32.png</url>
	<title>Zephyr Archives - The Golioth Developer Blog</title>
	<link>https://blog.golioth.io/category/zephyr/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Local Shell talks SMP to your devices over Web Serial</title>
		<link>https://blog.golioth.io/local-shell-talks-smp-to-your-devices-over-web-serial/</link>
		
		<dc:creator><![CDATA[Chris Gammell]]></dc:creator>
		<pubDate>Thu, 28 May 2026 19:01:20 +0000</pubDate>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[Zephyr]]></category>
		<category><![CDATA[MCUboot]]></category>
		<category><![CDATA[mcumgr]]></category>
		<category><![CDATA[smpmgr]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10610</guid>

					<description><![CDATA[<p>Local Shell is a new web-based tool that talks to Zephyr devices using Simple Management Protocol (SMP) over Web Serial APIs. This is an easy way to communicate with devices through the browser and mirrors capabilities from tools like mcumgr and smpmgr.</p>
<p>The post <a href="https://blog.golioth.io/local-shell-talks-smp-to-your-devices-over-web-serial/">Local Shell talks SMP to your devices over Web Serial</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
		<item>
		<title>Handling Button Press, Longpress, and Double-Tap with the Zephyr Input Subsystem</title>
		<link>https://blog.golioth.io/handling-button-press-longpress-and-double-tap-with-the-zephyr-input-subsystem/</link>
		
		<dc:creator><![CDATA[Mike Szczys]]></dc:creator>
		<pubDate>Tue, 27 Jan 2026 15:01:48 +0000</pubDate>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[buttons]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[input]]></category>
		<category><![CDATA[subsystem]]></category>
		<category><![CDATA[zephyr]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10481</guid>

					<description><![CDATA[<p>Embedded engineers know the joys and pains with button inputs: debouncing them, triggering actions, and more advanced input patterns like long holding the button down or quickly clicking more than once. If your project is based on Zephyr, you should take a look at the input subsystem to see if it can do some of [&#8230;]</p>
<p>The post <a href="https://blog.golioth.io/handling-button-press-longpress-and-double-tap-with-the-zephyr-input-subsystem/">Handling Button Press, Longpress, and Double-Tap with the Zephyr Input Subsystem</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
		<item>
		<title>Find Breaking Changes in Zephyr Using Git Bisect</title>
		<link>https://blog.golioth.io/find-breaking-changes-in-zephyr-using-git-bisect/</link>
		
		<dc:creator><![CDATA[Mike Szczys]]></dc:creator>
		<pubDate>Tue, 06 Jan 2026 15:33:02 +0000</pubDate>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[git bisect]]></category>
		<category><![CDATA[West Manifest]]></category>
		<category><![CDATA[west update]]></category>
		<category><![CDATA[zephyr]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10407</guid>

					<description><![CDATA[<p>Finding breaking changes in upstream code is a difficult process. Git bisect and good commit discipline (like the Zephyr team maintains) helps to quickly pinpoint issues so you can pull in changes as needed.</p>
<p>The post <a href="https://blog.golioth.io/find-breaking-changes-in-zephyr-using-git-bisect/">Find Breaking Changes in Zephyr Using Git Bisect</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
		<item>
		<title>Using Custom Work Queues for Sensor Readings in Zephyr</title>
		<link>https://blog.golioth.io/using-custom-work-queues-for-sensor-readings-in-zephyr/</link>
		
		<dc:creator><![CDATA[Mike Szczys]]></dc:creator>
		<pubDate>Tue, 09 Dec 2025 19:07:41 +0000</pubDate>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Custom Work Queue]]></category>
		<category><![CDATA[Work Queue]]></category>
		<category><![CDATA[zephyr]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10355</guid>

					<description><![CDATA[<p>Custom Work Queues enable things like thread-aware debugging, larger amounts of customization, and the Zephyr work queue features that we know and love. This article details how to set up your next custom work queue to improve your Golioth-enabled application.</p>
<p>The post <a href="https://blog.golioth.io/using-custom-work-queues-for-sensor-readings-in-zephyr/">Using Custom Work Queues for Sensor Readings in Zephyr</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
		<item>
		<title>Send-when-idle using Zephyr and Golioth Pouch</title>
		<link>https://blog.golioth.io/send-when-idle-using-zephyr-and-golioth-pouch/</link>
		
		<dc:creator><![CDATA[Chris Gammell]]></dc:creator>
		<pubDate>Thu, 04 Dec 2025 15:42:32 +0000</pubDate>
				<category><![CDATA[Bluetooth]]></category>
		<category><![CDATA[Zephyr]]></category>
		<category><![CDATA[Interrupt]]></category>
		<category><![CDATA[ISR]]></category>
		<category><![CDATA[RTOS]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10339</guid>

					<description><![CDATA[<p>Bundling data to send when a device is no longer generating new events is an efficient way to operate a low power Bluetooth device. This post explores how to use Zephyr RTOS components to easily wait until a device is idle to start transmitting using Golioth Pouch.</p>
<p>The post <a href="https://blog.golioth.io/send-when-idle-using-zephyr-and-golioth-pouch/">Send-when-idle using Zephyr and Golioth Pouch</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
		<item>
		<title>Using Snippets in Zephyr: a Shorthand for Changing Build Configuration</title>
		<link>https://blog.golioth.io/using-snippets-in-zephyr-a-shorthand-for-changing-build-configuration/</link>
		
		<dc:creator><![CDATA[Mike Szczys]]></dc:creator>
		<pubDate>Tue, 02 Dec 2025 15:13:05 +0000</pubDate>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[devicetree]]></category>
		<category><![CDATA[Kconfig]]></category>
		<category><![CDATA[snippets]]></category>
		<category><![CDATA[sysbuild]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10333</guid>

					<description><![CDATA[<p>Zephyr snippets helps developers extend the capabilities of their device firmware with simple command line controls. This post shows how to add logging to an application, but only target it at debug images and only in the application portion of a firmware image.</p>
<p>The post <a href="https://blog.golioth.io/using-snippets-in-zephyr-a-shorthand-for-changing-build-configuration/">Using Snippets in Zephyr: a Shorthand for Changing Build Configuration</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
		<item>
		<title>Building Zephyr for the Raspberry Pi Pico2 W</title>
		<link>https://blog.golioth.io/building-zephyr-for-the-raspberry-pi-pico2-w/</link>
		
		<dc:creator><![CDATA[Mike Szczys]]></dc:creator>
		<pubDate>Tue, 11 Nov 2025 15:04:08 +0000</pubDate>
				<category><![CDATA[Engineering]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Infineon]]></category>
		<category><![CDATA[pico2]]></category>
		<category><![CDATA[pico2w]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[WiFi]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10292</guid>

					<description><![CDATA[<p>The Raspberry Pi Pico2 W is the one with a microcontroller and Wi-Fi. When most people think of Raspberry Pi as a single-board computer running Linux, this model is a microcontroller with a slew of impressive peripherals. While the original Pico (based on the RP2040) has had Zephyr support for a long time, the Pico2 [&#8230;]</p>
<p>The post <a href="https://blog.golioth.io/building-zephyr-for-the-raspberry-pi-pico2-w/">Building Zephyr for the Raspberry Pi Pico2 W</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
		<item>
		<title>Zephyr: How to Monitor Heap and Locate Memory Leaks</title>
		<link>https://blog.golioth.io/zephyr-how-to-monitor-heap-and-locate-memory-leaks/</link>
		
		<dc:creator><![CDATA[Mike Szczys]]></dc:creator>
		<pubDate>Thu, 16 Oct 2025 14:17:38 +0000</pubDate>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Zephyr]]></category>
		<category><![CDATA[heap]]></category>
		<category><![CDATA[heap listener]]></category>
		<category><![CDATA[heap stats]]></category>
		<category><![CDATA[memory leak]]></category>
		<category><![CDATA[runtime stats]]></category>
		<category><![CDATA[zephyr]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10197</guid>

					<description><![CDATA[<p>Dynamic memory allocation in C is a powerful tool but also a potential source of hard to replicate bugs. This post goes over tools that are built into Zephyr that monitor consumption over time.</p>
<p>The post <a href="https://blog.golioth.io/zephyr-how-to-monitor-heap-and-locate-memory-leaks/">Zephyr: How to Monitor Heap and Locate Memory Leaks</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
		<item>
		<title>Zephyr for Hardware Engineers: GDB Debugging</title>
		<link>https://blog.golioth.io/zephyr-for-hardware-engineers-gdb-debugging/</link>
		
		<dc:creator><![CDATA[Chris Gammell]]></dc:creator>
		<pubDate>Thu, 11 Sep 2025 19:00:51 +0000</pubDate>
				<category><![CDATA[Zephyr]]></category>
		<category><![CDATA[Debugging]]></category>
		<category><![CDATA[GDB]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10074</guid>

					<description><![CDATA[<p>Debugging a Zephyr program with GDB can be tough for newcomers, especially if they're used to more vertically integrated IDE solutions. Let's get hardware engineers (and others!) started digging into a command-line based solution.</p>
<p>The post <a href="https://blog.golioth.io/zephyr-for-hardware-engineers-gdb-debugging/">Zephyr for Hardware Engineers: GDB Debugging</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
		<item>
		<title>How to Flash a Pre-Loaded Filesystem During Production</title>
		<link>https://blog.golioth.io/how-to-flash-a-pre-loaded-filesystem-during-production/</link>
		
		<dc:creator><![CDATA[Mike Szczys]]></dc:creator>
		<pubDate>Tue, 09 Sep 2025 14:07:52 +0000</pubDate>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Zephyr]]></category>
		<category><![CDATA[filesystem]]></category>
		<category><![CDATA[frdm_rw612]]></category>
		<category><![CDATA[jlink]]></category>
		<category><![CDATA[littlefs]]></category>
		<category><![CDATA[littlefs-python]]></category>
		<guid isPermaLink="false">https://blog.golioth.io/?p=10062</guid>

					<description><![CDATA[<p>Creating a filesystem separates your everyday firmware from other data like machine learning models, images, and binaries. In this post we discuss how you can set up the filesystem to speed up your production and create a flexible system that can be updated on-demand using Golioth's OTA service. </p>
<p>The post <a href="https://blog.golioth.io/how-to-flash-a-pre-loaded-filesystem-during-production/">How to Flash a Pre-Loaded Filesystem During Production</a> appeared first on <a href="https://blog.golioth.io">The Golioth Developer Blog</a>.</p>
]]></description>
		
		
		
			</item>
	</channel>
</rss>
